2010-03-01 8 views

Antwort

14

Ich bin ein Committer von Apache Click, aber hoffentlich finden Sie meine Meinung Ziel.

Ich kenne Vaadin überhaupt nicht, hatte nur einen flüchtigen Blick auf ihre Website und Beispiele und Mission Statement.

Apache Click und Vaadin sind für verschiedene Problembereiche gedacht. Apache Click zielt auf traditionelle Unternehmens-Webanwendungen ab, während Vaadin auf den Rich Internet Application (RIA) -Raum abzielt.

Apache Click ist eine traditionelle teilen nichts, Staatenlosen Rahmen. Im Gegensatz zu herkömmlichen aktionsbasierten Web-Frameworks bietet Click mit Seiten und Komponenten eine etwas höhere Abstraktionsebene. Am Tag ist Click keine Revolution. Es ist nur einer von vielen Ansätzen für die Entwicklung von Webanwendungen. Meiner Meinung nach ist es ein sehr guter Ansatz, sowohl aus Sicht des Entwicklers als auch des Betreuers. (In Enterprise-Umgebungen sind Entwickler und Betreuer oft nicht die gleiche Person, daher unterscheide ich zwischen den beiden Rollen).

Entwickler haben jedoch manchmal Anforderungen, die von traditionellen Webanwendungen nicht erfüllt werden können, wo RIA ins Spiel kommt. Sie bieten eine reichere Benutzererfahrung (denke Desktop), aber das ist nicht kostenlos. RIA verursacht Kosten in Bezug auf Komplexität, Produktivität und Time-to-Market. Es macht jedoch Sinn, wenn die Anforderungen für eine reichere Erfahrung sind, müssen Sie mehr tun, um diese Erfahrung zu liefern.

Mein Rat hier ist: Denken Sie sorgfältig über Ihre Anforderungen nach. Gehen Sie nicht einfach davon aus, dass RIA besser ist, es gibt einen Preis zu zahlen, also stellen Sie sicher, dass Sie die Rendite für Ihre Investition erhalten.

Schließlich, wenn Ihre Anforderung für RIA ist, dann sollten Sie Vaadin mit Flex vergleichen. Wenn Ihre Anforderung für eine eher traditionelle Web-Anwendung ist dann vergleichen Sie mit Struts, Streifen, Wicket, Tapestry usw.

Mit freundlichen Grüßen

Bob

+0

Danke Bob, das war eine sehr klare und eine tolle Erklärung! – Ram

+0

"RIA kostet Komplexität, Produktivität und Time-to-Market." das ist einfach nicht wahr für Vaadin. Vaadin ist schnell in Sachen Produktivität !! – Karussell

5

Bevor Sie Ihre Auswahl treffen, sollten Sie alle Optionen auf einer Testfahrt testen.

Ich bin nicht vertraut mit Click, und jemand sollte mich korrigieren, wenn ich falsch liege, aber ich verstehe Click im Grunde eine Technik, um Ihren Server-Side-Code mit Webseiten zu verknüpfen. Die Benutzeroberfläche ist seitenbasiert und Sie definieren die Benutzeroberfläche mit Komponenten, die HTML-Elementen entsprechen. Ajax wird (noch) nicht unterstützt, nehme ich an.

Vaadin arbeitet auf einer höheren Abstraktionsebene. Mit Vaadin können Sie sich auf Ihre Geschäftslogik konzentrieren und Ihre Benutzeroberfläche natürlich mit Ansichten, Layouts und anderen Komponenten erstellen (siehe Sampler). Sie müssen sich nicht um RPC, Seitenübergänge, HTML oder Vorlagen kümmern. Vaadin bietet Ihnen eine vollständig browserübergreifende, kompatible Ajax-Benutzeroberfläche, die hervorragend aussieht und hervorragend funktioniert. Es ist sehr einfach zu starten, und das Forum ist sehr aktiv (> 700 Nachrichten im letzten Monat im Vergleich zu 96 auf der Click-Mailing-Liste).

Haftungsausschluss: Ich bin Mitglied des Vaadin-Teams und habe Click nicht verwendet.

3

Ich würde wählen, und ich habe bereits in ein paar Projekten Click (über alle anderen Frameworks).

Das wichtigste Verkaufsargument für mich war, dass ich Click lernen konnte und an einem Wochenende ziemlich produktiv war (Vaadin - aber andere Frameworks haben mich auch viel mehr gebraucht). Die kostenlose und verfügbare Dokumentation für Click ist viel besser - Sie können die Seiten selbst vergleichen (auch wenn die Vaadin-Website cooler aussieht, die Click-Site ist einfach nützlicher - zumindest war es für mich).

Die live examples sind viel besser - ich sie anschaue immer als Snippet Repository und einfach kopieren, was ich von dort müssen (da ich ein fauler Programmierer bin :)) - es gibt eine „Seite Java“ und „Seiten-HTML "Link für jedes Beispiel, das den Quellcode für jedes verfügbare Beispiel anzeigt.

