Właśnie zacząłem uczyć się Scali, a pierwszą rzeczą, którą zamierzam wdrożyć, jest niewielka aplikacja internetowa. Używam Erlanga przez ostatni rok do wdrażania oprogramowania po stronie serwera, ale nigdy wcześniej nie pisałem aplikacji internetowych. To będzie wspaniałe doświadczenie.
Czy istnieją ramy dla Scali oprócz Lift ?
Nie zrozum mnie źle, Lift wygląda niesamowicie. Chcę tylko wiedzieć, ile jest ram, aby móc następnie wybierać między nimi. Zawsze dobrze jest mieć wybór, ale jedyną rzeczą, jaką znalazłem, był Lift.
scala
frameworks
web-frameworks
lift
Prikrutil
źródło
źródło
Napisałem o tym post na blogu .
Podsumowując, niektóre z opcji to:
W końcu odkryłem, że żaden z nich nie był dla mnie odpowiedni, i opracowałem swój własny „framework”. (To nie jest jeszcze open-source).
źródło
Lubię Lift ;-)
Play jest moim drugim wyborem dla platform internetowych przyjaznych Scali.
Furtka to mój trzeci wybór.
źródło
Poniżej znajduje się zrzut ram. To nie znaczy, że faktycznie ich użyłem:
Coeus . Tradycyjny framework internetowy MVC dla Scali.
Niefiltrowane . Zestaw narzędzi do obsługi żądań HTTP w Scali.
Uniscala Granite .
Gardel
Mondo
Amore . Port Scala w Ruby Web Framework Sinatra
Skaluje XML . Elastyczne podejście do obsługi XML i uproszczony sposób interakcji z XML.
Pas . Interfejs typu rack dla aplikacji internetowych zbudowany na Scalaz-HTTP
Frank . Aplikacja internetowa DSL zbudowana na Scalaz / Belt
MixedBits . Ramy dla języka programowania Scala, które pomagają w tworzeniu stron internetowych
Circumflex . Łączy kilka niezależnych projektów open source do tworzenia aplikacji przy użyciu języka programowania Scala.
Scala Webmachine . Port of the Basho's webmachine in Scala, oparty na REST system do tworzenia aplikacji internetowych
Bowler . Oszczędna, gotowa na wiele kanałów platforma internetowa Scala
źródło
Wypróbuj Play Framework , który obsługuje również Scalę.
źródło
Jednym z bardzo interesujących frameworków internetowych z komercyjnym wdrożeniem jest Scalatra , inspirowana Sinatrą Ruby. Oto artykuł InfoQ temat w .
źródło
Uważam, że Unfiltered jest bardzo interesujący https://github.com/unfiltered/unfiltered .
Jest wspomniany na liście IttayD.
Oto prezentacja na ten temat http://unfiltered.lessis.me/#0 oraz wideo http://code.technically.us/post/942531598/doug-tangren-presents-the-unfiltered-toolkit-for
Również tutaj jest artykuł z dodatkowymi informacjami http://code.technically.us/post/998251172/holding-the-parameter
źródło
Należy zauważyć, że istnieje również duże zainteresowanie Wicket i Scala . Furtka zaskakująco dobrze pasuje do Scali. Jeśli chcesz skorzystać z bardzo dojrzałego projektu Wicket i jego ekosystemu (rozszerzeń) oraz zwięzłej składni i przewagi produkcyjnej Scali, ten może być dla Ciebie!
Zobacz też:
Trochę prosa
Prezentacja
Trochę doświadczenia z Wicket i Scalą
Ogłoszenia dotyczące projektu kodu kleju do wiązania zamknięć Scala z modelami
źródło
Gra jest całkiem słodka.
Teraz jest gotowy do produkcji. Zawiera: fajne środowisko szablonów, automatyczne ponowne ładowanie plików źródłowych po bezpiecznym, kompozycyjny system akcji, akka niesamowitość itp.
Jest to część stosu Typesafe .
Korzystając z niego w dwóch projektach, mogę powiedzieć, że działa całkiem sprawnie i powinno być czymś do rozważenia następnym razem, gdy chcesz nauczyć się nowych frameworków internetowych.
źródło
Zwykle używam JAX-RS przy użyciu Jersey (możesz pisać fajne zasoby w Scali, Javie lub Groovy) do pisania aplikacji internetowych RESTul. Następnie używam Scalate do renderowania widoków przy użyciu jednego z różnych języków szablonów ( JADE , Scaml , Ssp (strony serwera Scala), wąsy itp.).
źródło
Istnieje nowa platforma internetowa, zwana stronami Scala . Ze strony:
Grupa docelowa
Schemat stron internetowych Scala Pages prawdopodobnie spodoba się programistom, którzy pochodzą z języka Java i chcą programować aplikacje sieciowe w Scali. Nacisk kładziony jest raczej na OOP niż na programowanie funkcjonalne.
Charakterystyka i funkcje
$variable
i<?scp-instruction?>
źródło
Prikrutil, myślę, że jesteśmy na tej samej łodzi. Ja również przyjeżdżam do Scali z Erlangu. Lubię azot dlatego postanowiłem stworzyć inspirowany nim framework internetowy Scala.
Spójrz na Xitrum . Jego dokument jest dość obszerny. Z README:
Xitrum to asynchroniczna i klastrowa platforma internetowa Scala oraz serwer sieciowy na platformie Netty i Hazelcast:
Hazelcast daje również:
Postępuj zgodnie z samouczkiem, aby szybko rozpocząć.
źródło
Jest też Pinky, który kiedyś grał na bitbucket, ale został przeniesiony do github .
Nawiasem mówiąc, github to świetne miejsce do wyszukiwania projektów Scala, ponieważ jest tam wiele rzeczy.
źródło
Chciałbym dodać własne wysiłki do tej listy. Więcej informacji znajdziesz tutaj:
ramy brzy
Jest na wczesnym etapie rozwoju i nadal pracuję nad tym agresywnie. Zawiera funkcje takie jak:
Wszelkie opinie są mile widziane.
AKTUALIZACJA: 2011-09-078, właśnie opublikowałem ważną aktualizację do wersji 0.9.1. Więcej informacji na stronie http://brzy.org, która zawiera screencast.
źródło
Zarówno Sweet, jak i Slinky wydają się nieopracowani przez około rok. Sweetwareredesign.com repo Sweet Maven nie żyje, więc nie ma nawet sposobu na pobranie zależności.
źródło
Uwaga: Spiffy jest przestarzały.
< wtyczka >
Spiffy :
Spiffy to framework internetowy wykorzystujący Scalę, Akkę (implementację aktora Scali) oraz API Java Servlet 3.0. Wykorzystuje interfejs asynchroniczny i ma na celu zapewnienie masowo równoległego i skalowalnego środowiska dla aplikacji internetowych. Różne komponenty Spiffy oparte są na założeniu, że muszą to być niezależne, minimalistyczne moduły, które wykonują niewielkie ilości pracy bardzo szybko i przekazują żądanie do następnego komponentu w potoku. Po zakończeniu przetwarzania ostatniego komponentu żądanie sygnalizuje kontenerowi serwletu poprzez „uzupełnienie” żądania i odesłanie go z powrotem do klienta.
https://github.com/mardambey/spiffy
< / plug >
źródło
Możesz także wypróbować kontekst . Został zaprojektowany jako środowisko Java, ale z powodzeniem korzystałem z niego również w Scali. Jest to struktura oparta na komponentach i ma podobne właściwości jak Lift lub Tapestry.
źródło
Natknąłem się na twoje pytanie kilka tygodni temu, ale od tego czasu dowiedziałem się również o Circumflex . Jest to ładna, minimalna struktura, która jest łatwa do nauczenia i ma również całkiem dobrą dokumentację.
Oprócz swojej minimalności, twierdzi również, że dobrze współpracuje z innymi bibliotekami i pozwala korzystać z własnej implementacji rzeczy, gdy jej potrzebujesz.
źródło