Google Web Toolkit - GWT
“Productivity for developers, performance for users”
1
PLAN
 Pourquoi GWT ?
 Présentation
 But de GWT
 Quelques projets GWT
 Avantages
 Architecture
 Widgets disponibles
...
Pourquoi GWT ?
• La technologie AJAX était associée au Javascript dans la majorité des
projets
• JS conduit l'échec d'AJAX...
Pourquoi GWT ?
Les différentes solutions :
• Dojo
• ExtJS
• Atlas
• ICEFaces
Ces derniers ne gèrent pas ou (mal) le mode a...
Présentation
• GWT, Google Web Toolkit, est un framework open source de
développement d'applications web mettant en oeuvre...
Présentation
6
But de GWT
7
Faciliter le développement
d'applications web utilisant
Ajax
Faciliter le développement
d'applications web ut...
Quelques projets GWT
GWT a été utilisé par Google dans des projets
connus comme :
• Google Docs
• Gmail
• AdWords
• Go Gri...
Fonctionnalité de GWT
• création d'applications graphiques s'exécutant dans un navigateur
• pas besoin d'écrire du code Ja...
Avantages de GWT
• pas de code JavaScript à écrire
• utilisation de Java comme langage de développement
• une meilleure pr...
Architecture
11
Widgets disponibles
• Panneaux
• Boutons
• Cases à cocher
• Tables / Grilles
• Boîtes de dialogues
• Menus et barres de me...
Design pattern
Les Design Pattern permettent d'améliorer la maintenance et
l'évolutivité d’un projet.
pour une application...
Design pattern
MVP, Action :
MVP et Action sont très appréciés dans le milieu professionnel car ils ont
de nombreux avanta...
Design pattern
Il existe de nombreux Framework proposant les patterns MVP et Action :
gwt-presenter : MVP
gwt-dispatch : A...
Conclusion
Inconvénients
Des problèmes de sécurité d'AJAX sont encore présents :
• XSS
• Authentification
• Injection SQL,...
Conclusion
Inconvénients
Ouverture sur la technologie DART
Le langage de Google, censé remplacer JavaScript
Ce nouveau lan...
CONCLUSION
18
Prochain SlideShare
Chargement dans…5
×

Google Web Toolkit - GWT

451 vues

Publié le

