Ruby on Rails / Grails sono i framework più veloci per ottenere siti velocemente?


10

Sto pensando di utilizzare Grails per un nuovo sito Web, ma sono aperto ad altri / nuovi linguaggi e framework di programmazione. Ho fatto lo sviluppo usando J2EE / JSF2, ASP.NET e PHP. Grails o Ruby on Rails è praticamente il modo migliore per avviare rapidamente la funzionalità?

Alcuni pensieri iniziali:

  • DJango sembra simile a RoR / Grails e lo prenderei in considerazione
  • GWT è un concetto interessante ma non sembra che i tempi di risposta siano altrettanto rapidi

Grazie, Jon


2
Se hai fatto lo sviluppo con J2EE / JSF2, ASP.NET e PHP, allora sarai in grado di rendere un sito attivo e in esecuzione più veloce con uno di quelli che faresti con Grails, Ruby on Rails o qualsiasi altro framework / lingua che non hai mai usato prima.
Carson63000,

2
Il modo più veloce per far funzionare un sito Web è installare wordpress o mediawiki. Questo non si ridimensiona affatto se è necessario aggiungere funzionalità, ma ci sono molti siti che saranno ben serviti da una soluzione standard + plug-in.
Sean McMillan,

Risposte:


13

Come per tutte le domande di questo tipo, la risposta è "dipende". I fattori da considerare includono quanto ti senti a tuo agio con il linguaggio / quadro e quali caratteristiche richiede il progetto. Detto questo, ho creato siti utilizzando una serie di framework, ognuno con i suoi punti di forza e di debolezza:

Grails

Se avessi bisogno di creare un sito rapidamente per qualsiasi cosa professionale , Grails sarebbe probabilmente la mia prima scelta. GORM è di gran lunga l'ORM più semplice e intuitivo che ho provato, il paradigma MVC è molto ben eseguito, c'è 0 configurazione per iniziare la codifica (nessuna preoccupazione per URL, patch DB, niente), iterazione molto rapida (basta aggiornare pagina), perfetta integrazione Java (una buona cosa nel mondo degli affari), e alcuni meravigliosi plugin (ad esempio ricercabile è una cosa di bellezza). L'aspetto negativo più grande è che l'hosting può essere difficile da trovare (e costoso).

Ruby on Rails

La mia esperienza con RoR è molto simile a quella di Grails: MVC ben eseguita. Sul lato positivo, ha una comunità più grande, quindi le risorse online (documentazione, FAQ, esempi di codice, ecc.) Sono molto abbondanti, ci sono tonnellate di plugin, Ruby è un po 'più flessibile / espressivo / "funky", ed è molto più facile da trovare hosting (specialmente per progetti personali); sul lato negativo, la gestione / installazione delle dipendenze fa schifo (ho usato RubyGems su Windows, Ubuntu, Fedora e OSX e ho riscontrato problemi non banali su ognuno), c'è leggermente più configurazione / sovraccarico di Grails (in particolare, gestire rotte.rb e tonnellate di file di migrazione db) e, a quanto pare, il RoR presenta alcuni seri problemi di scalabilità.

PHP (incluso il framework CakePHP)

Se ho bisogno di hackerare rapidamente qualcosa o costruire un sito per usi personali , probabilmente andrei con PHP. PHP è di gran lunga la lingua più semplice da imparare e distribuire: scarica uno dei convenienti pacchetti LAMP disponibili, fai clic un paio di volte e inizia a hackerare. La community è più grande di quella del RoR, quindi la documentazione è abbondante e ci sono innumerevoli plugin (facilmente "installati" semplicemente inserendo il file php e aggiornando la pagina). La lingua è semplice da imparare, ma alcune cose in PHP sono semplicemente strane e ci vuole molta disciplina per evitare brutti codici. Il framework CakePHP applica un bel paradigma MVC per aiutare a mantenere le cose ordinate, e per la maggior parte è alla pari con RoR, anche se personalmente l'ho trovato leggermente più poco intuitivo.

Java (servlet, JSP, JSTL, puntoni, Velocity)

