Frage

Ich habe gerade angefangen Scala Lernen, und das erste, was ich ist eine kleine Web-Anwendung implementieren werde. Ich habe mit Erlang für das letzte Jahr serverseitige Software zu implementieren, aber ich habe nie geschrieben Web-Anwendungen vor. Es wird eine große Erfahrung sein.

Gibt es Web-Frameworks für Scala mit Ausnahme Heben ?

Sie mich nicht falsch, Lift sieht genial. Ich will nur wissen, wie viele Frameworks gibt es so, dass ich dann zwischen ihnen wählen. Es ist immer eine gute Wahl zu haben, aber ich das einzige, was ich fand, war Aufzug.

War es hilfreich?

Lösung

ich in Scala sehr interessiert bin, aber ich habe es noch nicht verwendet, so mit diesem Vorbehalt, ich bin die Gerüste bekannt, die in nicht erwähnt werden, Antwort der HRJ (Lift, Süss, Slinky) sind:

Andere Tipps

ich eine Blog-Post darüber geschrieben hat.

Um es zusammenzufassen, sind nur einige der Optionen:

  1. Heben
  2. Süße
  3. Slinky

Schließlich fand ich, dass keiner für mich geeignet waren, und entwickelte meinen eigenen kleinen „Rahmen“. (Es ist nicht Open Source noch) nicht.

Ich mag Aufzug; -)

Das Spiel ist meine zweite Wahl für Scala freundliches Web-Frameworks.

Wicket ist meine dritte Wahl.

Im Anschluss ist eine Müllkippe von Gerüsten. Es bedeutet nicht, dass ich sie tatsächlich verwendet:

  • Coeus . Ein traditioneller MVC Web-Framework für Scala.

  • Unfiltered . Ein Toolkit für die Wartung von HTTP-Anforderungen in Scala.

  • Uniscala Granite .

  • Gardel

  • Mondo

  • Amore . Ein Scala-Port des Ruby-Web-Framework Sinatra

  • Scales XML . Flexible Ansatz zum XML-Handling und eine vereinfachte Art und Weise mit XML in Wechselwirkung zu treten.

  • Gürtel . Eine Rack-ähnliche Schnittstelle für Web-Anwendungen gebaut oben auf Scalaz-HTTP

  • Frank . Web-Anwendung DSL gebaut oben auf Scalaz / Gürtel

  • MixedBits . Ein Rahmen für die Scala Programme Sprache zu helfen, Web-Sites

  • bauen
  • Circumflex . Vereint mehrere in sich geschlossene Open-Source-Projekte für die Anwendungsentwicklung, die Scala Programmiersprache.

  • Scala Webmachine . Port of webmachine des Basho in Scala, ein REST-basierten System für Web-Anwendungen bauen

  • Bowler . Ein RESTful, Multi-Channel bereit Scala Web-Framework

Versuchen Sie Play-Framework-, die auch Scala unterstützen.

Ein sehr interessanter Web-Framework mit kommerziellem Einsatz ist Scalatra , inspiriert von Ruby Sinatra. Hier ist ein InfoQ Artikel über sie.

I Unfiltered sehr interessant https://github.com/unfiltered/unfiltered .

Es ist in IttayD Liste erwähnt.

Hier ist eine Präsentation über die http://unfiltered.lessis.me/#0 und das Video http: //code.technically. wir / post / 942531598 / doug-Tangren-presents-the-ungefilterten-Toolkit-für

Auch hier gibt es einen Artikel mit mehr Informationen http: //code.technically .us / post / 998251172 / Halte-the-Parameter

Es ist zu beachten, dass es auch ein großes Interesse an Wicket und Scala . Wicket passt Scala suprisingly gut. Wenn Sie die Vorteile der sehr reifen Wicket Projekt teilnehmen wollen und ihr Ökosystem (Erweiterungen) sowie die prägnante Syntax und Produktivitätsvorteil von Scala, kann dies für Sie sein!

Siehe auch:

  1. Einige prosa

  2. Präsentation

  3. Einige Erfahrung mit Wicket und Scala

  4. announcments mit Bezug auf das Projekt für der Klebstoff Code Scala zu binden Schließungen zu Modellen

Spielen ist ziemlich süß.

Es ist jetzt serienreif. Es enthält:. Einen kühlen Template Framework, automatisches Nachladen von Quelldateien auf Safe, zusammensetzbare Action-System, Akka awesomeness, etc

Der Teil der Typesafe Stack-.

es für zwei Projekte verwendet haben, kann ich sagen, dass es ziemlich reibungslos funktioniert und es sollte etwas zu prüfen, beim nächsten Mal Sie neue Web-Frameworks zu lernen suchen.

Ich neige dazu, JAX-RS zu verwenden, mit Jersey (Sie schöne Ressource Bohnen in Scala, Java schreiben oder Groovy) Restul Web-Anwendungen zu schreiben. Dann benutze ich Scalate für die Wiedergabe der Ansichten einer der verschiedenen Template Sprachen ( JADE , Scaml , Ssp (Scala Server Seiten), Schnurrbart usw.).

Es gibt einen neuen Web-Framework namens Scala Webseiten . Von der Website:

Zielgruppe

Der Scala Seiten Web-Framework ist wahrscheinlich Web-Programmierer ansprechen, die von einem Java-Hintergrund kommen und wollen Web-Anwendungen in Scala programmieren. Der Schwerpunkt liegt auf OOP statt der funktionalen Programmierung.

