2012-04-28 16 views
7

Ho bisogno di alcune informazioni sulla costruzione dei programmi Ruby. Sto cercando di imparare come scrivere Ruby (indipendentemente da Rails), quindi sto traducendo in codice Ruby alcuni script Perl che ho scritto in un progetto di bioinformatica. Fondamentalmente creando classi dove sono utili e quali no.Struttura dei programmi Ruby

Il mio problema è come eseguirlo? Gli script Perl sono solo lunghi blocchi di comandi, uno dopo l'altro. Cosa è appropriato in Ruby? Devo definire le mie classi nei loro file .rb e chiamare quelle e i loro metodi in un file rb separato che li usa per eseguire il mio programma?

Cosa si fa normalmente? Qualsiasi esempio sarebbe molto apprezzato. Gradirei anche qualche consiglio in generale su come andare a imparare questo genere di cose.

+0

"Devo definire le mie classi nei loro file .rb e chiamare questi e i loro metodi in un file rb separato che li usa per eseguire il mio programma?" Questo è praticamente tutto. Avrai uno script che eseguirai per avviare il programma, e quello script richiederà i file che devono essere richiesti, e andrà da lì. – x1a4

risposta

6

Ruby ha il cosiddetto ambiente di esecuzione di livello superiore e pertanto una lunga stringa di comandi verrà eseguita immediatamente proprio come Perl. In alternativa, puoi definire classi e moduli e passare tutto OOP al tuo problema, se lo desideri, oppure puoi mescolare gli approcci.

Avrai bisogno di almeno una riga al livello superiore o al livello superiore di una classe per iniziare tutto. Quindi:

p :hello 

o

class A 
    p :hello 
end 

o

class A 
    def run 
    p :hello 
    end 
end 
A.new.run 

o, il mio preferito:

class A 
    def run 
    p :hello 
    end 
    self 
end.new.run 
3

Mi raccomando guardando alcune delle vostre altre gemme preferiti per vedere come è strutturato il loro codice (come su Github). È così che ho trovato la mia partenza. Pensare al tuo progetto come a un "gioiello", essere rilasciato o meno, è un buon modo per risolvere il problema.

Problemi correlati