Ho creato molti siti utilizzando le tecnologie servlet Java e posso onestamente dire che non c'è motivo di sceglierli per un nuovo sito al giorno d'oggi. Hanno una curva di apprendimento ripida, tonnellate di configurazione con cui combattere (inferno XML), iterazione lenta a causa della necessità di ridistribuire tutto il materiale (a meno che non si usi JRebel), codice dettagliato e nessun "omaggio" in termini di funzionalità. Ho giocato con Play! Framework e Spring Roo un po 'ed entrambi stanno facendo cose molto interessanti con codice Java più o meno "puro" e vale la pena approfondire ulteriormente.


4

Quando uso CakePHP, posso girare un'app Web più velocemente di ... un ... ragazzo davvero veloce. Comunque è veloce. Rilascia i file nella cartella principale del Web, configura due file (circa tre righe da modificare in ciascuno). E inizia a scrivere codice.

Poiché favorisce la convenzione sulla configurazione, ci vorrà un po 'di esperienza per garantire che sia configurata in modo ottimale, ma garantisco che, con pari livelli di esperienza, CakePHP mette in mostra l'implementazione più rapida da qualsiasi framework, probabilmente periodo .

Detto questo, il progetto originale CakePHP era un clone di rotaie PHP (non lo è più), quindi sono sicuro che anche le rotaie possano essere implementate rapidamente.


Grazie per la comprensione. Ho dato un'occhiata a CakePHP in passato e sembra usare concetti simili a RoR.
Jon Onstott,

Accetto +1 per avermi fatto conoscere CakePHP.
Jeremy,

CakePHP roxxors.
Stephen,

3

Lavoro con ASP.NET MVC framework da un po 'di tempo e l'ho trovato un framework davvero dannatamente buono. Estremamente facile da usare, soprattutto se hai familiarità con .NET. Il framework è cresciuto rapidamente dalla sua uscita nel 2009, l'anteprima di MVC 3 è stata recentemente rilasciata al pubblico. Penso che MS stia facendo tutte le cose giuste con il framework MVC ASP.NET.


1
MVC è fantastico, e se leggi i miei post SO sai che sono un fan, ma subito pronto per l'uso non è neanche lontanamente veloce come Rails per far decollare un sito basato su DB. Penso che MVC possa essere una scelta migliore rispetto a Rails per il lungo raggio (a seconda delle tue esigenze), ma tieni conto di ciò che è dovuto: Rails offre un'esperienza fuori dagli schemi migliore.
Craig Stuntz,

@Craig: per puro interesse e desiderio di imparare qualcosa di nuovo, sono tentato di scegliere un piccolo progetto e farlo funzionare in MVC e Rails ora per vedere come si confrontano.
ysolik,

Leggere questo nel 2012 mi ha fatto davvero venire una lacrima agli occhi. Ricordo di aver iniziato ad usare asp.net mvc quando è appena uscito e vederlo così robusto in questi giorni è semplicemente fantastico. Mi ha reso un fan dello sviluppo web e mi ha permesso di imparare facilmente CakePHP e Ruby on Rails.
sergserg,

1

Non ho usato tutto, ma Rails è davvero dannatamente veloce. Mi aspetto che Grails lo sia anche perché incarna piuttosto bene la filosofia DRY. Non so abbastanza su altri framework linguistici dinamici da dire.

Anche con buone strategie di generazione del codice, i miei ASP.NET (moduli web) non sembrano altrettanto efficienti.


1

Mi sono dilettato in Django e Rails e ho trovato Rails per i miei gusti. Detto questo, preferisco ASP.Net MVC 2 molto meglio di Rails. Sono molto più veloce in MVC (o anche solo in moduli Web) rispetto a Rails semplicemente perché la mia mente "funziona meglio" con C #.

Per me dipende da ciò che sai e ciò che ti piace. Ho sentito da molte persone che Ruby è divertente, non per me non lo è. C # è divertente! Haskell è divertente! Se non ti piace la lingua / il framework, non sarai veloce come un framework "più lento" che ti piace.


Ho scoperto che Django impiega un po 'di tempo a configurare soprattutto quando devi fare confusione con Apache
Utente
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.