2009-06-05 9 views
52

Ich frage mich nur, ob jemand Erfahrung mit den drei hat. Ich habe einige RoR gelesen und Django benutzt. Sie scheinen ziemlich einfach zu bedienen. Ist der Aufzug "einfach" wie diese beiden? Ich weiß, einfach ist subjektiv und hat hier keinen Zusammenhang. Ich meine auf einem sehr hohen Niveau und allgemeinem Sinn.Ist das Lift-Framework so "einfach" wie Ruby on Rails oder Django?

Antwort

67

Ich arbeite gerade an einer Reihe von Projekten im Aufzug, also gebe ich meine persönlichen Erfahrungen.

Es ist ein sehr fähiger Rahmen - und ich finde es leichter Arbeit der Anwendungsentwicklung als das Äquivalent in Schienen oder Django. Sie werden jedoch ein angemessenes Verständnis von Scala benötigen, um mit der anspruchsvollen App-Entwicklung beginnen zu können, da Dokumentation vorhanden, aber begrenzt und nicht zentralisiert ist.

Lift selbst hat eine Menge Features aus bestehenden Frameworks ausgewählt - Rails und Django enthalten - um zu formen, imho, ein Best-of-Breed-Framework. Es verwendet auch einige neue Techniken, die wirklich bedeuten, dass Sie ein Frontend nehmen und relativ schnell eine Anwendung erstellen können.

Im Anschluss an die Tutorials können Sie die klassische "Todo" -Anwendung erstellen, die von vielen Frameworks mit wenig bis keine Erfahrung innerhalb von 2-3 Minuten demonstriert wird. Aber ich würde sagen, dass Sie ein vernünftiges Wissen über Java und ein Verständnis von Scala haben müssen, um den Lift optimal zu nutzen.

Die Einrichtung einer komfortablen Entwicklungsumgebung ist nicht gerade schmerzlos, da die Mainstream-IDEs nur wenig Unterstützung bieten.

Wenn Sie ein Wochenende haben, können Sie getting started widmen und reading the book ich würde wärmstens empfehlen, den Sprung zu wagen.

Als eine direkte Antwort auf Ihre Frage, in Bezug auf "Leichtigkeit", würde ich sagen, dass, wenn Sie mit Java, Scala, Ruby und Python nicht vertraut sind, dann von den drei wäre Ihre beste Wette Schienen - wie Ruby ist eine schöne Sprache, nahezu selbsterklärend, gut dokumentiert, stellt die meisten OO-Konzepte vor und ist sehr einfach zu erlernen. Außerdem kenne ich viele Leute, die Rubin nur durch die Entwicklung in Schienen gelernt haben.

+0

Vielen Dank für diese Erklärung. – johnny

+12

Schienen besser als Django? Wahnsinn! Dies ist ein aaa! – drozzy

+0

Apropos spotty Dokumentation ... Der Erste Schritte-Link ist jetzt: http://liftweb.net/getting_started :) Bearbeiten: Ich habe vergessen, dass ich Beiträge bearbeiten kann .. aktualisiert! –

9

Ich muss sagen, es ist ein bisschen schwieriger zu beginnen mit, aufgrund der Komplexität des Java/Scala-Ökosystems (Maven? Gradle? .war Dateien? Tomcat? Jetty? was ??) und die Notwendigkeit der Kompilierung. Die Ausnahme ist, wenn Sie Java-Entwicklungserfahrung haben, oder speziell Java Web-Entwicklungserfahrung, in welchem ​​Fall ich sicher bin, dass all dieses Zeug ein alter Hut für Sie ist.

Sobald Sie das hinter sich haben und einen Workflow haben, ist es großartig. Scala ist eine fantastische Sprache, und Lift ist ein einnehmender Rahmen.

16

Ich muss mit den anderen Antworten, die Lift über RoR und Django unterstützen, nicht übereinstimmen. Lift ist unglaublich fähig und sehr flexibel. Aber jeder, der denkt, dass es leichter ist, mit ihm zu ranken und zu kommen als Django und RoR, ist nicht pragmatisch.

Zum einen gibt es viel mehr Dokumentation über Django und RoR. Es gibt Schulungen, viel mehr Bücher, viele Webeinträge zur Lösung gängiger Probleme. Django hat eine riesige Anzahl von Plug-Ins, etc. Ich weiß, dass es nicht so aussieht, als wären diese Dinge wichtig, aber sie tun es. Wenn es schwierig ist, jemanden einzustellen, ist es schwer zu trainieren, muss man die Probleme immer wieder lösen, usw., dann ist das ein echter Abfluss.

Ich bin ein Fan von Aufzug, und ich denke, eines Tages meine Empfehlung könnte nicht wahr sein. Aber wenn dein Leben davon abhängig ist, solltest du vielleicht den sicheren Kurs nehmen und RoR/Django gehen.

4

Wenn Ihnen die einfache Inbetriebnahme wichtig ist, können Sie RoR oder Django verwenden. Aber wenn langfristige Leistung, Skalierbarkeit und Wartbarkeit von Bedeutung sind, wenn Sie in der Lage sind, Scala zu lernen, was ein bisschen komplizierter, aber ziemlich elegant und angenehm in meiner Erfahrung ist, wird Lift oder Play langfristig wahrscheinlich eine längere Lebensdauer und Anpassungsfähigkeit ergeben kann die etwas längere Startzeit bei einem bedeutenden Projekt erheblich ausgleichen. Werfen Sie einen Blick auf einige der performance comparisons