Come creare una classe in Ruby

October 11

Ruby è un linguaggio costruito per definire le classi, in quanto è prima di tutto un linguaggio orientato agli oggetti. Rubino fornisce una serie di tasti di scelta rapida per creare una classe, che possono essere facilmente seguiti per coloro che hanno un po 'di esperienza con la lingua.

istruzione

Creare una classe in Ruby

1 Scegliere un nome breve e descrittivo per la classe. Il nome dovrebbe essere abbastanza conciso che chiunque legga il codice può avere una buona idea di ciò che la classe fa.

2 Utilizzare caso Camel per il nome della classe. caso Camel utilizza una lettera maiuscola all'inizio del nome della classe e capitalizzare la prima lettera della parola successiva quando si entra parole. Questo è invece di utilizzare una sottolineatura. Ad esempio, i nomi dei metodi di Ruby simile a questa: method_name , ma nomi delle classi dovrebbe essere simile a questo: ClassName .

3 Creare una dichiarazione di classe vuota:
class TestClass
end

4 metodi del piano per per ogni cosa che la classe dovrebbe essere in grado di fare. Scrivere, uno per uno, i metodi vuoti per ciascuno dei metodi. Una classe a microonde, per esempio, dovrebbe essere in grado di fare cose come accendere e mettere il cibo in esso:
class Microwave
def put_food_in
enddef take_food_out
enddef turn_on
enddef turn_off
end
end

Scrivere il codice per i metodi

5 Utilizzare la sintassi @variable se i metodi devono memorizzare una variabile all'interno di un oggetto. Il simbolo "a" fondamentalmente dice: "Questa variabile non è una variabile locale, è una variabile membro. Appartiene all'oggetto." È inoltre possibile utilizzare variabili locali in metodi di classe. L'esempio utilizza la variabile membro @cibo, in cui i negozi di variabili quali il cibo è attualmente nel forno a microonde:
class Microwave
def put_food_in(food)
@food = food
enddef take_food_out
food = @food
@food = nil
return food
enddef turn_on
puts "Microwave is on"
enddef turn_off
puts "Microwave is off"
end
end

6 Iniziare una etichetta con un carattere ":" e il nome della variabile. Ad esempio, ": il cibo". Qui ": il cibo" significa "la cosa chiamata cibo." "@cibo" Non può essere passato al attr_ * metodi, perché sarebbe passare il valore di "@cibo". Dal momento che in sostanza vuole dire "la cosa chiamata cibo si può accedere dall'esterno della classe," ": dovrebbe essere usato il cibo".

7 Mettere uno dei seguenti tre tipi di metodi attr_ * a vostra classe, ma al di fuori di qualsiasi metodo. Ad esempio, attr_reader permette codice esterno alla classe di leggere la variabile, ma non scrivere. D'altra parte, attr_writer permette codice esterno alla classe di scrivere una variabile, ma non leggerlo. Infine, attr_accessor permette sia la lettura e la scrittura.

8 Mettere uno dei seguenti tre tipi di metodi attr_ * a vostra classe, ma al di fuori di qualsiasi metodo:
class Microwave
attr_reader :fooddef put_food_in(food)
@food = food
end# ... the rest of the methods go here, taken out for brevity
end

Consigli e avvertenze

  • Se stai leggendo blocchi di codice, essere sicuri di ignorare qualsiasi cosa scritta dopo l'operatore "#". Queste sono note progettati per aiutare i programmatori. Anche se queste note sono utili quando c'è un intero gruppo di lavoro sullo stesso programma, possono essere facilmente confusa con blocco di codice ad un occhio inesperto.