Da ich in dieser Zeit Java lerne und gerade mit den Tutorials fertig bin, denke ich, dass ich bereit bin, einen Beitrag zu einem Projekt zu leisten (da ich aus Erfahrung weiß, ist dies der beste Weg, um wirklich zu lernen).
Ich habe GWT gesehen, sieht interessant aus, also dachte ich, ich sollte es versuchen. Ich denke jedoch, da GWT Java-Anwendungen in JavaScript bereitstellt, warum sollte ich GWT lernen, wenn ich stattdessen das eigentliche lernen könnte (dies ist JavaScript). Meine Frage: Lohnt es sich? Wäre es nicht besser, wenn jemand JavaScript lernen würde, wenn er JS-Anwendungen erstellen möchte, anstatt Java und GWT zu verwenden? Mir ist klar, dass es vielleicht einfacher ist, bestimmte Dinge mit GWT zu bauen, aber am Ende lohnt es sich?
Vielen Dank.
quelle
Antworten:
GWT ist im Wesentlichen ein Compiler für nativen Code, ähnlich wie Visual Studio die Quelle für Byte-Codes oder die Maschinensprache kompiliert.
Auf diese Weise kann der Programmierer die Unterschiede in der zugrunde liegenden Architektur entfernen, ähnlich wie Visual Studio-Benutzer, die sich nicht um die Unterschiede in der Wortlänge, der Anzahl der Register und den genauen Konventionen für den Aufruf des Betriebssystems kümmern müssen, wenn sie für 32-Bit oder 64 codieren -bisschen.
Dies ist eine gute Sache, da Sie damit einen Teil der Wartungslast auf andere übertragen können. Da dies Google ist, wissen Sie, dass sie über mehr Entwicklungsressourcen verfügen als Sie. Sie bringen also im Wesentlichen zusätzliche Arbeitskräfte kostenlos ein.
quelle
ich mag es nicht
Alles, was Sie damit machen können, können Sie ohne es sauberer machen.
quelle
Der Grund, warum GWT Java als Ausgangssprache verwendet hat, ist, dass es unmenschlich schwierig ist, mit JS (Ecmascript) zu arbeiten. GWT ist nur eine gute Möglichkeit, die Programmierung auf Web / Browser zu übertragen, wo dies vorher nicht möglich war.
Vor GWT gab es vergebliche Versuche, etwas in Browsern zu programmieren (Ajax, Dojo, einfaches Javascript). Aber die Naturgewalten sind dort zu gewalttätig, so dass alles auseinander fällt (Browser ändern sich, sie sind nie gleich, die Leute sprechen verschiedene Sprachen, die Leute denken, dass 15 Bilder eigentlich 15 Dateien sein sollten usw.).
Die Antwort lautet also: Wenn ich für den Internet-Ozeankessel codieren würde (was nicht meine Aufgabe ist), würde ich GWT wählen.
PS Ein anderer Gedanke. Das JS wird von Netscape erstellt. Die Firma ist schon lange tot, aber die Sprache bleibt dort unvollendet und verrottet
quelle
Ein paar Gründe, die gut sind, um GWT einzuholen:
Angesichts dessen ist GWT tatsächlich nicht eng mit den Webdienst-Frameworks von Google oder Sun (Servlet) verbunden. Die integrierten Tools konzentrieren sich aufgrund des geschäftlichen Charakters von Google oder Sun mehr auf die Integration mit ihren Servern. Um die technologische Leistungsfähigkeit von GWT zu nutzen, sollte man einige der Hyperintegrationen der Serverintegration mehr oder weniger ignorieren. Verwenden Sie GWT einfach als Client-Anwendungstool, es sollte für Ihre zukünftige Karriere vorteilhafter sein.
quelle
Es hängt davon ab, was Sie tun möchten (wie bei den meisten Tools sowieso).
Wenn Sie sich mit den Details der Webentwicklung befassen möchten, viele (manchmal unterschiedliche) Tricks der Browserumgebung verwenden und die neuesten Funktionen verwenden möchten, haben Sie den Mut, mit kleinen Tricks zu kämpfen, die Ihre Web-App „cool aussehen lassen“, GWT wird immer im Weg sein: Wenn Sie die Zeit und Erfahrung haben, können Sie alles und mehr mit Ihren Händen tun. Und ja, es gibt viele andere Toolkits, die Ihnen bei der Programmierung in JavaScript helfen.
Wenn Sie jedoch eine "nicht so ausgefallene", aber stabile Benutzeroberfläche für Ihre Anwendung erstellen möchten, die "sollte" und in den meisten Fällen wirklich dasselbe tut und in verschiedenen Browsern ohne Tricks gleich aussieht, ist GWT eine gute Wahl Wahl, das Beste, was ich weiß. Erläuterung: Google ist definitiv motiviert, es mit den meisten Browsern und den neuesten Technologien synchron zu halten, und verfügt definitiv über genügend Ressourcen, um dies zu tun. Ja, du bleibst bei einem anderen Riesen, anstatt deine eigenen Sachen zu machen. Frage: Was ist dein Job? Mit geringstem Aufwand den gleichen Service für die meisten Benutzer über eine Weboberfläche bereitzustellen - oder ein glänzendes, außergewöhnliches Webportal zu erstellen, das die coolsten Funktionen auf den neuesten Plattformen bietet.
+1 Grund: Ich denke, es ist vorteilhaft, Ihre Anwendung in einer Codebasis und einer Sprache zu halten. Sie könnten in Datenbankskripten ordentliche Tricks ausführen - aber Sie sperren sich an diesen Datenbankserver. Sie können externe Dinge mit Shell-Skripten oder Batch-Dateien erledigen - aber Sie sperren sich an das Betriebssystem. Sie können einen Teil der Controller-Logik in JavaScript implementieren, um eine Rich-Client-Oberfläche in einem Browser bereitzustellen. Sie können sich jedoch auch in einem Browser einschließen. In allen Fällen ist es nicht einfach, sie mit der Datenstruktur und den Anforderungen der Kernanwendung synchron zu halten (und am schwierigsten ist möglicherweise die sich ständig ändernde Browser- und JS-Tool-Umgebung). Ich bin davon überzeugt, dass, wenn sich die Kernanwendung in Java befindet, alles in Java sein sollte - mit einem sehr kleinen Bruchteil der Fälle, in denen Sie wirklich einen Teil der Logik in eine andere Umgebung stellen müssen.
Ich habe GWT aufgrund meiner Antworten auf die oben genannten Fragen ausgewählt - und es macht das, was ich wollte: In ungefähr 2 Wochen nach der Installation hatte ich eine akzeptable Weboberfläche für ein internes Serverüberwachungssystem - obwohl ich Erfahrung mit Swing hatte. (Nein, ich habe nicht das Standard-Look & Feel verwendet und ja, ich habe CSS und Klassen für die Darstellung logischer Informationen verwendet :-))
Überprüfen Sie Ihre aktuellen und geplanten Aufgaben - und wählen Sie das richtige Werkzeug dafür aus.
quelle