In Bezug auf den Nachrichtenverkehr, denke ich nicht, dass dies ein Kriterium sein sollte, da so gute kostenlose Online-Dokumente und das Framework so viel einfacher ist, müssen die Benutzer einfach nicht so viel fragen.

Haftungsausschluss: Ich bin nur ein einfacher Benutzer, die beide Frameworks verwendet haben.

7

benutze ich beide ;-)

Klicken Sie auf das Beste für klassische Web-Anwendungen (reine html ohne/small/Handarbeit Javascript) ist. Es ist sehr leicht (klein und stateless), weniger wortreich (Sie können Ihren HTML-Code in HTML mit Velocity/Freemarker Power ;-). Ein echter Php-Killer.

Vaadin ist das Beste für Desktop-ähnliche Unternehmensanwendungen. Es ist Statefully, Schwergewicht, wortreich, aber erstaunlich.

Grails, Spielen !, Spring MVC ist ein echter Schritt zurück nach Click/Vaadin.

Also mein Tipp: Verwenden Sie beide! Für die meisten Ihrer Seiten verwenden Sie Click, für komplizierte Aufgaben - Vaadin.

2

Ist Apache wicket auch eine Option?

Meine Erfahrung ist mit jboss/ejb/jquery, aber mit Blick auf Technologien für den Start eines neuen Projekts. Ich habe selbst ein bisschen Forschung betrieben, und Vaadin scheint sehr gut angesehen zu sein.

6

Ich habe mit einem Klick seit 2006. Ich habe baute in den letzten 4 Jahren verschiedene Webapplikationen damit auf. Alle Apps (B2B) sind immer noch stark und werden weiterhin gepflegt/hinzugefügt. Die besten Dinge über Click IMO sind:

  • Sehr wenig Magie und fast keine Rohrleitungen. Es ist alles nur einfach Java (und Jsp/Geschwindigkeit/Freemarker nehmen Sie Ihre Wahl, oder alternativ verwenden Sie alle 3, wenn Sie so wählen; Ich habe für einige Szenarien, weil es so einfach ist).
  • Es ist super schnell (Es bedeutet nicht, dass Ihre App nicht langsam sein wird, es bedeutet nur, Click wird nie der Grund sein, warum Ihre App langsam ist)
  • Es ist so einfach zu integrieren Ihre Lieblings-Java-Bibliothek. Ibatis SQLMAP, Spring, Anzeigetag, DWR etc.etc.
  • Sie müssen kein Buch kaufen, um es zu verstehen/zu benutzen (obwohl Sie möglicherweise Bücher für alle anderen Bibliotheken benötigen, die Sie verwenden möchten).
  • Der Großteil meines vor 4 Jahren geschriebenen Codes funktioniert immer noch mit der aktuellen Version. Das ist einfach großartig.
  • Klicken passt in den Kopf. Der ganze Rahmen das ist. Es ist so einfach, dass Sie als Anfänger nicht zu viele Fragen haben.
  • Die Jungs, die Click beibehalten, sind super reaktionsfähig und sehr freundlich.
  • Es ist Einfachheit hilft meinen Apps, sich an neue/alte Technologie anzupassen. Ich kann leicht AJAXy-Sachen machen, wenn ich will oder nicht.
  • Die Formularfunktionen machen die Handhabung von HTML-Formularen sehr einfach/schnell.
  • Die Tabellenfunktionen machen die Anzeige von Daten super einfach/schnell
  • Click's Funktionen helfen mir sehr schnell Apps zu schreiben. Macht Gerüstbau überflüssig.
  • Wenn Sie ein leichtgewichtiges, schnelles und einfach zu verstehendes Framework wünschen, mit dem Sie Anwendungen so schnell erstellen können, wie Sie oder Ihr Team persönlich in der Lage sind, klicken Sie auf "Klick", es lohnt sich.

    2

    Sicherlich Apache Wicket ist etwas, das Sie nicht ignorieren können, wenn Sie UI-Frameworks vergleichen. (Ich mache das gleiche.) Ich habe Vadin wegen schlechter Dokumentation fallen lassen (vielleicht bin ich kein guter Googler.)

    Momentan werden Wicket, Klick und ZK verglichen.

    Click und Wicket sind aus folgenden Gründen so weit voraus.

    1. Erzeugt reine HTML anstelle von UI-Rendering Java-Skript, das in GWT, Vadin und ZK passiert. Sie können dann HTML5-Funktionen verwenden.

    2. Auch mit nativem HTML ist die serverseitige Bindung von UI-Formularen möglich. Sie müssen sich keine Gedanken über die Kommunikation mit dem Server machen. ZK tut dies auch, aber mit ihrer eigenen Sprache ZUML.

    3. Ich habe festgestellt, Server Server-Speicher-Footprint höher in ZK im Falle von Komponenten wie ZK Grid. (Speicherbedarf für Click ist mir noch nicht bekannt.)