Comme j'apprends Java pendant cette période et que je viens de terminer les tutoriels, je pense que je suis prêt à commencer à contribuer à un projet (car je sais par expérience que c'est la meilleure façon d'apprendre vraiment).
J'ai vu GWT, ça a l'air intéressant alors j'ai pensé que je devrais essayer. Je pense cependant, puisque GWT déploie des applications Java en JavaScript, pourquoi devrais-je apprendre GWT quand je pourrais apprendre la chose réelle à la place (ceci étant JavaScript). Ma question: ça vaut le coup? Quelqu'un ne serait-il pas préférable d'apprendre JavaScript s'il veut créer des applications JS, au lieu d'utiliser Java et GWT? Je me rends compte qu'il serait peut-être plus facile de construire certaines choses avec GWT mais en fin de compte cela en vaut-il la peine?
Merci.
la source
Réponses:
GWT est essentiellement un compilateur de code natif, un peu comme Visual Studio compile des codes source en octets ou un langage machine.
Cela permet au programmeur d'abstraire les différences dans l'architecture sous-jacente, tout comme les utilisateurs de Visual Studio n'ayant pas à se soucier des différences de longueur de mot, du nombre de registres et des conventions exactes pour appeler le système d'exploitation lorsqu'ils codent pour 32 bits ou 64. -bit.
C'est une bonne chose, car cela vous permet de transférer une partie du fardeau de la maintenance sur d'autres. Comme il s'agit de Google, vous savez qu'ils ont plus de ressources de développement que vous, donc vous apportez essentiellement de la main-d'œuvre supplémentaire gratuitement.
la source
Je n'aime pas ça
Tout ce que vous pouvez en faire, vous pouvez le nettoyer plus sans lui.
la source
La raison même pour laquelle GWT a pris Java comme langage source est que JS (Ecmascript) est inhumainement difficile à utiliser. GWT est juste un bon moyen d'amener la programmation sur le Web / les navigateurs là où cela n'était pas possible auparavant.
Avant GWT, il y avait des tentatives futiles pour programmer quelque chose dans les navigateurs (Ajax, dojo, javascript simple). Mais les forces de la nature y sont trop violentes, donc tout s'effondre (les navigateurs changent, ils ne sont jamais les mêmes, les gens parlent des langues différentes, les gens pensent que 15 images devraient être en fait 15 fichiers, etc.).
Donc, la réponse est: si je devais coder pour une chaudière océanique Internet (ce qui n'est pas mon travail), je choisirais GWT.
PS Une autre pensée. Le JS est fabriqué par Netscape. L'entreprise est morte depuis longtemps, mais la langue reste inachevée et pourrie
la source
Quelques bonnes raisons de rattraper GWT:
Cela dit, GWT n'est en fait pas étroitement lié aux cadres de services Web de Google ou de Sun (servlet). Les outils intégrés se concentrent davantage sur l'intégration avec leurs serveurs, en raison de la nature commerciale de Google ou de Sun. Pour tirer parti de la puissance technologique de GWT, il faut plus ou moins ignorer une partie de l'hyper d'intégration du serveur. Utilisez simplement GWT comme outil d'application client, cela devrait être plus bénéfique pour votre future carrière.
la source
Cela dépend de ce que vous voulez faire (comme pour la plupart des outils de toute façon).
Si vous voulez entrer dans les détails du développement Web, utilisez de nombreuses astuces (parfois différentes) de l'environnement du navigateur, et les dernières fonctionnalités d'entre elles, ayez le courage de vous battre avec de petites astuces qui rendent votre application web `` cool '', GWT sera toujours sur votre chemin: si vous avez le temps et l'expérience, vous pouvez tout faire avec vos mains. Et oui, il existe de nombreuses autres boîtes à outils qui vous aideront tout au long de la programmation en JavaScript.
Cependant, si vous voulez créer une interface graphique "pas si sophistiquée", mais stable pour votre application, qui "devrait", et dans la plupart des cas vraiment faire la même chose, et avoir la même apparence dans divers navigateurs sans astuces, GWT est un bon choix, le meilleur que je sache. Explication: Google est définitivement motivé pour le synchroniser avec le plus de navigateurs et les technologies les plus récentes, et a certainement suffisamment de ressources pour le faire. Oui, vous adhérez à un autre géant au lieu de faire vos propres trucs. Question: quel est votre métier? Pour fournir le même service à la plus grande rage des utilisateurs via une interface Web avec le moindre effort - ou créer un portail Web brillant et exceptionnel qui possède les fonctionnalités les plus intéressantes sur les plates-formes les plus récentes.
+1 raison: je pense qu'il est avantageux de conserver votre application dans une base de code et une langue. Vous pouvez faire une astuce intéressante dans les scripts de base de données - mais vous vous verrouillez sur ce serveur db. Vous pouvez faire des choses externes avec des scripts shell ou des fichiers batch - mais vous vous verrouillez sur le système d'exploitation. Vous pouvez implémenter une partie de la logique du contrôleur en JavaScript pour fournir une interface client riche dans un navigateur - mais vous pouvez vous enfermer dans un navigateur. Dans tous les cas, il n'est pas facile de les synchroniser avec la structure et les exigences de base de l'application (et peut-être le plus difficile est l'environnement de navigateur en constante évolution + outils JS). Je suis convaincu que si l'application principale est en Java, tout devrait être en Java - avec une très petite fraction de cas où vous devez vraiment mettre une partie de la logique dans un autre environnement.
J'ai choisi GWT en raison de mes réponses aux questions ci-dessus - et il fait ce que je voulais qu'il fasse: environ 2 semaines après l'installation, j'avais une interface Web acceptable pour un système de surveillance de serveur interne - même si j'avais de l'expérience avec Swing. (Non, je n'ai pas utilisé l'apparence par défaut et oui, j'ai utilisé CSS et des classes pour présenter des informations logiques :-))
Vérifiez vos tâches actuelles et planifiées - et choisissez le bon outil pour elles.
la source