189 votes

Les plus grands pièges de GWT ?

Je suis au début/milieu d'un projet que nous avons choisi de mettre en œuvre en utilisant GWT. Quelqu'un a-t-il rencontré des écueils majeurs dans l'utilisation de GWT (et GWT-EXT) qui n'ont pas pu être surmontés ? Et du point de vue des performances ?

Voici quelques exemples de ce que nous avons déjà vu/entendu :

  • Google ne parvient pas à indexer le contenu
  • Les CSS et le stylisme en général semblent être un peu instables.

Je suis également à la recherche de tout commentaire supplémentaire sur ces articles. Merci.

4voto

Légèrement hors sujet, mais le canal #gwt sur irc est très utile, au cas où vous auriez un problème persistant.

4voto

Blessed Geek Points 6930

GWT est assez simple et intuitif.

Surtout avec la sortie de UIBinder pour permettre aux widgets GWT d'être mis en page en XML et ensuite codés en Java.

Donc si vous avez utilisé d'autres outils de conception Ajax ou Flash, ou Silverlight, etc, GWT est très facile à apprendre.

L'obstacle majeur, si ce n'est l'écueil, est GWT RPC. La raison même pour laquelle vous souhaitez utiliser GWT est à cause de GWT async RPC. Sinon, pourquoi ne pas simplement compter sur css pour formater votre page ?

GWT RPC est cet élément qui permet à votre serveur de rafraîchir les données sur votre serveur sans avoir à rafraîchir la page. C'est une exigence absolue pour des pages telles que le suivi de la performance des actions (ou la dette nationale et publique actuelle des États-Unis ou le nombre de bébés à naître avortés dans le monde à la seconde).

GWT RPC demande un certain effort de compréhension, mais après quelques heures, tout devrait être clair.

En outre, après avoir fait quelques efforts pour apprendre GWT RPC, vous découvrez finalement que vous ne pouvez pas utiliser les JSP comme composant de service pour RPC, à moins que ... J'ai une série de 8 parties (je pense) sur mon blog sur la façon d'utiliser JSP comme le servicer GWT RPC. Cependant, puisque vous n'avez pas demandé de réponses mais juste des questions, je vais m'abstenir de faire de la publicité pour mon blog.

Donc, je crois vraiment que les pires obstacles/embûches à l'utilisation de GWT sont de trouver comment déployer correctement GWT async RPC et comment lui permettre d'utiliser les serviteurs JSP.

3voto

ykaganovich Points 8497

Nous avons eu beaucoup de mal à marier notre base de code GWT avec des modèles web HTML que nous avons obtenu d'un concepteur web (pages HTML statiques avec des ids div spécifiques que nous voulions que GWT gère). Au moins à l'époque où nous l'utilisions, nous ne pouvions pas obtenir l'intégration de GWT avec des parties de notre site web qui n'étaient pas codées en GWT. Nous avons réussi à le faire fonctionner par la suite, mais c'était un gros hack.

3voto

  • L'interface Async que vous devez écrire pour chaque interface de service ressemble à quelque chose qui aurait pu être généré automatiquement par le compilateur GWT.
  • Les temps de compilation deviennent longs pour les grands projets

Mais pour un grand projet Javascript, c'est le meilleur choix.

3voto

Joseph Lust Points 4961

GWT 2.4 a corrigé un grand nombre des problèmes mentionnés ci-dessus et une grande bibliothèque de widgets vient de sortir de la version bêta (Ext GWT 3.0.4 a.k.a. GXT), qui est écrite complètement dans GWT, et non pas une enveloppe d'une librairie JS.

Douleur restante :

  • Absence de prise en charge des sélecteurs CSS3 ; vous pouvez utiliser "literal()" dans certains cas pour le contourner.
  • Absence de prise en charge des CSS3 et des événements des navigateurs modernes tels que transitionEnd .
  • Absence de prise en charge de la classe Java Calendar (plusieurs années plus tard).
  • Absence de support de JUnit4 (5 ans et plus).
  • Absence de feuille de route claire et de calendrier de publication de l'équipe Google GWT.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X