Welches Framework für Webentwicklung?

Javalist

Mitglied
Hallo,

ich möchte mich an einer Community für einen recht speziellen Bereich versuchen.

Als Basisfunktionen soll das vorhanden sein, was in den üblichen Social Community mit Profilen etc auch zur Verfügung steht. Ggf auch Chat. Hinzu kommen dann noch für die Zielgruppe spezielle Funktionen.

Eigentlich war die Entscheidung schon für Vaadin gefallen, aber dort ist zum einen die Serverbelastung recht hoch, zum anderen sind die Ladezeiten recht hoch. Trotzdem ist dort die Programmierung recht angenehm, weil wenig bis gar nicht mit HTML/CSS oder PHP gearbeitet werden muss.

Welches Framework für die Weboberfläche würdet ihr Empfehlen?
 

dermoritz

Bekanntes Mitglied
also mit deinen Vorgaben ganz klar GWT (ich arbeite gerade sehr intensiv damit).

Vorteile:
- kein Javascript kein HTML
- ui programmierung auch in java (ähnlich wie swing) oder in XML ("ui-binder")
- Browserkompatibilität ist geschenkt
- bietet im Kern alles was man braucht
- es gibt jedoch auch unzählige "Add-Ons" für Widgets und andere Funktionen
- sehr gute IDE Unterstützung (Eclipse, Netbeans und IntelliJ)
- sehr gute Community (google-group)-> man sollte sich nicht scheuen Fragen zu stellen
- freie Wahl zwischen "client-/server- centric" wobei einem es sehr leicht gemacht wird fast alle Logik auf den Client zu schieben
- ab Version 2.1 und später gibt es viele sehr hilfreiche (aber schlecht dokumentierte) neu Funktionen "RequestFactory"(für DB-Interaktionen), "Activities/Places"(für Historymanagement)
- bei gutem Entwurf (Pattern MVP und Dependency Injection benutzen!) kann man den größten Teil der UI-Logik mit klassischem JUnit testen. Bei reinen Ui-Klassen hilft "GWTTestCase".