Merkmale und Funktionen

  • Haftet auf Model-View-Controller-Paradigma
  • Text-basierte Template-Engine
  • Einfache Syntax: $variable und <?scp-instruction?>
  • Encoding / content Erkennung, können internationale Textcodierungen behandeln
  • Snippets statt benutzerdefinierten Tags
  • URL Rewriting

Prikrutil, ich denke, dass wir auf dem selben Boot. Ich komme auch zu Scala von Erlang. Ich mag Stickstoff viel so ich erstellt eine Scala Web-Framework von ihr inspiriert entschieden.

Hier finden Sie aktuelle Xitrum . Seine doc recht umfangreich ist. Von README:

Xitrum ist ein asynchrone und gruppierte Scala Web-Framework und Web-Server auf der Netty und Hazelcast:

  • Es füllt die Lücke zwischen Scalatra und Aufzug: mächtiger als Scalatra und einfacher zu bedienen als Aufzug. Sie können sowohl RESTful APIs und Postbacks leicht erstellen. Xitrum ist Controller-first wie Scalatra, nicht anzeigen-first wie Aufzug.
  • Anmerkung ist für die URL-Routen, im Geist des JAX-RS verwendet. Sie müssen nicht alle Routen an einem einzigen Ort erklären.
  • Typesafe, im Geist der Scala.
  • Async, im Geiste der Netty.
  • Sitzungen können in Cookies oder gruppierten Hazelcast gespeichert werden.
  • jQuery Validation ist für die Browser-Seite und Server-seitige Validierung integriert. i18n GNU gettext verwendet, was bedeutet, im Gegensatz zu den meisten anderen Lösungen, sowohl Singular und Plural Formen werden unterstützt.
  • Conditional GET ETag.

Hazelcast gibt auch:

  • In-Prozess und Clustered Cache, Sie benötigen keine separaten Cache-Server.
  • In-Prozess und gruppierte Comet, können Sie Comet auf mehr Web-Server skaliert werden.

Folgen Sie der Tutorial für einen schnellen Start.

Es gibt auch Pinky, die auf bitbucket werden verwendet bekam aber ein Transfer an Github .

By the way, Github ist ein großartiger Ort für Scala-Projekte zu suchen, da es eine Menge gibt es gesetzt wird.

Ich möchte meine eigenen Bemühungen zu dieser Liste hinzuzufügen. Sie können hier weitere Informationen finden:

brzy Rahmen

Es ist in der frühen Entwicklung und ich arbeite immer noch daran zu aggressiv. Es beinhaltet Funktionen wie:

  • Ein Fokus auf Einfachheit und Erweiterbarkeit.
  • Integrierte Build-Tool.
  • Modularer Aufbau; einige erste Module beinhaltet die Unterstützung für Scalate, E-Mail, jms, JPA, squeryl, cassandra, cron Dienste und vieles mehr.
  • Einfacher RESTful Controller und Aktionen.

Jedwedes Feedback wird sehr geschätzt.

UPDATE: 2011-09-078, ich habe gerade gebucht ein großes Update auf die Version 0.9.1. Es gibt weitere Informationen unter http://brzy.org , die einen Screen enthält.

Sowohl Süß und Slinky scheinen für etwa ein Jahr zu unmaintanted. Süße Maven Repo sweetsoftwaredesign.com ist tot, so gibt es auch keine Möglichkeit, Abhängigkeiten zum Download bereit.

. Hinweis: Spiffy ist veraltet

<< em> Stecker >

Spiffy :

  • wird in Scala geschrieben
  • verwendet die fantastische Akka Bibliothek und Akteure zu skalieren
  • verwendet Servlet API 3.0 für asynchrone Anforderung bearbeitet
  • modular ist (Austausch von Komponenten ist gerade nach vorne)
  • DSLs zur Senkung des Code verwendet, wo Sie es nicht wollen
  • unterstützt Scalate und Freemarker für Templating

Spiffy ist ein Web-Framework Scala, Akka (a Scala Schauspieler Implementierung) und die Java Servlet 3.0 API. Es nutzt die die Asynchron-Schnittstelle und zielt darauf ab, eine massiv parallele und skalierbare Umgebung für Web-Anwendungen. Spiffy der verschiedenen Komponenten basieren alle auf der Idee, dass sie benötigen, unabhängig minimalistisch-Module zu sein, die sehr schnell kleine Mengen an Arbeit zu tun und die Anforderung an die nächste Komponente in der Pipeline Hand ab. Nachdem die letzte Komponente, die die Anforderung erfolgt die Verarbeitung die Servlet-Container signalisiert, indem die Anforderung „abgeschlossen“ und es zurück an den Client gesendet wird.

https://github.com/mardambey/spiffy

<< em> / Stecker >

Sie könnten auch versuchen, Kontext . Es wurde entwickelt, um einen Java-Framework sein, aber ich habe es erfolgreich mit Scala auch ohne Schwierigkeiten verwendet. Es ist ein Bestandteil basiertes Framework und hat ähnliche Eigenschaften wie Aufzug oder Tapisserie.

Ich habe auf Ihre Frage ein paar Wochen zurück stolperte, aber seitdem habe auch gelernt, über Circumflex . Dies ist ein schöner, minimal-Framework, das daher leicht zu erlernen ist, und es hat ziemlich gute Dokumentation zur Verfügung.

Neben es ist minimal-ness, es behauptet auch gut mit anderen Bibliotheken zu arbeiten und können Sie Ihre eigene Implementierung der Dinge verwenden, wenn Sie es brauchen.

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