Overview
ezek a keretrendszerek általában az alábbiak közül egyet vagy többet lefedő funkciókat biztosítanak:
-
útválasztás: a HTTP-kérések fogadásának mechanizmusa, amely valamilyen kódra irányítja őket, amely kezeli őket, és választ ad vissza.
-
Sablonozás: egy vagy több szintaxis weboldalak sablonozásához, hogy a statikus és dinamikus tartalom meglehetősen egyszerű módon leírható legyen, és a kód beágyazható vagy valamilyen módon társítható a sablonhoz az üres helyek kitöltése érdekében.
-
Perzisztencia: egy mechanizmus tárolására egy visszakereső tárgyakat a boltban.
egyesek azonban jóval túlmutatnak a webkomponensek összeragasztásán, és olyan kereteket biztosítanak, amelyek saját HTML-t, JavaScript-et stb. a kezelőfelületen próbálja meg elrejteni a kliens oldali kód és a szerver oldali kód közötti elválasztást. A rövidség kedvéért ezeket RichInternet Applications (Ria) néven említem, mivel a GWT és a Vaadin egyaránt ilyennek nevezik magukat, és biztosan ebbe a kategóriába tartoznak.
a különböző webes alkalmazások keretrendszereinek fő hivatkozása (a Scala-ra való hivatkozás nélkül!) lehet befound Wikipedia itt: Web Application Frameworks
Play Framework
- Java-ban írt Scala specifikus támogatást.
- az egyszerűség hangsúlyozása.
- parancssori eszköz, amely automatikusan létrehoz egy kezdő sablont.
- menet közben állítja össze a tartalmat anélkül, hogy további build eszközre lenne szükség.a
- a JPA-t és a Hibernate-et használja alapul szolgáló perzisztencia keretrendszerként.
előnyök
- gyors kezdéshez.
Cons
- automatikus összeállítás menet közben azt jelenti, hogy laza néhány ellenőrzése segítségével a ownstandard build eszköz.
- kényelmetlenül összpontosít azokra a funkciókra, amelyek szép demókat készítenek!
- beépített összeállítás is csinál néhány automatikus kódgenerálás Java bab, ami azt jelenti, hogy a kódot lehet futtatni, de nem fordít egy normál fordító.
GWT (Google Web Toolkit)
- Java nyelven írt, speciális Scala támogatás nélkül.
- a legtöbb megjegyzés egyformán alkalmazható a GWT-re, amelyen alapul.
Vaadin
a Vaadin kód kissé hasonlít a Swing kódra. Ön hatékonyan ír egy interaktív Javaapplication, amely ezután fut, mint egy JavaScript alkalmazás egy webes kliens. Funkcionális szempontból ez olyan érzés, mintha a HTML és a CSS hagyományosan deklaratív stílusú világát vennénk, és nagyon imperatív stílussá változtatnánk. Röviden, úgy érzi, mint egy visszafelé megközelítés megoldásA probléma interface front end és back end programozás.
- Java nyelven íródott, speciális Scala támogatás nélkül.
- gazdag internetes alkalmazás (RIA).
- a GWT (Google Web Toolkit) alapján.
- az összes kódolás szerver oldalon történik, a Vaadin elvégzi a HTML, JavaScript stb.
- Vaadin összehasonlítása más ‘versengő RIA keretrendszerekkel’.Beleértve Flex, GWT, ICE arcok, JQuery és Wicket.
- jelenleg a következő felhasználók használják:
- TNT
- Devox
- Logica
Pros
- alkalmas Java programozók számára, akik nem akarnak szórakozni a HTML-vel és a JavaScript-tel.
- elveszi a felelősséget a webes ügyfelek közötti különbségek átadásáért.
Cons
- elveszi az irányítást a finomhangolás a front end HTML és CSS.
- nagyon ismeretlennek tűnhet valaki számára, aki nem ismeri a Java GUI alkalmazásfejlesztést.
- hajlamos arra, hogy készítsen webes alkalmazások nehézsúlyú front end JavaScript.
Scalatra
úgy tűnik, hogy a Scalatra alapvetően a kérelem-útválasztási motor keretrendszerének egyik formája. Ez egy egyszerű módja a feldolgozás bejövő kéréseket, és routing azokat a kódot, amely teszi a választ. Bármely másfunkcionalitás lehet írni magad, vagy hozzá, mint egy opcionális plugin.
- írt Scala.
- ihlette Sinatra.
- SBT-vel épít.
- mólón fut.
- beépített tesztelési támogatással rendelkezik.
- opcionális támogatása:
- Scalate templating engine.
- Commons FileUpload fájlfeltöltési támogatás.
- jelenleg a következő használja:
- LinkedIn Signal backend.
A
Pros
- úgy tűnik, hogy nagyon világos, hogy ez mit csinál és hogyan.
- úgy tűnik, hogy jól illeszkedik minden kombinált Scala projekthez, DSL-ek vagy implikációk nélkül.
hátrányok
- ha átfogó eszközt szeretne, ez nem egy.
Scalate
Scala sablonmotor.
- írt Scala.
- úgy tűnik, hogy épít a Maven vagy sbt.
- támogató sablonok bajusz, Scaml (Scala Markup Language) éssp (Scala Server Pages).
Lift
Web keretrendszer.
- írt Scala.
- beépített sbt (korábban Maven).
- a gazdag internetes alkalmazások számos jellemzőjét mutatja, miközben továbbra is hozzáférést biztosít a HTML, JavaScript stb. Ez a szabadság bizonyos fokú homályosságot és feszültséget biztosít annak megértésében, hogy mit próbál tenni,és hogyan csinálod.
- sablont, útválasztást, biztonságot, perzisztencia keretet biztosít, valóban mindent!
előnyök
- gyakorlatilag mindent megtehet, amire szüksége van.
- alapértelmezés szerint sok erős biztonsági funkcióval rendelkezik.
- különös hangsúlyt fektet az AJAX és a Comet kódolás simítására.
A
hátrányok
- mindig úgy tűnik, hogy új funkciókat ad hozzá, de ritkán dobja el a régieket.
- a dokumentáció töredezett, és nincs összhangban a frissítésekkel.
- sokféle módon lehet ugyanazt csinálni, ezért nehéz más emberek kódját használni, mint az egész hivatkozást annak ellenőrzésére, hogy helyesen cselekszel-e.