GRAILS - LIFT: Welches Rahmen ist besser geeignet für welche Art von Anwendungen? [abgeschlossen

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

  •  11-09-2019
  •  | 
  •  

Frage

Ich habe in den letzten Monaten Grails verwendet und ich mag es wirklich, besonders Gorm. Ich interessiere mich jedoch für Scalas Lift. Daher möchte ich Ihre Meinung darüber wissen, welche Art von Web -Apps besser dafür geeignet sind, welches dieser beiden Frameworks oder es nur eine Frage des Geschmacks ist, welches Framework zu verwenden ist?

Welche dieser Frameworks wird Ihrer Meinung nach in Zukunft eher verwendet? Ich habe das Gefühl, dass Grails weit davon entfernt ist, eine kritische Masse zu erreichen, und es bleibt immer noch sehr dunkel Gebrauchte Grals) und ich bin mir nicht einmal sicher, ob es zum "ROR" der Java -Welt werden kann (in den letzten Monaten meldet tatsächlich einen Wachstumsverfall, auch wenn andere Rahmenbedingungen eine positive Wachstumsrate haben). Und ich liebe Groovy, es ist wirklich leicht zu lernen, aber ich habe bemerkt, wie langsam es für einige Aufgaben sein kann.

Auf der anderen Seite scheint Scala beliebter zu sein (Tiobe -Index), und die Tatsache, dass Twitter es jetzt verwendet, hat es jetzt noch mehr Präsenz in der Blogosphäre mit vielen Liebhabern und Hasern, die es sammeln. Es ist berühmt dafür, schnell und skalierbar zu sein. Die Sprache scheint jedoch für viele Entwickler etwas schwer zu verstehen und zu lernen (vielleicht wird sie niemals den Mainstream -Status gewinnen). Lift ist wenig bekannt und ich habe einige Berichte gelesen, dass er besser für kleine Apps geeignet ist (weniger als 20 Domänenklassen).

Wenn man die Anzahl der veröffentlichten Bücher, die Groovy-Gabels derzeit dominieren, werden jetzt viele Verlage über Scala-Bücher über die Werke verfügen, daher denke ich, dass dieser Vorteil nicht lange dauern wird.

Schließlich haben wir das Problem, dass sowohl Sprachen als auch Frameworks immer noch eine schlechte IDE -Unterstützung haben (es wird von Tag zu Tag besser, aber weit weg von dem, was Java -Shops erwarten, produktiv zu sein).

Ich möchte keine Flammenkriege gründen, aber ich wäre sehr interessiert, die Meinungen anderer Benutzer zu hören.

War es hilfreich?

Lösung

Grails ist eine nette Idee (aber nur "gestohlen" von Rails), aber die Tatsache, dass die Groovy -Jungs nicht daran interessiert sind, eine ordnungsgemäße Finsternis -Unterstützung zu erhalten, behindert den Erfolg sehr. Ich habe sogar Eclipse -Fragen gesehen, die auf den Grails -Listen überhaupt nicht beantwortet wurden.

Ich stimme Tim zu, dass Netbeans 6.7 schließlich die erste Hälfte der Open -Source -IDE -Unterstützung für Groovy/Grails liefert - und schließlich bietet Springide auch eine bessere Unterstützung von Groovy/Grails.

Der Grund, warum viele Java -Leute Java lieben, ist das statische Typing, mit dem Tools mit vielen Dingen viel helfen können. Dies geht mit einer Sprache als groovig verloren. Ja, ich könnte jeden wirklich wichtigen Code in Java schreiben und trotzdem Grals verwenden - aber warum sollte ich dann, nur um eine Reihe von Leitungscodes zu sparen, dies tun, anstatt zu lernen, ein Java -Framework hoch effektiv zu verwenden?

Um ein Ende zu gehen: Ich habe Scala noch nicht angeschaut, sondern einige einfache Apps mit Grals erstellt - und ich neige dazu, nach Java zurückzukehren und sogar jede App neu zu implementieren .

