Quanto Ruby dovrei imparare prima di passare a Rails? [chiuso]

6

Solo una breve domanda ..

Non riesco mai a ottenere una risposta definitiva quando lo faccio su Google. Alcune persone dicono che puoi imparare Rails senza conoscere alcun Ruby, ma ad un certo punto ti imbatterai in un muro di mattoni e vorresti conoscere Ruby e dovrai tornare indietro per imparare ... e alcuni dicono di imparare le "basi" di Ruby prima di imparare Rails e renderà la tua vita molto più facile ..

La mia attuale conoscenza è bassa. Non sono un principiante, ma non sono neanche professionista. Ho passato il libro online Learn Python The Hard Way in circa un mese, ma mi sono fermato una volta arrivato al lato OOP di Python (conosco booleans, elif / if / else / statement, per cicli, while loop, funzioni)

Sono d'accordo con l'apprendimento delle "basi" di Ruby prima di imparare Rails, ma quali sono esattamente le "basi" di Ruby? Avrei dovuto imparare tutto il lato OOP di Ruby prima di andare su Rails? O dovrei solo imparare la sintassi di Ruby fino a dove ho imparato Python (booleans, elif / if / else / statement, per loops, while loops, funzioni) prima di andare su Rails? Grazie!

    
posta Kevin 25.07.2012 - 05:34
fonte

7 risposte

7

La maggior parte delle persone raccomanderebbe di finire di leggere un libro su Ruby prima di passare a Rails, ma se hai già una solida conoscenza dei concetti di programmazione di base da altri linguaggi (come OOP, flusso di controllo, ecc.), puoi studia Rails e prendi Ruby per strada.

La maggior parte dei libri Rails destinati ai principianti presuppongono che il lettore non abbia conoscenza in Ruby, quindi tendono ad avere un capitolo dedicato all'insegnamento della sintassi di Ruby. Il tuo chilometraggio può variare. La chiave è immergersi e vedere cosa funziona per te. Puoi studiare Rails subito e poi studiare Ruby se stai attraversando un periodo difficile o puoi iniziare con il semplice Ruby finché non ti senti abbastanza a tuo agio con Rails.

Se me lo chiedi, ti suggerisco di studiare Rails immediatamente, dal momento che la tua motivazione a studiare è comunque costruire applicazioni web. Perderai la motivazione se studi solo Ruby poiché impiega molto tempo a finire un libro e ad essere abbastanza esperto nella lingua.

    
risposta data 25.07.2012 - 06:12
fonte
4

Puoi imparare entrambi allo stesso tempo. Per imparare Ruby, dovrai scrivere il codice Ruby. Puoi anche scrivere un'applicazione Rails come qualsiasi altra cosa. Ho avuto una copia di Programming Ruby e Sviluppo web agile con Rails . Ho sfogliato Programmazione Ruby per avere un'idea della lingua, quindi ho iniziato a seguire il tutorial in AWDWR .

    
risposta data 25.07.2012 - 06:39
fonte
1

Se impari condizionali, booleani, loop e funzioni, puoi ottenere una certa quantità di cose. E probabilmente, sì, puoi fare le cose con solo quella conoscenza. Tuttavia, la maggior parte del codice che scrivi sarà molto procedurale perché non saprai nulla di diverso da quei costrutti procedurali. Se inizi a scrivere molte funzioni ricorsive, potresti dire che avresti aumentato le tue conoscenze.

Tuttavia, se vuoi veramente imparare a programmare , allora devi imparare molto di più che solo quelle cose.

    
risposta data 25.07.2012 - 07:53
fonte
1

Sono molto felice di essere passato a Ruby, Sinatra, Rake, poi a Rails.

Sinatra è un micro framework molto utile che continuerai ad usare anche dopo aver masterizzato Rails. Il Rake è un pezzo integrale di Rails e la sua comprensione prima di tuffarsi in Rails è vantaggioso.

Suggerirei un percorso simile a chiunque altro.

    
risposta data 08.09.2012 - 01:57
fonte
1

In primo luogo, un avvertimento: non esiste una risposta definitiva a questa domanda.

