2009-07-09 17 views
17

Spring roo è un nuovo framework e l'ho trovato molto interessante. Ho lavorato su applicazioni web negli ultimi 3-4 anni e ho sempre riscontrato che le JSP sono difficili da mantenere tra i team se tutti non sono sufficientemente disciplinati sulla separazione del markup e della logica serveride. Ho usato JackBe/BackBase negli ultimi progetti e mi sono piaciuti i modelli xml che funzionano come viste. Questo era molto meglio dei JSP. Ma non potevo automatizzare test sul web attraverso il selenio per il backbase.Spring roo Vs (Wicket e Spring)

Userei sicuramente Spring MVC (-view), Hibernate sul backend. Ho trovato Wicket come una buona alternativa. Hai usato il wicket insieme a Spring e qual è stata la tua esperienza?

+8

Nonostante tutto quello che ho letto su Roo, non riesco ancora a capire cosa sia * * * – skaffman

+1

Qual è la parte "vs roo" della domanda? –

+0

Robert, Sono un noob su Roo Part e non sono sicuro del fatto che avere roo come colla mi aiuterebbe oltre la semplice generazione automatica di schermi CRUD. E non ho potuto trovare più documentazione o esempi oltre a quello che vediamo sul sito di primavera e sul paio di blog –

risposta

14

Il nostro attuale progetto utilizza Spring e Wicket, abbiamo sempre utilizzato Spring ma siamo passati a Wicket un anno fa. Pochi consigli:

  • Ottieni il libro "Wicket in azione".
  • La mailing list dell'utente è molto utile.
  • Assicurati di aver compreso il modello di programmazione di Wicket, in particolare i contenuti relativi alla serializzazione della sessione (il libro non è di sufficiente aiuto in quest'area IMHO).
  • Wicket è in grado di creare pagine con stato, richiede più lavoro per creare pagine senza stato.
  • Ci sono alcuni buoni widget UI disponibili come inmethod DataGrid.
  • È facile iniettare i fagioli Spring nelle pagine o nei componenti.

Spring Roo è ancora in versione beta (1,0 M2), quindi potrebbe essere un po 'presto. Abbiamo anche considerato Tapestry 5 ma abbiamo pensato che fosse un po 'giovane un anno fa.

+0

Buoni punti! Sembra che Spring Roo sia diventato 1.0.0 dal tuo post. –

1

Dipende completamente da quali sono le vostre esigenze. Se si tratta di un sito di piccole dimensioni, i framework orientati ai componenti come GWT o Wicket sono uno in modo che siano veramente.

5

Sono stato alla conferenza SpringOne ad Amsterdam all'inizio dell'anno quando hanno annunciato Roo. La mia impressione (e quella del mio collega che era lì) era che Roo era buono se si stesse generando un'applicazione CRUD basata sul web ogni poche settimane - l'hanno lanciata come pura versione Java di Grails (che è RoR per Java).

Non sembra interessante per nessun altro, ma è solo un'opinione.

8

Spring Roo 1.0.0 (GA) è stato rilasciato, completo di circa 100 pagine di documentazione.

Se vi state chiedendo cosa sia Roo e why use it, vi consiglio di leggere lo introductory chapter della guida di riferimento. Copre questo e altro.

@Antony, GWT il supporto è una priorità fondamentale per Roo e qualcosa a cui sto attualmente lavorando. Aspettatevi di vedere qualche integrazione interessante nel prossimo futuro.

+2

In effetti ho usato ROO all'inizio del progetto in quel momento e ho continuato ad usare il mvc a molla. Mentre guardo indietro, penso; mi aveva dato un modello solido per l'intero progetto, ad esempio struttura dei file, sicurezza, dao ecc. Grazie per l'heads up –

+1

Non ho visto nulla in Roo bug tracker su GWT. Questa parte della modularità dei template arriva in 1.1? –

+1

Vedere http://jira.springframework.org/browse/ROO-760 –

0

In quanto tempo con Roo supporta GWT? Penso che l'uso di GWT di Roo sia una grande vittoria per GWT e Roo!

2

Ho visto una demo di Roo alcuni mesi fa. Assomiglia molto a Grails (un'altra tecnologia primaverile), tranne che invece di creare artefatti per il linguaggio Groovy, li si crea per Java.
Ancora applica le buone pratiche e ti fa applicare il pattern MVC in modo pulito.

Personalmente, la demo non mi ha fatto cambiare il mio preferito toolkit (Grails), ma è perché posso ottenere risultati più veloci con Groovy (l'analisi di xml ad esempio è molto più "dolorosa" in Java che in Groovy). Inoltre, con Grails posso vedere le modifiche che faccio istantaneamente senza dover ricompilare il mio intero progetto e riavviare l'applicazione ogni volta che voglio vedere i risultati. Ultimo ma non meno importante, in Grails hai un sacco di plugin per creare fantastici siti Ajax (ZK per esempio, se vuoi evitare Javascript, ma ci sono plugin per GWT, Yahoo, Dojo, ecc ...).

Quindi, se non si vuole imparare Groovy (che non è troppo difficile se si conosce già Java), Roo è la strada da percorrere per costruire progetti web pulite con tutta la potenza di Hibernate e Spring.

Spero che questo aiuta ...

+0

Quanto impegnato è SPring in Grails/Groovy. Lo chiedo perché attualmente sto usando STS che è anche dalla primavera. –

+0

Bene, l'ultima versione di STS (2.3.3.M2) mostra molto impegno (IMHO) dalla primavera. C'è una nuova prospettiva Grails che mette STS quasi allo stesso livello di IntelliJ Idea ... Include anche la possibilità di installare il supporto ROO, Groovy e Grails più recente dalla pagina delle estensioni che vedi nella pagina di avvio di STS. E, ultimo ma non meno importante, se usi Spring Integration, c'è anche una nuova scheda molto carina sui file di configurazione di Spring che ti permette di creare graficamente i tuoi diagrammi ESB. – Philippe

16

In primo luogo, Primavera Roo è uno strumento generatore di codice (simile al sistema Grails commands):

alt text http://blog.springsource.com/wp-content/uploads/2009/10/00-logo.png

In secondo luogo, le applicazioni Spring Roo attualmente utilizzano Spring Web Flow per la vista e Spring per la colla.

Quindi, mentre è possibile confrontare (Spring Web Flow + Spring) e (Wicket + Spring), la combo successiva non offre nulla paragonabile a Roo out of the box (forse AppFuse o AppFuse Light ma non hai menzionato loro e loro sono progetti di terze parti).

In altre parole, non penso che "Spring Roo vs (Wicket and Spring)" abbia senso.

+1

certamente non ha senso :) – Bozho

+0

Buona risposta. Roo è un RAD che si trova in cima a Spring e gestisce tutto il codice di caldaia. Wicket completa un ruolo simile all'MVC di Spring ma ha una natura molto diversa. – DPM

0

Roo e GWT sono disponibili today nel modulo di pre-rilascio. A mio parere, sicuramente non è pronto per il prime time.

2

Perché utilizzare Roo quando si può costruire qualcosa con GWT e finire con un risultato migliore molto più ricco e senza i vincoli di Roo e della sua architettura. Spring Web Flow è la tecnologia di ieri.