Ich werde mich auch Scala/Lift ansehen, ich habe viele gute Dinge darüber gehört!

Übrigens: Ich würde Gemeinschaften vergleichen und Mailinglisten ansehen - wie viele Menschen gibt es, erhalten sie gute Antworten auf ihre wichtigen Fragen?

Grals scheint eine nicht beantwortete Rate von fast 50%zu haben, was ich für schlecht halte.

Andere Tipps

Die akzeptierte Antwort hier nimmt Groovy wirklich unwissend - es ist eine moderne, dynamische Sprache (dynamisch gegen static ist eine große Debatte an und für sich und hier nicht besonders relevant). Dies geschieht und daher kein Nachteil, nur ein Unterschied. Es hat viele moderne Sprachmerkmale, die Java nicht wie Abschluss, native regexp, polymorphe Iteration, eine optionale statische Typisierung (Debattenfragen, aber auch Groovy ++), native Syntax für Listen und Karten usw.- kann hier einen Vergleich sehen http://groovy.codeehaus.org/differces+from+java

Um die tatsächliche Frage von Grails vs. Lift zu beantworten, würde ich sagen, dass Grails zweifellos sind. Es befindet sich die SpringSource dahinter und schaut sich einfach die Plugins -Seite an http://www.grails.org/plugin/category/all - Ich kann nicht einmal finden, welche Plugins oder Äquivalent für den Auftrieb verfügbar sind. Grails steht auch ganz oben auf den neuesten Cloud-freundlichen Technologien mit Funktionen wie nativem Rabbitmq-Messaging-Support und schlüsselfertiger Gorm-Unterstützung für MongoDB und Redis.

Die Unterstützung von Grails in Netbeans 6.7 ist sehr gut und die Idee intellij in Maia.

Eclipse ist immer noch ziemlich saud.

Ich schaute mir Lift an, war aber besorgt über die verfügbaren Ressourcen. Dies wird sich in Zukunft ändern, aber meine Projekte können es kaum erwarten.

Ich möchte die Frage "für welche Art von Anwendungen" ausdrücklich beantworten. Der Hauptunterschied zwischen den Philosophien von Grails und Lift scheint zu sein, dass Grails MVC erzwingt, während Lift liberaler zu sein scheint.

Außerdem scheint Lift für 'einzelne Anwendungen' hervorragend zu sein, insbesondere wenn Sie eine Server-Push-Funktion mit Technologie wie Comet implementieren müssen (was offensichtlich nicht impliziert, dass sie für andere Arten von Anwendungen nicht gut ist). Andererseits scheint Grals für die "Enterprise" -Anwendungen besser zu sein, insbesondere wenn Sie bereits mit Spring und Hibernate vertraut sind, aber Sie möchten, dass Ihre App viel prägnanter ist (mit der Konfiguration über Konfiguration) als die App nicht Grails wäre diese Technologien verwenden.


Verweise:

  1. Einfach heben, Kapitel 13
  2. Einseitige Anwendung

Haftungsausschluss:
Ich habe gerade angefangen, Lift zu erkunden und einige einfache Apps mit Grails zu erstellen.

Mit all den Leistungsverbesserungen und Fortschritten von Grails2.0, mit großer Unterstützung von Intellij 11 für das Framework, die Fähigkeit, so ziemlich jede fortschrittliche Web -Technologie in Ihre Grails -App zu platzieren, und ja - VMware -Gewicht dahinter - ich nicht wirklich nicht Ich werde nicht sehen, wie Lift ein Vorteil oder eine gute Wahl sein kann. Denken Sie nur daran, zwei verschiedene Sprachen in derselben Anwendung zu verwenden, im Team doppeltes Know -how zu benötigen.

Die ursprüngliche Frage wurde vor 2+ Jahren veröffentlicht, und ich denke, die Zeit, auf der die Wahl der Entwicklergemeinschaft gezeigt wurde;)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top