Sroebuck/ScalaWebFrameworkReview. md

Oversikt

generelt gir disse rammene funksjonalitet som dekker ett eller flere av følgende:

  • Ruting: en mekanisme for å ta HTTP-forespørsler og ruting dem til en kode som håndterer dem og returnerer et svar.

  • Templating: En eller flere syntakser for templering av nettsider slik at statisk og dynamiskinnhold kan beskrives på en rimelig enkel måte, og koden kan bygges inn eller på en eller annen måteassosiert med malen for å fylle ut blankene.

  • Persistens: en mekanisme for lagring av a hente objekter fra en butikk.

noen går imidlertid langt utover liming av webkomponentene sammen og gir rammer som genererer sin EGEN HTML,JavaScript, etc. på forsiden og prøv å skjule separasjonen mellomklient side kode og server side kode. For korthetens skyld vil jeg referere til disse Som RichInternet Applications (RIA) som GWT Og Vaadin begge refererer til seg selv som sådan og de sikkert passer inn i denne kategorien.

en viktig referanse til ulike webapplikasjonsrammer (uten referanse til Scala i det hele tatt!) kan befound På Wikipedia her: Web Application Frameworks

Play Framework

  • Skrevet I Java med Scala spesifikk støtte.
  • Vekt på enkelhet.
  • Kommandolinjeverktøy som automatisk genererer en startmal.
  • Kompilerer innhold på fly uten behov for en ekstra bygge verktøy.
  • Bruker JPA og Hibernate som den underliggende utholdenhet rammeverk.

Pros

  1. Rask å komme i gang.

Ulemper

  1. Automatisk kompilering på fluen betyr at du mister noe av kontrollen med å bruke ditt egetstandard byggverktøy.
  2. Føles ubehagelig fokusert på funksjoner som gjør for fine demoer!Innebygd kompilering gjør også noen automatisk kodegenerering Med Java-Bønner, noe som betyr at thatcode kan kjøre, men ikke kompilere med en vanlig kompilator.

GWT (Google Web Toolkit)

  • Skrevet I Java uten spesifikk Scala-støtte.
  • De Fleste kommentarene om ER like gjeldende FOR GWT som den er basert på.

Vaadin

Vaadin-koden ser litt Ut Som Svingkode. Du skriver effektivt en interaktiv Javaapplication som deretter kjøres som Et JavaScript-program i en webklient. Fra en functionalperspective, føles dette som å ta en tradisjonelt deklarativ stil verden AV HTML og CSS andturning det inn i en svært viktig stil. Kort sagt, det føles som en bakover tilnærming til å løseproblemet med grensesnitt foran og bakend programmering.

  • Skrevet I Java uten spesifikk Scala-støtte.
  • En Rik Internett-Applikasjon (RIA).
  • Basert PÅ GWT (Google Web Toolkit).
  • all koding er gjort server side, Vaadin gjør alt arbeidet med å generere HTML, JavaScript, etc.
  • Vaadins sammenligning mot andre ‘konkurrerende ria-rammer’.Inkludert Flex, GWT, IS Ansikter, JQuery Og Wicket.
  • BRUKES for tiden av:
    • TNT
    • Devox
    • Logica

Pros

  1. Egnet For Java-programmerere som ikke ønsker å rote MED HTML og JavaScript.
  2. Tar bort ansvaret for å levere forskjellene mellom webklienter.

Ulemper

  1. Tar bort din kontroll over finjustering AV front end HTML og CSS.
  2. kan virke veldig ukjent for noen som ikke er kjent Med Java GUI applikasjonsutvikling.
  3. Ansvarlig for å produsere web-applikasjoner med tung front End JavaScript.

Scalatra

Scalatra ser ut til å være en form for forespørsel ruting motor rammeverk. Det gir en enkel måte å behandle innkommende forespørsler og ruting dem til kode som gjengir svaret. Enhver otherfunctionality kan skrives selv eller legges til som et valgfritt plugin.

  • Skrevet I Scala.
  • Inspirert Av Sinatra.
  • Bygger med sbt.
  • Kjører på brygge.
  • Har noen testing støtte innebygd.
  • har valgfri støtte for:
    • Scalate templating motor.
    • Commons FileUpload filopplasting støtte.
  • brukes for tiden av:
    • LinkedIn Signal backend.

Pros

  1. Det ser ut til å være veldig klart hva dette gjør og hvordan.
  2. Det ser ut til å passe godt inn i ethvert Kombinert Scala-prosjekt uten overskudd Av Dsl-er eller implikasjoner.

Ulemper

  1. hvis du vil ha noe omfattende verktøy, er dette ikke en.

Skalere

Scala templerende motor.

  • Skrevet I Scala.
  • Ser ut til å bygge Med Maven eller sbt.
  • Støtte maler I Bart, Scaml (Scala Markup Language) ogsp (Scala Server Sider).

Løft

web rammeverk.

  • Skrevet I Scala.
  • Bygget med sbt (tidligere Med Maven).
  • Viser mange av egenskapene Til Rike Internett-Applikasjoner mens de fortsatt gir tilgang til direkte manipulering AV HTML, JavaScript, etc. Denne friheten gir en vissgrad av blurriness og spenning i å forstå hva den prøver å gjøre og hvordan du går omgjør det.
  • Gir templating, ruting, sikkerhet, utholdenhet rammeverk, faktisk alt!

Pros

  1. Kan gjøre praktisk talt alt du trenger.
  2. Har mange sterke sikkerhetsfunksjoner innebygd som standard.
  3. Har et spesielt fokus på å jevne ut kodingen AV AJAX og Comet kode.

Cons

  1. alltid synes å være å legge til nye funksjoner, men sjelden kaster noen gamle bort.
  2. Dokumentasjonen er fragmentert og ikke på linje med oppdateringene.
  3. Det er mange måter å gjøre det samme på, så det er vanskelig å bruke andres kode som over referanse for å sjekke at du gjør det rette.

Bowler

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.