Innehållsförteckning:
Video: Ruby on Rails by Leila Hofer 2024
Ruby är ett objektorienterat programmerings (OOP) språk. Allt i Ruby är ett objekt som innehåller vissa data och en del kod som ger objektbeteendet. Du kan tänka på objekt som substantiv för en mening; Tänk på beteendet, kallat metoder, som objektets verb. När du skapar dina egna objekt finns det några bra allmänna rutiner att tänka på.
Gör en sak bra
När du planerar ditt program, tänk på alla objekt som behövs och hur de kan interagera. Om du till exempel gör ett kortspel kan du ha individuella spelkort, ett däck som håller kort, ett spel som känner till spelets regler och spelare som spelar spelet.
Det är frestande att rulla hela din kod i en enda stor kod, men när du kommer till en viss storlek är det mycket svårt att ändra, fixa eller återanvända i andra projekt.
Håll i stället dina objekt inriktade på att göra ett jobb.
Håll det enkelt
I Ruby definierar du data och beteende för dina objekt i en klass . En klass är som en mall från vilken du kan göra ett eller flera objekt. Klassen innehåller koden som skapade beteenden, kallad metoder . Klassen kan också innehålla de data som behövs för att objektet ska kunna fungera, till exempel ett spelkorts nominella värde.
När du skriver din kod för en klass är det mycket bättre att skriva små metoder än större. Varje liten metod kan användas i kombination med andra för att skapa mer komplicerat beteende.
Genom att hålla metoderna mindre är det enklare att testa varje metod i isolation. När du spårar ner buggar är det ofta lättare att sortera genom färre linjer kod.
Ett annat sätt att hålla din kod enkel är att göra bra bruk av inbyggda Ruby-objekt och deras metoder. Ruby har en mycket rik uppsättning inbyggda funktioner. Du sparar tid med dessa metoder.
Dölj dina data
Ett sätt som objekten börjar bli svåra att återanvända eller felsöka är när objekten "delar för mycket information. "Om ditt objekt har mycket data, men det är helt utsatt för utsidan, är det svårt att ändra hur du arbetar med data utan att bryta andra objekt som är beroende av det.
Ruby ger ett antal sätt att dölja ditt objekts data. Du kan skriva egna metoder som ger "getters" och "settings" för att manipulera data. Du kan också använda Rubys attr_accessor-metoder, vilket skapar getter och setter-kod för dig.
Båda teknikerna ger dig ett lager mellan omvärlden och ditt objekts kod och data.Om du då behöver ändra, kan du ändra objektens implementeringar samtidigt som du behåller gränssnittet så att andra programmerare som använder din kod inte behöver byta sina egna.
Följ Ruby-konventionerna
Ruby har ett antal namnkonventioner som förväntas när man skriver Ruby-kod. Om du följer dessa standardtekniker gör du din kod mycket lättare att förstå av andra programmerare.
Du bör alltid försöka sätta bara en klass i en fil, namnge en klass som börjar med en bokstav och använda stora bokstäver mellan flera arbetsnamn (CardGame). Filer som håller din klass heter i små bokstäver med "snake case" (card_game. Rb). Ruby själv förväntar sig detta.
Konstanter är vanligtvis alla UPPER_SNAKE_CASE, och lokala och instansvariabler samt metodnamn är alla @lower_snake_case (utan @ för lokala variabler och metodnamn).
Ruby kräver inte alla extra symboler som vissa andra språk gör, så du märker brist på olika slags parenteser, semikolon och andra onödiga skiljetecken. Även om du kan använda dem om du vill, använd inte dem om de inte lägger till förståelsen för din kod.
Men det här är en stor, om du slutar arbeta i någon annans kod, följ först och främst hennes konventioner.
Rubins strategi är en rekommendation, inte alltid ett krav. Gör vad du är bekväm med och njut av att skriva din kod!