Nachteile
- nur für Java-Erfahrene (Experten?!)
- schlechte Doku (Doku kommt mit der rasanten Weiterentwicklung nicht mit) -> nach schnellem Einstieg sehr steile Lernkurve
- zumindest bei Eclipse ist das Zusammenspiel mit Maven "bescheiden". Beim neuen Eclipse ist das nochmal ein Stück schlechter geworden. (https://groups.google.com/forum/#!topic/codehaus-mojo-gwt-maven-plugin-users/IgDLATLOq88)
 
Zuletzt bearbeitet:
W

Web-Frameworkrt

Gast

dermoritz

Bekanntes Mitglied
vaadin ist "server-centric". es ist eher für intranet dinge. für jede interaktion im browser wird der server kontaktiert. der server übernimmt zum größten teil die steuerung der ui.

Prinzipiell stellt sich jedoch die Frage wieviele "Communifunktionen" es nicht schon fertig implementiert gibt (Chat, Forum...).

Wenn man diese fertigen Bausteine "nur" integrieren will, ist der use-case eventuell etwas anders.
Gibt es eventuell schon integrierte community-seiten-software?
 
Zuletzt bearbeitet:

dermoritz

Bekanntes Mitglied
ich hatte noch etwas ergänzt^^

das problem mit server-centric ist die skalierbarkeit. die serverlast ist dann nicht nur von backend / geschäftslogik zugriffen abhängig sondern von der art der benutzung der ui.
Wenn z.B. zufällig viele Benutzer aufeinmal auf die Idee kommen Drag&Drop zu machen (die aktualisierung er positionen und das rendern der "gedragten" elemente macht da der server) hat man eine hohe auslastung am server.
das schöne bei gwt ist: ich kann mir aussuchen wo ich welche aufgaben mache und so die skalierbarkeit/performance im nachhinein ändern (es ist nur ein bisschen schwieriger als eine klasse von einem paket(server) in das andere(client) zu schieben)

wo vaadin ganz klar punktet: es ist out of the box schicker und hat nen haufen fertig implementierter use-cases. bei gwt muss man entweder alles selber machen oder auf irgendwelche widget bibliotheken setzen (die richtig guten smartgwt und extgwt sind nur "halbumsonst" )
 

Noctarius

Top Contributor
Wird halt mit Loadbalancer vernünftiges Clustering betrieben. Mit sticky Sessions ist das kein Problem.

Zusätzlich wird die Geschäftslogik intern auf JBoss ausgeführt und die Tomcats machen echt nur Frontend.

PS: Was meinst du mit fertige Module in der Ergänzung?
 

dermoritz

Bekanntes Mitglied
Je nachdem was diese Community-Seite alles bieten soll gibt es bestimmte Funktionalitäten(Module, Bausteine) schon fertig: Forum, Chat, Blog (da gibt es nen Haufen Open Source Produkte)
Eventuell gibt es auch was was mehrere verbindet. Dies Gesamtseite müsste dann diese Bausteine einfach zusammenknoten. Bei diesem Ansatz wäre wichtiger zu wissen in welcher Technologie gibt es alle/viele Bausteine schon fertig (.net, java, php). Basierend darauf müsste man dan eine Entscheidung für die "Gesamtseite" treffen.

Nun zur Skalierbarkeit,

Die Optionen des Loadballancings/Clusterings hat man bei GWT ja auch. Nur hat man eben nur bei GWT die Option die Rechenlast zum Client zu verlagern.
Vor einigen Jahren war das noch kritisch (IE6). Aber mit der Verbreitung moderner JS-Engines und schnellerer HW ist das eine sehr gute Option.
 
Zuletzt bearbeitet:

Noctarius

Top Contributor
Joar leider nutzen immer noch viele Kunden (zu mindestens bei uns noch über 15%) den IE6 ~_~
Die Rechenarbeit für die "GUI" an den Client verlagern ist ja an sich auch eine nette Idee, aber dir wird halt die Möglichkeit genommen zur Laufzeit Module ein- oder auszubinden bzw. zu aktualisieren, da GWT einfach pre-compiled arbeitet.

Vaadin nutzt im Hintergrund auch den GWT Compiler und damit auch fertige JS-Module, die aber zur Laufzeit zusammengestöpselt und zum Client übertragen werden. Wenn irgendwo ein Flaschenhals ist, dann sicher an dieser Stelle und nicht unbedingt an der Datenkommunikation.

PS: Sicher gibt es fertige Module für Communitysysteme :D Ich hätte da z.B. welche *g*
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Welches Ajax Framework Web Tier 8
S Welches Web-Framework ist das richtige? Web Tier 3
J Welches Programm visualisiert mir einen html-Dom als Baumdiagram? Web Tier 5
D Welches Webframework für REST geeignet Web Tier 1
F Welches WebFramework Web Tier 44
C Welches Webframework in JSF 2.0 einsetzen? Web Tier 5
S webframework - welches bevorzugt ihr Web Tier 7
T Spark Java Web Framework Web Tier 0
M JSF Framework für User Management etc. Web Tier 0
Spin Shiro Apache Security Framework Web Tier 3
Dit_ Framework-Wahl Web Tier 5
M Suche Java Framework Web Tier 2
S Framework, AJAX Drag and Drop Hilfe? Web Tier 2
M html + jquery(javascript-framework): elegantes und flexibles Formulardesign Web Tier 5
T JSF/Facelets mit Seam-Framework Web Tier 7
K Webanwendung, welche Framework? Web Tier 6
G Framework ohne JSP? Web Tier 10
M Java Framework für größere Projekte verwenden Web Tier 5
D Die ewige Suche nach dem richtigen Web-Framework Web Tier 34
A JSF Suche Beispiel für Primefaces Tree als Navigation Web Tier 3
S Seite nur aufrufbar machen für eingeloggte User Web Tier 1
R JavaScript für Java Enterprise Entwickler Web Tier 1
G JSF Webanwendung Editor für JSON gesucht Web Tier 1
S JSP Hm... Vorlage für Java Basierende Webseite? Web Tier 0
J Funktion für AJAX - Problem mit Return Web Tier 14
D Servlet 1 Servlet für alles - Wie Cookies per Ajax? Web Tier 1
R JSF Zugriff für Helpdesk-Mitarbeiter Web Tier 15
I Autocomplete Google Maps für JSF Web Tier 0
W Servlet SPEICHERN UNTER-Dialog für mehrere Dateien Web Tier 4
L java.io.NotSerializableException für domain Objekte - Design Problem? Web Tier 12
M Converter für SelectOneMenu Web Tier 3
J eigene taglib für jsf 2.0 schreiben Web Tier 21
S Empfehlung für stateless Webframework Web Tier 2
J mögliche 'eigene' Konfigurationen für die Web.XML auflisten lassen Web Tier 4
H Singleton für In-Memory-Caching in WebApp Web Tier 4
F Wo und wie Daten die für alle Benutzer bestimmt sind verwalten Web Tier 4
S beste Preis/Leistung für Server Web Tier 3
H Relativer Pfad für XML-Datei in JSP-Anwendung Web Tier 3
S Welcher ansatz für Web Application + Web Service Web Tier 5
M JSF Converter für String to List<String> Web Tier 2
R Servlet Resource laden für SMTP - Session Web Tier 4
T JSF Eigener Converter wird nur für Eingabekomponenten aufgerufen? Web Tier 3
O Welche JSF Implementation ist am besten für mich geeignet ? Web Tier 3
T Sprachenauswahl für Projekt Web Tier 3
M JSF Komponentenframework für Web/JSF? Web Tier 7
M JSF Simple Testklasse für Button - MethodNotFoundException? Web Tier 6
B JSF JSF1.1 @Tomcat 5.5 für ein neues Projekt Web Tier 18
I Anwendungsfälle für OO Vererbungshierarchien bei Webapps Web Tier 4
D Struts Mehrsprachigkeit in textfield für key ja, aber für label nein? Web Tier 4
M Classpath für JPA in Tomcat Webapp: Wie konfigurieren? Web Tier 4
S ClassPath für Servlet Web Tier 3
T Plugins für Eclipse Web Tier 9
T JSF Zwei Listen/Vectoren für f:selectItems verknüpfen - möglich? Web Tier 2
ruutaiokwu JSF nur für die präsentation verwenden? Web Tier 4
S Ein ControllerServlet für andere Servlets - Sinnvoll oder nicht? Web Tier 34
C Webspace bzw. Server für GWT Web Tier 5
O Testframework für Webanwendung? HTMLUnit? Web Tier 3
C CMS für GWT Anwendung Web Tier 2
T SVG für JSF2 Web Tier 8
Java.getSkill() Lerngruppe für Tapestry 5 Web Tier 21
T Template für die ganze Seite Web Tier 6
Spin JSF oder PHP für Web Web Tier 4
Z Erlaubte Klassen für h:selectOneListbox Iteration? Web Tier 2
R Exception? Was für ein Fehler? Web Tier 3
J DataScroller: rowCount für Folgeseiten übernehmen Web Tier 2
M Tomcat - Mehrere Verzeichnisse für die jsp Web Tier 12
N JMX MBean für JBoss 4.2.2 Web Tier 4
E Mime-Type für unbekanntes Programm Web Tier 6
M Best Practice für "Teilnahmebediengung akzeptieren" Web Tier 2
M JSP Custom Tag für Bilder Web Tier 14
H Gibt es für das message-bundle eine Standard - Ordnung? Web Tier 2
J Welcher WebServer(-anbieter) für Servlets? Web Tier 5
N Webfrontend für vorhandenes Programm Web Tier 2
A Einfaches Filter-Servlet für Benutzer-Validierung Web Tier 3
R <fmt:formatDate> und 2 Zeichen für den Wochentag? Web Tier 2
T Ajax / Javascript Plugin für Eclipse Web Tier 1
T Was nehmen für eine Datenbankapplikation mit Webinterface Web Tier 5
G wert für hiddenfield per javascript setzten Web Tier 4
K Escape Charakter für EL Web Tier 4
leifg Parameter für Tags aus String lesen (JSP 1.2) Web Tier 2
N JSF: Servlet für Bilder: Verbindung zu Spring Service ? Web Tier 1
S Mehrere Styleklassen für Tabellenreihen Web Tier 4

Ähnliche Java Themen

Neue Themen


Oben