Welche Java-Web-Technologie zu lernen, Rich Internet Applications zu entwickeln?

StackOverflow https://stackoverflow.com/questions/1401483

  •  05-07-2019
  •  | 
  •  

Frage

Ich habe Web entwickelt Anwendungen mit JSF (MyFaces-Komponenten). Aber in diesen Tagen der ansprechenden Benutzeroberfläche, tut JSF gut gehen. Ich bin zu hören viel über AJAX, GWT, etc. So wollte ich Ihre Meinung, auf dem Web-Technologie / Rahmen soll ich inorder lernen, Web-Anwendungen für Enterprise-Produkte zu entwickeln. Einige der Web-Technologien, die ich Anhörung m sind:

  1. ICE Faces (mit AJAX-Brücke-Unterstützung)
  2. GWT
  3. ExtJS und extGWT
  4. JavaFX
  5. Apache Wicket
  6. JQuery
  7. AJAX
  8. Öffnen laszlo

Welche der oben oder die Kombination der oben würde mir helfen?

Einige der Parameter, auf denen Sie diese Web-Technologien bewerten können, sind:

  
      
  1. Einfaches Lernen
  2.   
  3. Wartbarkeit von Web-Anwendungscode
  4.   
  5. Unterstützung der Gemeinschaft
  6.   
  7. IDE-Unterstützung - Eclipse oder NetBeans
  8.   
  9. Aus dem Regal Komponentenverfügbarkeit (wie Textbox, Tisch Grids, Optionsmenüs)
  10.   
  11. Lizenz - Ist es für die kommerzielle Nutzung kostet
  12. ?   
  13. User Experience - ansprechende Benutzeroberfläche. Shouldnt sein träge
  14.   

Eine ähnliche Frage auf SO beantwortet teilweise meine Frage. Würde jedoch weitere Informationen wünschen.

EDIT: Antworten zusammengestellt: Auf der Grundlage der Antworten: AJAX wäre das Beste, was für das Lernen Grundlagen zu starten, dann JQUERY lernen. Jede Komponente auf Basis Rahmen Arbeit, die Ajax ergänzen können, jquery?

Edit 2: Wenn ich eine Web-Anwendung wie Stackoverflow zu entwerfen (in Java-Plattform), die die beste Wahl zu erlernen und adoptieren?

wäre
  

Wicket + Jquery, WiQuery

     

GWT

     

Einige XYZ Faces   Technologie (Richfaces / ICEFaces) + AJAX.

Kommentare von jemandem geschätzt, die mit ihnen gearbeitet hat, und kann sie in den oben genannten Parametern bewerten.

War es hilfreich?

Lösung

AJAX ist nur ein (meiner bescheidenen Meinung nach, bedeutungslos) Begriff.

jQuery ist, meiner Meinung nach, die Weg Javascript zu tun. Es sei denn, es eine unüberwindliche requeriment ist seine Verwendung zu verbieten, empfehle ich es, wenn Sie jemals Javascript selbst (Anmerkung schreiben müssen, wenn Sie GWT verwenden, verwenden Sie Javascript, aber nicht Schreiben es, so dass Sie don‘ t müssen jQuery).

  1. Einfaches Lernen: Sie müssen Ihre Einstellung von traditionellem prozeduralen Stil JS [jQuery ist noch prozedurale, hat aber einen großen deklarativen Aspekt] ändern. Wenn Sie noch nie Javascript geschrieben haben, könnte es einfacher sein zu nähern
  2. Wartbarkeit von Web-Anwendungscode: sehr
  3. Unterstützung der Gemeinschaft: ziemlich viel
  4. IDE-Unterstützung - Eclipse oder NetBeans: Ich glaube nicht. Ich vermisse es nicht; Ich hasse das Schreiben genug Javascript mir eine IDE machen verpassen.
  5. Aus der Regal Komponentenverfügbarkeit (wie Textbox, Tisch Grids, Optionsmenü): jQuery UI hat ein bisschen, und es gibt viel Material da draußen
  6. Lizenz - Kostet es für den kommerziellen Gebrauch ?: Nein

