Introduction à GWT

Bonjour à tous!

Me voila de retour après cette longue absence ! Nous allons aujourd’hui entamer un autre sujet. Il s’agit en effet d’un sujet qui me tient à coeur puisque c’est un sujet que je traite depuis quelques années déjà.

Comme vous l’avez très certainement vu sur mon site Internet (ici), je me spécialise depuis quelques années dans le développement Web et plus particulièrement le développement Java et GWT.

Qu’est-ce que GWT?

GWT (Google Web Toolkit) est un outil gratuit développé par Google mis à la disposition de la communauté informatique afin de faire du développement Web côté serveur et côté client (navigateur) tout en programmant dans un seul langage de programmation : Java.

L’application côté serveur se comporte comme une application Java / J2EE classique, tandis que la partie cliente est compilée non pas en Bytecode (comme l’est habituellement une application Java), mais en JavaScript, langage qui s’exécute au sein des navigateurs Web.

Pourquoi utiliser GWT?

GWT est un outil très puissant et nous allons voir pourquoi.

De manière générale, les programmeurs développent des applications Web dans plusieurs langages. Un langage pour la partie serveur et un autre pour la partie cliente. Il est donc nécessaire à un même développeur de maitriser ces deux langages pour pouvoir intervenir à la fois sur la partie serveur et sur la partie cliente.

Or, actuellement, la plupart des développeurs ne maitrisent pas réellement le langage JavaScript qui est assez particulier. Ils maitrisent plutôt Java qui est un langage très répandu et pour lequel il existe un très grand nombre d’outils tels qu’Eclipse (que nous avons vu précédemment dans ce blog).

De plus, le langage JavaScript a tendance à se comporter de manière différente sur chaque navigateur. Si on code en JavaScript pur sans utiliser de librairie comme JQuery, ceci peut s’avérer long et fastidieux puisque nous aurons souvent à répéter la séquence suivante : si le code s’exécute sur le navigateur X, alors j’exécute le code suivant, sinon si je suis sur le navigateur Y, j’exécute un code similaire mais légèrement différent, sinon etc…

GWT nous garantit que le comportement du code que nous développons sera le même sur la plupart des navigateurs Web.

Quelques autres avantages de GWT :

  • Facilité de débuggage grâce à Eclipse
  • Optimisation naturelle du code (Pruning + Obfuscation)
  • etc…