Quick Upload

Google Web Toolkit

from d0nut, 2 years ago Add as contact

12142 views | 0 comments | 5 favorites | 2 embeds (Stats)

30 minütige Präsentation des Google Web Toolkit, einem Java Framework zum erstennellen von Javafreien-Web-Applikationen. Den Download des Beispielprogramms finden Sie auf http://www.easy-coding.de/trac/gwt .

Embed customize close
 

More Info

This slideshow is Public

Views: 12142 Comments: 0 Favorites: 5 Downloads: 169

View Details: 12086 on Slideshare
56 from embeds
Most viewed embeds (Top 5): (…more)
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this slideshow as inappropriate.

If needed, use the feedback form to let us know more details.

Loading...
Flash Player 9 (or above) is needed to view slideshows. We have detected that you do not have it on your computer. To install it, go here.
Post to Twitter Post to Twitter
Share on Facebook Share on Facebook
Post to Blogger Post to Blogger
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons

Presentation Transcript

  1. Slide 1: GWT Google Web Toolkit   Referent:  Torben Brodt   Veranstaltung: Fachseminar Webframeworks   Datum: 20.12.2007
  2. Slide 2: Hello World! Das klassische Codebeispiel     
  3. Slide 3: Java, Java, Java! Programmieren in Java  Ausführen in Java  Testen in Java  Debuggen in Java  Verteilen in JavaScript !     
  4. Slide 4: Inhaltsverzeichnis  1. Der GWT Weg  2. Tools Compiler, Hosted Browser, Framework ●  3. Vorteile des Paradigmas  4. Features + Demo + Coding  5. Fragen    
  5. Slide 5: Der GWT Weg System­Sprache statt Auszeichnungssprache  GWT­ statt Swing­Klassen, aber Handling gleich  Der Code bleibt für Browser und Menschen lesbar  Programmiert wird in Systemsprache, wegen...  der riesigen Toolunterstützung  der Java Spracheigenschaften  Übersichtlichkeit trotz komplexer Systeme     
  6. Slide 6: Der GWT Weg Ergebnis = kein Java, kein Applet, keine VM  einzige Voraussetzung: Browser  anderer Weg für selbes Ergebnis  JavaScript und Java sind zwar syntaktisch ähnlich,   aber bei dem Konzept hätte Google jede andere  Sprache wählen können (siehe Projekt: pyjamas) Ähnlich Swing, aber kein SWING  Anwendung muss neu erstellt werden     
  7. Slide 7: Der Compiler Code Compiler  erstellt eine statische HTML Datei als Container  pro Browser/Sprachkombination ein JavaScript  compilieren nur verwendete Frameworkteile werden mitgeliefert     
  8. Slide 8: Der Compiler Bild Compiler – die Problemstellung  herkömmlich führt jedes Bild zu einer HTTP   Abfrage GET dateiname.png 200 OK    
  9. Slide 9: Der Compiler Bild Compiler – die Lösung  mehrere Bilder werden zu einem ImageBundle  gleiche Dateigröße und dabei weniger HTTP   Requests GET dateiname.png    
  10. Slide 10: Der Compiler ImageBundles werden als Interfaces geschrieben  Will man Bilder nicht zentral verwalten, fasst man sie   durch ”ableiten” zusammen Einbinden per HTML oder ImageProto     
  11. Slide 11: Der Compiler ImageBundles werden als Interfaces geschrieben  Will man Bilder nicht zentral verwalten, fasst man sie   durch ”ableiten” zusammen Einbinden per HTML oder ImageProto     
  12. Slide 12: Hosted Mode Refresh synchronisiert mit Java­Code  Emuliert einen Browser  Oberfläche zum Exportieren in ”Web Mode”     
  13. Slide 13: Framework java.lang und java.util sind nachimplementiert  Bedienelemente (Widgets) sind vorhanden  Vorteil durch Abstraktion  Das Web ist ein schnell mutierendes Umfeld  Viele Problemlösungen will man in 3 Monaten ganz   anders machen Da man weit weg vom JavaScript Code ist, reicht   eine aktualisierte GWT.jar    
  14. Slide 14: Vorteile des Paradigmas GWT ändert das Paradigma. Erstmals Typisierung   und Möglichkeiten zum Debuggen + Refactoren    
  15. Slide 15: Vorteile des Paradigmas Beliebige Java IDE, da Einbindung per .jar  GWT ist zwar allein zur Frontendprogrammierung..    bringt aber dennoch einen Tomcat Server zur  Abrundung mit Start per Button  Aktualisieren durch Browser Refresh  Vollständiges Debuggen möglich  Teamaufteilung ist besser möglich     
  16. Slide 16: Features 1.Bessere HTTP­Performance durch Verwendung von  ImageBundles und smarter Dateien 2.Programmiersprache für zeitgerechtes Programmieren 3.Gestaltungs­ und Bedienelemente 4.Realisierbare Usability 5.AJAX durch Remote Procedure Calls 6.Internationalisierung 7.Testing und Benchmarking    
  17. Slide 17: Gestaltungs­ und Bedienelemente Panel für Widgets oder weitere Panels  ähnlich AWT/Swing Konzept in Java  TabPanel Horizontal­ SplitPanel    
  18. Slide 18: Gestaltungs­ und Bedienelemente Widgets für Benutzerinteraktionen  Normale Formular­Elemente  Button, RadioButton, CheckBox, TextBox,   PasswordTextBox, TextArea, ListBox Formularfreie Interaktionselemente  Hyperlink, HTML  Weitere Elemente aus Desktopwelt     
  19. Slide 19: Gestaltungs­ und Bedienelemente Mail­Beispielclient.... erweitert :­)     
  20. Slide 20: Realisierbare Usability Einfache Implementierung von Browserhistory   ... und Bookmarkfunktionalität    
  21. Slide 21: Realisierbare Usability Implementierung durch zentralen Controller, der URL   Parameter durchreicht Implementierung von HistoryListener     
  22. Slide 22: Remote Procedure Calls MailService (Interface)   Beschreibt das tatsächliche Aussehen  Wird vom Backend implementiert     
  23. Slide 23: Remote Procedure Calls MailServiceAsync (Interface)   AJAX Implementierung (typisch void)  Wird vom Frontend implementiert     
  24. Slide 24: Remote Procedure Calls emailService Proxy     
  25. Slide 25: Remote Procedure Calls Backend  implementiert die Methoden von MailService  komplexe Datentypen erlaubt      Frontend Backend
  26. Slide 26: Internationalisierung Statische VS dynamische Internationalisierung  Statische bevorzugt, da neben Sprache auch   Eigenschaften (Zeit­ und Zahlenformate)  einfacher umgestellt werden können Auswahl entweder automatisch, über URL oder   per Methodenaufruf    
  27. Slide 27: Internationalisierung Mail.gwt.xml um Sprachmodul erweitern  Klasse implementieren (und instanziieren)  Property­Dateien anlegen  Mailboxes$Language.properties bzw ..._de.properties     
  28. Slide 28: Internationalisierung Beispiel einer Property Datei  compose = Neu sync = Verschicken/Abrufen! reply = Antworten Sprachvariablen austauschen     
  29. Slide 29: Wiederverwendung alter JavaScript Code kann wiederverwendet werden  durch das Schlüsselwort native  Zugriff zurück auf Java durch spezielle Syntax  Arbeit mit window und document über $wnd und $doc     
  30. Slide 30: Testing & Benchmarking JUNIT Integration in GWT über eigene Klasse  asynchrones Testen von Front­ bis Backend   durch Simulation von Verzögerung Realisierung über versteckten GWT Browser  GUI­Erweiterung für Benchmarking     
  31. Slide 31: Fragen Fragen? 