SlideShare une entreprise Scribd logo
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
 Design pattern
 Inconvénients
 Conclusion
2
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
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
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
Présentation
6
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.
Quelques projets GWT
GWT a été utilisé par Google dans des projets
connus comme :
• Google Docs
• Gmail
• AdWords
• Go Grid
• Whirled
8
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
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
Architecture
11
Widgets disponibles
• Panneaux
• Boutons
• Cases à cocher
• Tables / Grilles
• Boîtes de dialogues
• Menus et barres de menus
• Fenêtres défilantes
• Onglets
• Arbres
12
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
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
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)
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
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
CONCLUSION
18

Contenu connexe

PDF
Human talks-bootstrap
PPT
Gdd07 Gwt Dig
PPTX
Challenge Exakis - Visual studio 2015
KEY
Solutions Web « prêtes à porter » avec WordPress
PPTX
Développer avec Visual Studio et TFS 2012 ses applications Windows Store
ODP
Mythes et réalités des projets Web (Webschool tours)
PPTX
Zero Bug Policy
PDF
Versionning et travail en équipe avec Salesforce - 27/11/2014
Human talks-bootstrap
Gdd07 Gwt Dig
Challenge Exakis - Visual studio 2015
Solutions Web « prêtes à porter » avec WordPress
Développer avec Visual Studio et TFS 2012 ses applications Windows Store
Mythes et réalités des projets Web (Webschool tours)
Zero Bug Policy
Versionning et travail en équipe avec Salesforce - 27/11/2014

Tendances (19)

PDF
Drupal un projet comme les autres ? Drupalcamp Paris 2013
PPTX
Comment transformer WordPress en portail de formation
PPTX
Accéder au développement Dot.Net et Asp.Net
PPTX
Trop gros pour des mercenaires, trop petit pour une armée: Comment s'attaquer...
PPTX
Cms & e commerce
PDF
Java Server Faces - Beyond
PDF
Nuxeo Tech Talk AngularJS
PPTX
Mieux rediger-les-user-stories-bonnes-pratiques-oeildecoach 2019
PPTX
Optimisation des applications Windows 8/HTML5/WinJS
PPTX
Introduction au développement Windows 8.1
PDF
Agilité, n’oublions pas les valeurs
PPTX
Développer une Single Page Application HTML 5 pour tous les devices
PPTX
Techdays 2011 : Développez en Java avec la plateforme Team Foundation Server ...
PDF
[Webinar] Techniques avancées de création de workflow - FR
PDF
Quoi de neuf pour JHipster en 2016
PDF
[Webinaire] Présentation de la création de workflow avec la Plateforme Nuxeo
PPTX
Développer ou debugger ?
PPTX
Introduction au développement Windows 8 avec XAML et .NET 4.5
PPTX
Drupagora - Les clés de la réussite d'un projet Drupal
Drupal un projet comme les autres ? Drupalcamp Paris 2013
Comment transformer WordPress en portail de formation
Accéder au développement Dot.Net et Asp.Net
Trop gros pour des mercenaires, trop petit pour une armée: Comment s'attaquer...
Cms & e commerce
Java Server Faces - Beyond
Nuxeo Tech Talk AngularJS
Mieux rediger-les-user-stories-bonnes-pratiques-oeildecoach 2019
Optimisation des applications Windows 8/HTML5/WinJS
Introduction au développement Windows 8.1
Agilité, n’oublions pas les valeurs
Développer une Single Page Application HTML 5 pour tous les devices
Techdays 2011 : Développez en Java avec la plateforme Team Foundation Server ...
[Webinar] Techniques avancées de création de workflow - FR
Quoi de neuf pour JHipster en 2016
[Webinaire] Présentation de la création de workflow avec la Plateforme Nuxeo
Développer ou debugger ?
Introduction au développement Windows 8 avec XAML et .NET 4.5
Drupagora - Les clés de la réussite d'un projet Drupal
Publicité

En vedette (20)

PDF
Strategies et developpements mobiles multi-plates-formes.
PDF
Dojot formation-dojo-toolkit
PPT
At2009 Coding Dojo ATDD
PPT
Coding Dojo
PDF
Cours JavaScript
PPTX
Agile Dojo : L'art de Grandir en Equipe, Patrice Petit, Conférence Université...
PPTX
CARA Coding dojo - Golden Master
PPT
Descriptions 1220397294893910-9
PPTX
#Collab365 L'importance des métadonnées pour votre entreprise
PPTX
Una vida difícil. Omaima y Noura
PDF
Pas de fraude pour vous ! Comment lutter contre le vol d’identité
PDF
Au royaume des muets, le bègue serait il roi
PDF
Les agents de contraste iodés pour et par les internes aspects pratiques
PDF
Les enjeux et misions de France Televisions - Rapport Schwartz - mars 2015
PDF
Comment bien appréhender une carrière industrielle
PPTX
La educación entre el espacio y el tiempo
PPT
La ComunicacióN!
PPTX
Estrategias del oceano azul on line
PPS
G. Marquez
PDF
Handicap souffrance au travail.
Strategies et developpements mobiles multi-plates-formes.
Dojot formation-dojo-toolkit
At2009 Coding Dojo ATDD
Coding Dojo
Cours JavaScript
Agile Dojo : L'art de Grandir en Equipe, Patrice Petit, Conférence Université...
CARA Coding dojo - Golden Master
Descriptions 1220397294893910-9
#Collab365 L'importance des métadonnées pour votre entreprise
Una vida difícil. Omaima y Noura
Pas de fraude pour vous ! Comment lutter contre le vol d’identité
Au royaume des muets, le bègue serait il roi
Les agents de contraste iodés pour et par les internes aspects pratiques
Les enjeux et misions de France Televisions - Rapport Schwartz - mars 2015
Comment bien appréhender une carrière industrielle
La educación entre el espacio y el tiempo
La ComunicacióN!
Estrategias del oceano azul on line
G. Marquez
Handicap souffrance au travail.
Publicité

