Graal - Sollevamento:Quale framework è più adatto per quale tipo di applicazioni?[Chiuso]

StackOverflow https://stackoverflow.com/questions/1097252

  •  11-09-2019
  •  | 
  •  

Domanda

Ho usato Grails negli ultimi mesi e mi piace davvero, specialmente GORM.Tuttavia, mi sto interessando all'ascensore di Scala.Pertanto, vorrei sapere la tua opinione su quale tipo di app Web è più adatta per quale di questi due framework o è solo una questione di gusti, quale framework utilizzare?

Infine, quale di questi framework ritieni sarà più utilizzato in futuro?Ho la sensazione che Grails sia lontano dal raggiungere una massa critica e rimanga ancora molto oscuro (negli ultimi mesi ho avuto l'opportunità di lavorare con aziende di medie dimensioni e startup IT lavorando principalmente con lo stack JVM e solo una persona lo sapeva e usato Grails) e non sono nemmeno sicuro che possa diventare il "RoR" del mondo Java (riporta infatti un calo di crescita negli ultimi mesi anche se altri framework hanno un tasso di crescita positivo).E adoro Groovy, è davvero facile da imparare ma ho notato quanto può essere lento per alcune attività.

D'altra parte, Scala sembra essere più popolare (Tiobe Index) e il fatto che Twitter lo utilizzi ora gli ha dato ancora più presenza nella blogosfera con molti amanti e odiatori che fanno scalpore.È famoso per essere veloce e scalabile.Tuttavia, il linguaggio sembra un po' difficile da capire e da imparare per molti sviluppatori (quindi forse non otterrà mai lo status di mainstream).L'incremento è poco conosciuto e ho letto alcuni rapporti secondo cui è più adatto per app di piccole dimensioni (meno di 20 classi di dominio).

Considerando il numero di libri pubblicati, Groovy-Grails domina in questo momento, ma molti editori hanno libri di Scala in lavorazione, quindi penso che questo vantaggio non durerà a lungo.

Infine, abbiamo il problema che sia i linguaggi che i framework hanno ancora uno scarso supporto IDE (sta migliorando di giorno in giorno ma è lontano da ciò che i negozi Java si aspettano che sia produttivo).

Non voglio iniziare una guerra di fiamma, ma sarei molto interessato a sentire le opinioni degli altri utenti.

È stato utile?

Soluzione

Grails è una bella idea (ma solo "rubato" da rotaie), ma il fatto che i ragazzi groove non sono interessati a ottenere il supporto di Eclipse corretta ostacola è successo molto. Ho anche visto domande Eclipse non essere risposto a tutti sulle liste Grails.

Sono d'accordo con Tim che Netbeans 6.7, infine, offre la prima metà strada utilizzabile supporto Open Source IDE per groove / graal - e alla fine, SpringIDE conterrà anche un migliore supporto Groovy / Grails

.

Il motivo molte persone amano Java Java è la tipizzazione statica, che consente strumenti per aiutare molto con molte cose. Questo è perduto con un linguaggio il groove. Sì, potrei scrivere ogni veramente importante pezzo di codice in Java e ancora usare Grails - ma poi, perché dovrei, solo per risparmiare un po 'di righe di codice colla, farlo invece di imparare ad usare un framework Java altamente efficace

Per finire: non ho ancora guardare alla Scala, ma costruito alcune semplici applicazioni con graal - e tendono a tornare a java, anche reimplementare ogni applicazione che ha bisogno di un ulteriore sviluppo in un framework Java pianura - credo wicket e Seam.

Sarò anche guardare Scala / ascensore, ho sentito molte cose positive!

A proposito: mi piacerebbe confrontare le comunità e guardo mailing list - come molti peope sono lì, ottengono buone risposte sulle loro domande importanti

?

Grails sembra avere un tasso di non-risposta da quasi il 50%, che mi sembra male.

Altri suggerimenti

La risposta accettata qui ha una visione davvero ignorante di Groovy: è un linguaggio moderno e dinamico (dinamico vs.statico è un dibattito enorme in sé e per sé, e non particolarmente rilevante qui).Questo è previsto dalla progettazione e quindi non è uno svantaggio, ma solo una differenza.Ha molte funzionalità del linguaggio moderno che Java non ha come chiusure, regexp nativa, iterazione polimorfica, alcune tipizzazioni statiche opzionali (questione di dibattito, ma guarda anche groovy++), sintassi nativa per elenchi e mappe, ecc. puoi vedere un confronto qui http://groovy.codehaus.org/Differences+from+Java

Per affrontare la vera questione Graal vs.Sollevamento, direi Grails senza dubbio.Ha SpringSource dietro e basta guardare la pagina dei plugin http://www.grails.org/plugin/category/all - Non riesco nemmeno a trovare quali plugin o equivalenti siano disponibili per Lift.Grails è inoltre al top delle più recenti tecnologie cloud-friendly, con funzionalità come il supporto nativo della messaggistica RabbitMQ e il supporto GORM chiavi in ​​mano per MongoDB e Redis.

Supporto Grails in NetBeans 6.7 è veramente buono, così come il supporto idea IntelliJ a Maia.

Eclipse è ancora piuttosto sucky.

Ho guardato ascensore, ma era preoccupato per le risorse disponibili ora; questo cambierà in futuro, ma i miei progetti non può aspettare.

Vorrei rispondere specificamente alla domanda "per quale tipo di applicazioni". La differenza principale tra le filosofie di Grails Ascensore e sembra essere che Grails impone MVC mentre Ascensore sembra essere più liberale vale a dire che non applica MVC, ma fornisce abbastanza viali di usare MVC, se si desidera.

Anche Sollevare sembra essere eccellente per 'Single-pagina Applications', soprattutto se avete bisogno di implementare una funzionalità del server-push utilizzando la tecnologia come la cometa (che ovviamente non significa che non è un bene per gli altri tipi di applicazioni). D'altra parte, Grails sembra essere migliore per le applicazioni della 'enterprisy', soprattutto se si ha già familiarità con la Primavera e Hibernate, ma desidera la vostra applicazione per essere molto più conciso (con convenzione sulla configurazione) di quello che un'applicazione non Grails sarebbe prevede di utilizzare queste tecnologie.


Riferimenti:

  1. basta sollevare, il capitolo 13
  2. pagina singola Applicazione

Avviso:
Ho appena iniziato ad esplorare sollevamento e costruito alcune applicazioni semplici che utilizzano Grails.

Con tutti i miglioramenti delle prestazioni e gli avanzamenti di Grails2.0, con grande supporto fornito da IntelliJ 11 per il quadro, la capacità di plug-in praticamente qualsiasi tecnologia web avanzata nelle vostre graal app, e sì -. VMware peso dietro di esso - io davvero non capisco come sollevamento potrebbe essere un vantaggio o una buona scelta. Basta pensare di utilizzare due lingue diverse nella stessa applicazione, la necessità di doppia esperienza nella squadra, ecc.

La domanda iniziale è stata pubblicata come 2+ anni fa e credo che il tempo ha dimostrato da che parte è la scelta della comunità dev;)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top