Inhoudsopgave:
Video: Ruby on Rails by Leila Hofer 2024
Ruby is een objectgeoriënteerde programmeertaal (OOP). Alles in Ruby is een object dat enkele gegevens bevat en een code die het objectgedrag geeft. Je kunt objecten zien als de zelfstandige naamwoorden van een zin; denk aan het gedrag, genaamd methoden, als de werkwoorden van het object. Wanneer u uw eigen objecten maakt, zijn er enkele goede algemene procedures om in gedachten te houden.
Doe één ding goed
Denk bij het plannen van je programma na over alle objecten die nodig zijn en hoe ze kunnen communiceren. Als u bijvoorbeeld een kaartspel maakt, heeft u mogelijk afzonderlijke speelkaarten, een kaartspel met kaarten, een spel zelf dat de spelregels kent en spelers die het spel spelen.
Het is verleidelijk om al je code in een enkel, groot stuk code te rollen, maar wanneer je tot een bepaalde grootte komt, is die aanpak heel moeilijk te veranderen, repareren of hergebruiken in andere projecten.
Houd in plaats daarvan uw objecten gericht op het uitvoeren van één taak.
Houd het simpel
In Ruby definieert u de gegevens en het gedrag van uw objecten in een klas . Een klasse is een soort sjabloon waarmee u een of meer objecten kunt maken. De klasse bevat de code die gedrag heeft aangemaakt, genaamd methoden . De klasse kan ook de gegevens bevatten die nodig zijn om het object te laten werken, zoals de nominale waarde van een speelkaart.
Wanneer je je code voor een klas schrijft, is het veel beter om kleine methoden te schrijven dan grotere. Elke kleine methode kan in combinatie met anderen worden gebruikt om meer gecompliceerd gedrag te creëren.
Door de methoden kleiner te houden, is het eenvoudiger om elke methode afzonderlijk te testen. Bij het opsporen van fouten is het vaak eenvoudiger om minder regels code te sorteren.
Een andere manier om uw code eenvoudig te houden, is goed gebruik te maken van de ingebouwde Ruby-objecten en hun methoden. Ruby heeft een zeer rijke set van ingebouwde mogelijkheden. U spaart tijd met behulp van deze methoden.
Uw gegevens verbergen
Een manier om objecten moeilijk te hergebruiken of te debuggen te maken, is wanneer de objecten "te veel informatie delen. "Als uw object veel gegevens bevat, maar het is allemaal blootgesteld aan de buitenkant, is het moeilijk om de manier waarop u met die gegevens werkt te veranderen zonder andere objecten te onderbreken die ervan afhankelijk zijn.
Ruby biedt een aantal manieren om de gegevens van uw object te verbergen. U kunt uw eigen methoden schrijven die "getters" en "instellingen" bieden om de gegevens te manipuleren. Je kunt ook de attr_accessor-methoden van Ruby gebruiken, die getter- en settercode voor je maken.
Beide technieken geven u een laag tussen de buitenwereld en de code en gegevens van uw object.Als u vervolgens een wijziging moet aanbrengen, kunt u de implementaties van uw objecten wijzigen met behoud van hun interfaces, zodat andere programmeurs die uw code gebruiken, hun eigen code niet hoeven te wijzigen.
Ruby-conventies volgen
Ruby heeft een aantal naamgevingsconventies die worden verwacht bij het schrijven van Ruby-code. Als u deze standaardtechnieken volgt, maakt u uw code veel gemakkelijker te begrijpen door andere programmeurs.
Probeer altijd maar één klasse in een bestand te zetten, een klasse te noemen die begint met een hoofdletter en hoofdletters te gebruiken tussen meerdere werknamen (CardGame). Bestanden die in uw klasse staan, worden in kleine letters met "snake case" (kaart_spel. Rb) genoemd. Ruby verwacht dit zelf.
Constanten zijn meestal allemaal UPPER_SNAKE_CASE en lokale en instantievariabelen, evenals methodenamennamen zijn allemaal @lower_snake_case (zonder de @ voor lokale variabelen en methodenamen).
Ruby vereist niet alle extra symbolen die in sommige andere talen worden gebruikt, dus je zult een gebrek aan verschillende soorten haakjes, puntkomma's en andere onnodige interpunctietekens opmerken. Hoewel je ze kunt gebruiken als je wilt, gebruik ze niet als ze niet bijdragen aan de begrijpelijkheid van je code.
Maar, en dit is een grote, als je in de code van iemand anders gaat werken, moet je eerst en vooral haar conventies volgen.
De aanpak van Ruby is een aanbeveling, niet altijd een vereiste. Doe waar je je comfortabel bij voelt, en geniet van het schrijven van je code!