sroebuck/ScalaWebFrameworkReview.md

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

  1. gyors kezdéshez.

Cons

  1. 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.
  2. kényelmetlenül összpontosít azokra a funkciókra, amelyek szép demókat készítenek!
  3. 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

  1. alkalmas Java programozók számára, akik nem akarnak szórakozni a HTML-vel és a JavaScript-tel.
  2. elveszi a felelősséget a webes ügyfelek közötti különbségek átadásáért.

Cons

  1. elveszi az irányítást a finomhangolás a front end HTML és CSS.
  2. nagyon ismeretlennek tűnhet valaki számára, aki nem ismeri a Java GUI alkalmazásfejlesztést.
  3. 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.
  • A

  • 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.

Pros

  1. úgy tűnik, hogy nagyon világos, hogy ez mit csinál és hogyan.
  2. úgy tűnik, hogy jól illeszkedik minden kombinált Scala projekthez, DSL-ek vagy implikációk nélkül.

hátrányok

  1. 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

  1. gyakorlatilag mindent megtehet, amire szüksége van.
  2. A

  3. alapértelmezés szerint sok erős biztonsági funkcióval rendelkezik.
  4. különös hangsúlyt fektet az AJAX és a Comet kódolás simítására.

hátrányok

  1. mindig úgy tűnik, hogy új funkciókat ad hozzá, de ritkán dobja el a régieket.
  2. a dokumentáció töredezett, és nincs összhangban a frissítésekkel.
  3. 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.

Keménykalap

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.