Von den anderen Technologien, die Sie erwähnen:

  1. GWT: Ich glaube, das ist interessant, wenn Sie Ziel Intranet-Sites oder ähnliches sind, schreiben sehr Desktop-ähnliche Websites (man denke an Gmail, keine typische Content-Website). Ich nehme an, Sie ganz erhebliche Anstrengungen machen müssen Ihre GWT-basierten Websites von Suchmaschinen gecrawlt zu machen und nutzbar durch nicht-anspruchsvolle Browser zu sein (das heißt GWT würde für JS-weniger-Browser wie einige Handys nutzlos)
  2. JavaFX. Ich glaube, das ist nur eine Spielerei. Fügt nicht viel zu Java-Applets und es nicht so viel Trägheit wie Java haben.
  3. Apache Wicket: Das ist auf meiner To-untersuchen Liste
  4. Openlaszlo:. Sieht sehr interessant aus, wenn Sie Flash Sachen tun möchten, ohne Lizenzen zu bezahlen

Wie mein Vorschlag.

Ich schlage vor, Sie lernen, Ihre Webseiten zunächst ohne JS zu entwickeln. Dann fügen Sie JS (mit jQuery), google "Progressive Enhancement".

Wenn Sie dies tun können, können Sie so etwas wie GWT lernen mit und es verwenden, wenn es gerechtfertigt ist.

Andere Tipps

Ich würde Apache Wicket wird dringend empfohlen, ich sehe, Sie haben gesagt, / bearbeitet die Frage zu sagen, dass Sie in Richtung Ajax / JQuery lehnen und für Komponentenrahmen zu stellen, die diejenigen ergänzen.

IMO unter den komponentenbasierten Frameworks, Wicket bietet die beste Integration mit Drittanbieter-JavaScript-Bibliotheken. Ich habe persönlich bewertete die Anwärter GWT, Tapisserie und JSF - aber Wicket macht es wirklich einfach zu:

  • beitragen Javascript HTML> HEAD
  • injiziert Ajax-Callback-Code (oder benutzerdefinierte JavaScript) in eine Web-Seite
  • rufen Sie eine Veranstaltung auf einer Stateful-Komponente auf der Serverseite
  • Ausführen beliebiges Javascript vor oder / und nach einem Ajax (XHR) Anfrage Brände

Sie können dieses Blog-Post siehe wie YUI mit Wicket zu integrieren, können die gleichen Konzepte leicht zu JQuery erweitert werden.

Das heißt, Wicket-internen Ajax Unterstützung, die es tatsächlich ermöglicht Ihnen, reiche UI-s zu erstellen, ohne eine einzige Zeile Javascript-Code zu schreiben. Denken Sie dynamische Auffrischung der selektiven Teile einer Web-Seite, Pop-up-Dialoge, etc.

Ich bin mir auch bewusst ein Projekt für Wicket-JQuery Integration genannt WiQuery , aber ich habe es noch nicht ausprobiert.

Ich habe in GWT gearbeitet (mit GWT-ext) für mein neuestes Projekt und habe es sehr genossen. Abgesehen davon, hat jQuery schon immer ein Geschenk des Himmels, und ich werde es verwenden jedes Mal wenn ich nicht über einen robusteren Rahmen zur Verfügung.

Wenn Sie eine angemessene Menge von Javascript / AJAX zu tun haben, möchten Sie auf jeden Fall lernen und jQuery zu verwenden! Es hätte mich Jahre der Trauer gerettet hatte kam es im Jahr 1999 aus.

Ich neige dazu, auf grundlegende Kenntnisse zu konzentrieren, so, Sie ein starkes Verständnis von Javascript bekommen möchten, einschließlich objektorientierte JavaScript.