Présentation du framework GWT.
Architecture, principe et utilité

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
451
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
13
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • De nombreux framework javascript sont apparus :
  • Le code de l'application est entièrement écrit en Java
    Ce code Java n'est pas compilé en bytecode mais en JavaScript  ce qui permet son exécution dans un navigateur.
    Le coeur de GWT est donc composé du compilateur de code Java en JavaScript.
  • L'architecture du framework GWT est décomposée 2 deux parties :
    Librairies
    Outils
    La partie Outils contient le compilateur qui génère l'application web. C a d, traduit le code JAVA en Javascript.
    Le Web browser est un navigateur qui permet d'executer du Byte Code JAVA. Le navigateur est « virtuel »
    La seconde partie de l'architecture contient les librairies
    librairie des classes standard JAVA :
    java.lang
    java.util
    Enfin, la quatrième brique de l'architecture concerne la partie graphique. Elle fournit un ensemble de classes et d'interfaces pour créer des composants tel que des boutons ainsi que les widgets les plus utilisés dans le développement d'application web.
  • GWT propose un ensemble assez complet de composants graphiques :
    Il est aussi possible de créer ses propres composants ou d'intégrer d’autres frameworks JavaScript
  • « Comme vous savez Le développement d'une application implique une certaine méthodologie »
    Google recommande fortemment l'utilisation de deux patterns importants pour une application web GWT : MVP et Action
  • gwt-presenter  qui implément le MVP et gwt-dispatch qui implémente : Action
    Le framework le plus interessant semble être gwt-platform. Il est composé des deux frameworks précédents (dispatch, presenter) c a d, on peut utiliser les deux patterns dans les applications web et propose un plugin pour s'intégrer facilement avec l'IDE Eclipse.
  • « Les inconvénients majeurs de GWT : »
  • C’est le nouveau langage de programmation de Google, qui censé remplacer JavaScript
  • Google Web Toolkit - GWT

    1. 1. Google Web Toolkit - GWT “Productivity for developers, performance for users” 1
    2. 2. PLAN  Pourquoi GWT ?  Présentation  But de GWT  Quelques projets GWT  Avantages  Architecture  Widgets disponibles  Design pattern  Inconvénients  Conclusion 2
    3. 3. Pourquoi GWT ? • La technologie AJAX était associée au Javascript dans la majorité des projets • JS conduit l'échec d'AJAX par sa complexité et le manque d'experts Javascript. • les navigateurs fournissait des fuites mémoires, de nombreux bogues Javascript. • HTML a des problèmes de performance. • JS conduit l'échec d'AJAX par sa complexité et le manque d'experts Javascript. • les navigateurs fournissait des fuites mémoires, de nombreux bogues Javascript. • HTML a des problèmes de performance. 3
    4. 4. Pourquoi GWT ? Les différentes solutions : • Dojo • ExtJS • Atlas • ICEFaces Ces derniers ne gèrent pas ou (mal) le mode asynchrone d'AJAX. Apparition de « Google Web Toolkit » 4
    5. 5. Présentation • GWT, Google Web Toolkit, est un framework open source de développement d'applications web mettant en oeuvre AJAX • Crée par Google 5
    6. 6. Présentation 6
    7. 7. But de GWT 7 Faciliter le développement d'applications web utilisant Ajax Faciliter le développement d'applications web utilisant Ajax Faisant abstraction des incompatibilités des principaux navigateurs. Faisant abstraction des incompatibilités des principaux navigateurs.
    8. 8. Quelques projets GWT GWT a été utilisé par Google dans des projets connus comme : • Google Docs • Gmail • AdWords • Go Grid • Whirled 8
    9. 9. Fonctionnalité de GWT • création d'applications graphiques s'exécutant dans un navigateur • pas besoin d'écrire du code Javascript • utilisation de CSS pour personnaliser l'apparence • mise en oeuvre d'Ajax • un ensemble riche de composants (widgets et panels) • un système de gestion de l'historique sur le navigateur • un parser XML • détection des erreurs à la compilation • ... 9
    10. 10. Avantages de GWT • pas de code JavaScript à écrire • utilisation de Java comme langage de développement • une meilleure productivité liée à l'utilisation du seul langage Java • le code généré par GWT supporte les principaux navigateurs • la prise en main est facile même pour des débutants ! 10
    11. 11. Architecture 11
    12. 12. Widgets disponibles • Panneaux • Boutons • Cases à cocher • Tables / Grilles • Boîtes de dialogues • Menus et barres de menus • Fenêtres défilantes • Onglets • Arbres 12
    13. 13. Design pattern Les Design Pattern permettent d'améliorer la maintenance et l'évolutivité d’un projet. pour une application web GWT : • MVP • Action 13
    14. 14. Design pattern MVP, Action : MVP et Action sont très appréciés dans le milieu professionnel car ils ont de nombreux avantages : • Amélioration de l'évolutivité • Amélioration des tests • Amélioration de la gestion des erreurs, de l'historique, des commandes, etc... 14
    15. 15. Design pattern Il existe de nombreux Framework proposant les patterns MVP et Action : gwt-presenter : MVP gwt-dispatch : Action 15 Propose un plugin pour s'intégrer facilement avec l'IDE Eclipse. gwt-platform (gwt-presenter + gwt-dispatch)
    16. 16. Conclusion Inconvénients Des problèmes de sécurité d'AJAX sont encore présents : • XSS • Authentification • Injection SQL, etc... La partie graphique du framework – les widgets, sont assez "pauvres" voire trop "basiques". L'avenir du framework GWT est "peut être" considéré comme un inconvénient. La version actuelle de GWT (2.4) est "peut être" la dernière. 16
    17. 17. Conclusion Inconvénients Ouverture sur la technologie DART Le langage de Google, censé remplacer JavaScript Ce nouveau langage est destiné à la programmation Web avec l'objectif d'être un langage à la fois structuré et flexible. En conclusion, voici le Hello Word en DART : main() { var name = 'World'; print('Hello, ${name}!'); } 17
    18. 18. CONCLUSION 18

    ×