Similaire à Google Web Toolkit - GWT (20)

PPT
GWT Principes & Techniques
PPT
Gwt final
PPT
Cours du soir_gwt
PDF
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
PDF
Formation gwt
PDF
Introduction à GWT - GTI780 & MTI780 - ETS - A09
PDF
Introduction à GWT - GTI780 & MTI780 - ETS - A08
PDF
Gwt fast overview_v1
PPTX
Le futur de gwt
PDF
GWT Approfondissement - GTI780 & MTI780 - ETS - A09
PDF
Présentation Rex GWT 2.0
PPT
Google Web Toolkit 1.5 Presentation Web Creative Common
PDF
Gwt oxiane-novae-lr
PDF
GWT, quoi de neuf? Présentation au GDG/GTUG Montréal - 26 juin 2013
PDF
Présentation DevoxxFR 2015 sur GWT
PPTX
Devoxx fr
PDF
Gwt intro-101
PPTX
Presentation of GWT 2.4 (PowerPoint version)
PDF
Presentation of GWT 2.4 (PDF version)
PDF
GWT Approfondissement - GTI780 & MTI780 - ETS - A08
GWT Principes & Techniques
Gwt final
Cours du soir_gwt
Introduction à Google Web Toolkit (GWT) - Philippe Kernevez - February 2009
Formation gwt
Introduction à GWT - GTI780 & MTI780 - ETS - A09
Introduction à GWT - GTI780 & MTI780 - ETS - A08
Gwt fast overview_v1
Le futur de gwt
GWT Approfondissement - GTI780 & MTI780 - ETS - A09
Présentation Rex GWT 2.0
Google Web Toolkit 1.5 Presentation Web Creative Common
Gwt oxiane-novae-lr
GWT, quoi de neuf? Présentation au GDG/GTUG Montréal - 26 juin 2013
Présentation DevoxxFR 2015 sur GWT
Devoxx fr
Gwt intro-101
Presentation of GWT 2.4 (PowerPoint version)
Presentation of GWT 2.4 (PDF version)
GWT Approfondissement - GTI780 & MTI780 - ETS - A08

Dernier (7)

PPTX
Presentation_Securite_Reseaux_Bac+2.pptx
PDF
FORMATION EN Programmation En Langage C.pdf
PDF
FORMATION COMPLETE EN EXCEL DONE BY MR. NYONGA BRICE.pdf
PDF
Modems expliqués- votre passerelle vers Internet.pdf
PPTX
Souveraineté numérique - Définition et enjeux pour les entreprises et les dév...
PDF
presentation_with_intro_compressee IEEE EPS France
PDF
Tendances tech 2025 - SFEIR & WENVISION.pdf
Presentation_Securite_Reseaux_Bac+2.pptx
FORMATION EN Programmation En Langage C.pdf
FORMATION COMPLETE EN EXCEL DONE BY MR. NYONGA BRICE.pdf
Modems expliqués- votre passerelle vers Internet.pdf
Souveraineté numérique - Définition et enjeux pour les entreprises et les dév...
presentation_with_intro_compressee IEEE EPS France
Tendances tech 2025 - SFEIR & WENVISION.pdf

Google Web Toolkit - GWT

  • 1. Google Web Toolkit - GWT “Productivity for developers, performance for users” 1
  • 2. PLAN  Pourquoi GWT ?  Présentation  But de GWT  Quelques projets GWT  Avantages  Architecture  Widgets disponibles  Design pattern  Inconvénients  Conclusion 2
  • 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. 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. 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
  • 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. Quelques projets GWT GWT a été utilisé par Google dans des projets connus comme : • Google Docs • Gmail • AdWords • Go Grid • Whirled 8
  • 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. 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
  • 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. 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. 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. 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. 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. 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

Notes de l'éditeur

  • #5: De nombreux framework javascript sont apparus :
  • #7: 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.
  • #12: 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.
  • #13: 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
  • #14: « 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
  • #16: 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.
  • #17: « Les inconvénients majeurs de GWT : »
  • #18: C’est le nouveau langage de programmation de Google, qui censé remplacer JavaScript