Wenn Sie JavaScript gut kennen, sind die Bibliotheken leicht zu erlernen.

Sie können einig vorbei Verständnis für einige der Funktionen von HTML5 zu erhalten, die nützlich sein kann, wie zum Beispiel des Tag.

Sie können auch 3 Actionscript lernen, wie das wird Ihnen helfen, zu verstehen, wie Flash-Arbeiten, wie Sie wissen, welchen Code der Flash-ide erzeugt. Ich habe ein Ant-Skript verwendet, um mein Actionscript-Code zu kompilieren, mit Eclipse.

Silverlight wird immer beliebter, aber die Visual Studio Express erfordert, aber es ist ein starker Konkurrent mit Flash.

Für den Rest, eine vorübergehende Referenz nützlich sein kann, wie Ihre Liste ist nicht erschöpfend, aber stellen Sie sicher, dass Sie die grundlegenden Sprachen gut für diese und die Frameworks verstehen Sie schnell abholen können.

Wenn Sie irgendeine Art von Client / Server-Erfahrung über einen Webbrowser haben wollen würde ich vorschlagen, einen Blick auf GWT zusammen mit Google Eclipse Plugin zu nehmen. Diese Art der Technologie ermöglicht es Ihnen wirklich die am schnellsten reagierenden Webapps schreiben Sie (aus meiner Sicht) erreichen kann.

Ansonsten, wenn Sie etwas traditionellere Webapps entwickeln wollen und fügen Sie einfach Ajax-Funktionalität Sie einen Blick auf nehmen könnte DWR (Direktes Web Remoting). Diese Art der Technologie ermöglicht es Ihnen, auf Draht serverseitige Java-Objekte auf der Client-Seite für die Möglichkeit, ihre Funktionalität durch JavaScript zu verwenden. Es wird Ihnen helfen, Ihre Ajax-Funktionalität und möglicherweise auch in der Wiederverwendung von bestehenden Logik in schriftlicher Form.

Natürlich jQuery ist immer eine gute Alternative dar.

Seam, Frühling, Richfaces, Ajax4jsf

Ich bin auf der gleichen Spur wie Sie, zu versuchen, herauszufinden, was meine Server-Seite sein wird, + Client-Seite-Entwicklungstool für eine große Internet-Seite eingestellt. Soweit ich gesehen und gelesen habe, wie immer, es hängt von der Art der Web-Anwendung, die Sie benötigen.

Es gibt Menschen, verschiedene JavaScript-Frameworks verwenden, basierend auf einfache Bedienung, deklarativen, objektorientiert, und dergleichen.

Es gibt mehrere Dinge zu beachten: 1) Client-Side-Technologie   1a) „Kern“ Client-Seite-Technologie: Karkassen   1b) UI Client-Seite Technologieverbesserungen 2) Server-Side-Technologie

"Kern" JavaScript-Frameworks, Sie JQuery finden, MooTools (MIT-Lizenz), ExtJS Core (MIT-Lizenz) (nicht ExtJS: diese ExtJS Core ist + UI-Gadgets und die spätere Bedürfnisse kommerzielle Lizenz), Yahoo UI, usw. Sie können sie in Seiten wie diese vergleichen: http://www.domassistant.com/slickspeed/

Dieser Test "irgendwie" vergleicht verschiedene Aspekte jedes dieser "Kern" Client-JavaScript-Frameworks.

Was halten Sie von diesen Rahmenbedingungen bekommen? Die meisten von ihnen, können Sie „Cross-Browser“ kompatibel ist, und jeder hat mehrere und verschiedene Möglichkeiten und Syntax sein.

Nur eine Frage der Prüfung und versuchen, die Sie am meisten mögen.

Also, mit dieser, man bekommt nur einen Weg für „everybrowser“ codieren.

