2010-04-04 3 views
12

Welche Anwendungen sind der ideale Ausgangspunkt für Scala's Lift Web Framework?Welcher Typ von Webapp ist der ideale Ort für das Scala Lift-Framework?

Meine Anforderungen:

  1. Einfache Entwicklung und Wartbarkeit
  2. Bereit für Produktionszwecke. d. h. eine gute aktive Online-Community, regelmäßige Patches und Updates für Sicherheits- und Leistungsverbesserungen usw.
  3. Framework sollte ein paar Jahre überleben. Ich möchte keine App in einem Framework schreiben, für das nach einem Jahr keine Updates/Patches verfügbar sind.
  4. Hat gute UI Templating Engines
  5. Interoperabilität mit Java (Scala erfüllt diese arleady. Gerade hier für Vollständigkeit halber erwähnen)
  6. Gute Komponente orientierte Entwicklung.
  7. Die Entwicklungszeit sollte proportional zur Komplexität der Webanwendung sein.
  8. Sollte nicht vollständig konfigurationsbasiert sein. Ich hasse es, wenn Code automatisch für mich generiert wird und alle Arten von Magie unter der Haube macht. Das ist ein Debugging-Albtraum.
  9. Die Menge an Lift-Wissen, die zur Entwicklung einer Webapp benötigt wird, sollte proportional zur Komplexität der Webanwendung sein. d. h. ich sollte nicht mehr als 10 Stunden damit verbringen, Lift zu lernen, nur um eine einfache TODO-Anwendung zu entwickeln. (Ich habe Kenntnis von Datenbanken, Scala)

Erfüllt Lift diese Anforderungen?

Antwort

4

IMHO, Lift, diese Anforderungen erfüllen. Nicht so sicher über # 4, obwohl, andererseits, hat es eine gute Sammlung von Backends, um mit anderen Diensten zu interagieren.

Ich denke, es hängt hauptsächlich von der Komplexität ab. Lift macht Dinge auf ihre eigene Art, die Sie leicht bekommen können, oder Sie können es nicht tun. Ich würde einen Tag dauern, um diese TODO-Anwendung zu schreiben - und sicher sein, die liftweb group zu nutzen, da es nur wenige Lifter auf Stack Overflow gibt - und sehen, wie das geht. Ich denke, Sie können sich eine Meinung darüber bilden - nur einen Tag.

8

Nun, man könnte Kreuzfahrt durch den Aufzug getting started Führer, in dem Sie eine Ajax bauen App ;-)

Aufzug zu tun hat schon seit 3 ​​1/2 Jahren. Die Google-Gruppe hat fast 2.000 Menschen. Es gibt 40 Committer, von denen 10+ Commits jeden Monat machen. Wir schließen zwischen 40 und 80 Tickets pro Monat und führen monatliche Meilenstein-Releases durch. Unternehmen wie FourSquare, Xerox und Novell haben Hardcore-Apps, die auf Lift basieren.

1

Nach seventhings.liftweb.net und Skimming die ersten beiden Kapitel des Auftriebs in Aktion zu lesen, sieht Aufzug des Sweet-Spot, komplexe HTML-Seite-basierte Anwendungen mit erweiterten Client-seitige Funktionalität zu sein (wie Facebook und Twitter).

Vergleich zum Single-Seite Ajax „Webapp“ -Anwendungen (like a calendar oder meist anything built with ExtJS), die erweiterte Client-seitige Funktionalität mit reinen Javascript und Ajax-Middle-Tier-Diensten bieten, aber das Programmiermodell ist Javascript, HTML ist weg abstrahiert. Vergleichen Sie auch mit traditionellen HTML "website" -basierten Anwendungen wie einem Wiki oder Blog - Think twitter bootstrap + jquery -, die keine erweiterten clientseitigen Funktionen benötigen.

einseitige webapps und seitenbasierte websites würde ich mit lift komplexer machen als nötig, es sei denn, sie hatten ein erfahrenes team mit disziplinen &. Dies korreliert wahrscheinlich mit der Produktreife und der Teamgröße - Facebook und Twitter sind extrem große Anwendungen mit Hunderten von interagierenden Teams und starker technischer Führung.

Ein kleines Team von Leuten, die immer noch Meinungen darüber ausarbeiten und entwickeln, wie verschiedene Apps strukturiert sein sollten, wird wahrscheinlich von Lift in komplexere Lösungen getäuscht, wenn sie nur einfache HTML-Templates und einfache Ajax-Endpunkte benötigten.

Verwandte Themen