Rails è più di un semplice framework. È una lingua specifica per il dominio separata da Ruby, con le sue parole chiave, cultura e idiomi. Una funzione primaria di Rails DSL è quella di nascondere le cose da te. Rails gestisce l'astrazione tra un modello e il database, ad esempio, in modo da non dover scrivere un modello di accesso ai dati. In questo senso, Rails è più semplice di Ruby: se dovessi creare un'applicazione web senza Rails, avresti una enorme quantità di lavoro da fare.

D'altra parte, ogni affermazione Ruby sintatticamente corretta è un'istruzione Rails sintatticamente corretta. Quindi la logica applicativa che scrivi in Rails è Ruby, che è una delle ragioni per cui le persone potrebbero dire che rimpiangeresti di non conoscere Ruby. Rails implementa molte delle funzionalità di metaprogrammazione di Ruby, quindi sapere cosa sta succedendo nell'app Rails richiede una conoscenza di Ruby abbastanza avanzata.

Un altro punto è che il framework Rails implementa il modello di progettazione Model / View / Controller. I modelli sono oggetti. I controller sono anche oggetti. Non puoi semplicemente implementare Rails senza scrivere oggetti e chiamare metodi su quegli oggetti. La maggior parte di ciò che fai in un'app Rails è metodi di scrittura. Se non sai cosa sia un oggetto o quale sia un metodo, potresti avere difficoltà con questo. Potrebbe essere utile comprendere gli oggetti prima di provare a capire un particolare modello di oggetti. D'altra parte, potrebbe essere utile avere un'introduzione rigorosa su come utilizzare un modello di oggetti molto specifico prima di provare il caso generale.

In un'altra mano, nella mia esperienza di ragazzo che non conosce Rails, non conoscere Rails non è un ostacolo per scrivere applicazioni usando Rails. Probabilmente è una barriera per scrivere buone , ben progettate applicazioni in Rails, ma se conosci bene Ruby, puoi hackerare qualcosa insieme usando qualsiasi Quadro rubino.

Tutto ciò detto, il consiglio su cui mi fiderei di più è il consiglio di Rails Tutorial Book sito web. Il miglior consiglio è questo:

a surprising number of beginners have used this tutorial to learn web development, so I suggest giving it a try

Se ti perdi, torna indietro e impara un po 'di Ruby, o dell'HTML, o qualsiasi altra cosa ti perdi, e riprova! Learning Rails non ti impedirà di imparare Ruby più tardi, e se trovi che hai bisogno di più Ruby, puoi sempre mettere Rails in basso e riprenderlo. Non c'è un modo sbagliato per farlo - fai ciò che mantiene il tuo entusiasmo per l'apprendimento e qualsiasi cosa ti permetta di andare avanti. Aspettatevi che questo sia piuttosto difficile, comunque, qualunque sia la strada che prendete. Se fosse facile, non ci pagherebbero per farlo.

    
risposta data 08.09.2012 - 19:24
fonte
1

In Ruby, considererei OOP come parte delle basi, perché in Ruby, tutto è un oggetto. Imparare in modo definitivo OOP (come creare una classe, come funziona l'ereditarietà, i metodi di classe vs istanza, inizializzare gli oggetti ...) prima di imparare Rails. E moduli - sapere come creare spazi dei nomi.

Se conosci Python, dovresti essere in grado di individuare la sintassi di Ruby in pochissimo tempo, è molto, molto simile.

    
risposta data 08.09.2012 - 20:47
fonte
1

Cerca di imparare i punti fondamentali di Ruby. Mentre lo fai, cerca di capire come vanno le cose. Per una migliore comprensione dovresti sempre scrivere degli esempi per ogni argomento. Quindi la maggior parte delle volte vedrai come funzionano le cose.
Dopo aver eseguito correttamente le principali funzionalità del linguaggio Ruby, puoi passare a Rails e iniziare a impararlo da zero.
Elencherò i punti più importanti che dovresti sapere su Ruby prima di iniziare con Rails:

  • Variabili
  • Stringa e simboli
  • Operatori
  • Dichiarazioni
  • Loop
  • Blocchi / Procs / lambda
  • Classi / Moduli
  • OOP
  • Eigenclass / Singletonclass

Ecco qua. Se stai andando bene con tutti i punti che ho elencato, allora puoi iniziare con Rails. Lì noterai che valeva la pena impegnarsi per imparare Ruby prima di Rails.

    
risposta data 23.01.2015 - 12:20
fonte

Leggi altre domande sui tag