Nun, wenn Sie "Widgets / Steuerungen / UI-Gadgets" benötigen, dann, jeder "Kern" Rahmen seine eigene UI bezogenen Erweiterung hat.

Auch, einige von ihnen können miteinander in Wechselwirkung treten. Ich habe über Implementierungen von ExtJS (nicht Kern, die eine, die mit mehreren guten UI-Elemente kommt) mit jQuery verbinden.

Also, für die Client-Seite haben Sie Ihr „Kern“ Rahmen zu wählen, und wenn Sie UI benötigen, dann, mit ihnen einige UI zugeordnet ist.

Es gibt mehrere IDEs, die mit dieser Frameworks kompatibel sind, kann man sein Aptana Eclipse, Netbeans (neueste Version integriert sich sehr gut mit Javascript) oder in der Microsoft Seite Expression, Visual Studio Express oder "Pro".

Es ist auch eine Tatsache, dass jQuery enthalten war „wie sie ist“ und von Microsoft und Nokia unterstützt. So wird jQuery jetzt mehr Aufmerksamkeit bekommen, und mehr Unterstützung und mehr „public“, ich sage voraus, es wird eine Menge Aufmerksamkeit und Verbesserungen erhalten. Sie nicht kaufen jQuery, sie daran haften als ein Open Source in VS-Lösungen enthalten von nun an. Und wird sehr eng gekoppelt mit ASP.NET MVC, Komponenten und dergleichen.

Wie auch immer, jQuery, wie ich schon sagte, ist nicht die einzige und nicht necesarily das Beste.

Für Server-Seite gut, es hängt von Ihrem Wissen. Java, ASP.NET, was auch immer Sie sich wohl fühlen

Ich hoffe, dass Sie diese nützlich finden.

Meine Auswahl ist GWT weil GWT Programm schreibt in Java-Programmiersprache und diese Programmiersprache ist sehr mächtig und leicht zu verstehen.

jQuery und ext-js ist auch gut, aber ich hatte einige Probleme mit JavaScript-Programmiersprache. Diese Programmiersprache ist sehr fehleranfällig.

Apache Wicket Codierung mag GWT, aber es ist serverseitige Technologie, und es ist eine schwere Technik.

Da JavaFX-Programm benötigt Plugin nicht meine Auswahl ist.

Mein empfohlen, Sie ist jQuery oder ext-js, wenn Sie Probleme mit JavaScript nicht.

Sie werden wahrscheinlich eine Kombination von Werkzeugen zu erlernen, aber wahrscheinlich mit AJAX, dann gehen Sie zu einigen JS-Bibliotheken (JQuery, Prototyp-scriptaculous, MooTools, etc).

beginnen soll

Die werden auch einen JSF-Framework gut ergänzen.

Ich würde vorschlagen, dass Sie einen Blick auf Vexi , die Desktop-ähnliche Anwendungen bietet, die flexibler sind als ein Applet + Schwingen / AWT.

(Disclaimer: Ich bin ein Entwickler von Vexi)

Die Anwendungen sind Desktop-ähnliche - reich und reaktionsschnell - und Benutzeroberflächen, die „projiziert“ über das Internet. All die Anwendungslogik befindet sich auf dem Server, den Sie in der Sprache Ihrer Wahl erstellen und setzen über eine XmlRpc Schnittstelle.

Der Hauptvorteil von Vexi ist, dass das Layout ist wirklich einfach, da es ein Box-Modell ist. Es ist einfacher als HTML zu verstehen, auch.

<box>
    <box orient="vertical">        .-------------------.
        <box fill="red" />         |   red   |         |
        <box fill="blue" />        |---------|  green  |
    </box>                         |   blue  |         |
    <box fill="green" />           '-------------------'
</box>

Scripting mit JavaScript gemacht, und es ist ein erweiterbares Widget-Set. Mit Widgets ist einfach zu.

<button id="button1" text="My button" />
<textarea id="text1" shadowtext="Type in here!" />
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top