Ruby är ett språk byggt för att definiera klasser , eftersom det är först och främst ett objektorienterat språk . Ruby erbjuder ett antal genvägar för att skapa en klass , som lätt kan följas för dem som har lite erfarenhet av språket . Instruktioner Review, Skapa en klass i Ruby
1
Välj ett kort och beskrivande namn för din klass . Namnet bör vara kortfattade nog att alla som läser din kod kan ha en god uppfattning om vad klassen gör .
2
Använd Camel case för klassnamnet . Camel fall använder en versal i början av klassnamnet och dra den första bokstaven i nästa ord när de blir ord . Detta är istället för att använda ett understreck . Till exempel , Ruby metodnamn se ut så här : method_name , men klassnamn bör se ut så här : ClassName
3
Skapa en tom klass uttalande : klass TestClassend
4 .
Plan metoder för varje sak som din klass skulle kunna göra . Skriv , en efter en , tomma metoder för var och en av metoderna . En mikrovågsugn klass , till exempel , ska kunna göra saker som slår på och få mat i det : klass Microwavedef put_food_inenddef take_food_outenddef turn_onenddef turn_offendend
Skriv koden för de metoder
5
Använd @ variabel syntax om metoderna måste lagra en variabel inuti ett objekt . Den " at " symbolen i princip säger " Denna variabel är inte en lokal variabel , det är en medlem variabel . Det hör till objektet . " Du kan också använda lokala variabler i metoder i klassen . I exemplet används @ variabel mat medlem , varvid de variabla butikerna vilken mat är för närvarande i mikrovågsugn : klass Microwavedef put_food_in ( mat ) @ mat = foodenddef take_food_outfood = @ mat @ mat = nilreturn foodenddef turn_onputs " Microwave är på " enddef turn_offputs " Microwave är off " endend
6
Börja en etikett med en " : " karaktär och namnet på variabeln . Till exempel " : food " . Här " : food " betyder " . Något som heter mat " " @ food " inte kan föras till attr_ * metoderna , eftersom det skulle passera värdet av " @ food " . Eftersom du i huvudsak vill säga " den sak som kallas maten kan nås utanför klassen , " " : . Food " bör användas
7
Sätt en av följande tre typer av attr_ * metoder i din klass , men utanför eventuella metoder . Till exempel ger attr_reader kod utanför klassen att läsa variabel , men inte skriva till den . Å andra sidan tillåter attr_writer kod utanför klassen för att skriva till en variabel , men inte läst den . Slutligen ger attr_accessor både läsning och skrivning
8
Sätt en av följande tre typer av attr_ * metoder i klassen , men utanför eventuella metoder : . Klass Microwaveattr_reader : fooddef put_food_in ( mat ) @ livsmedel = foodend # ... resten av de metoder som går här , tas ut för brevityend