Video: Section, Week 2 2024
Metoder (også kalt funksjoner ) i Ruby gir deg mulighet til å lagre og navngi et stykke kode og deretter bruke det senere, muligens mange ganger. Du kan overføre forskjellige variabler til en metode for å endre sin oppførsel. Du kaller variabler overført til en metode metodens argumenter (nei, ikke det skrikende slag!).
Hva om du ønsket å tegne to rektangler på rad? Du kan bare kopiere loopkoden og lime inn koden flere ganger. I stedet skal du sette rektangelkoden til en metode.
Følg disse trinnene for å lage en gjenbrukbar metode som skal tegne rektangler:
-
Begynn med å legge til en definisjon for den nye rektangelmetoden. Sett denne koden øverst på filen din:
def rektangel (høyde, bredde, outside_letter, inside_letter) # Rektangelet koden vil gå her slutten
Søkeordet defignerer til Ruby som du skal gi definisjonen av en metode. def følger etter navnet på metoden (rektangel) og deretter en liste med null eller flere argumenter - hvert argument er navnet på en variabel du kan bruke inne i metoden. Du oppgir nå koden som utgjør metodens funksjonalitet og markerer slutten av metoden med søkeordets slutt.
-
Velg hele rektangelens tegningsløyfekode, velg Rediger → Klipp ut, og velg deretter Rediger → Lim inn for å lime inn koden inni metoden i stedet for kommentaren som vises i trinn 1:
def rektangel (høyde, bredde, outside_letter, inside_letter) 1. opptil (høyde) gjør | rad | hvis rad == 1 setter outside_letter * bredde elsif rad == høyde setter outside_letter * bredde annet midt = inside_letter * (bredde - 2) setter "# {outside_letter} # {middle} # {outside_letter}" slutten slutten
-
nå Du kan bruke metoden du har opprettet for å tegne et rektangel. For å gjøre dette kan du ringe metoden (i Ruby, dette kalles også sending en melding). På linjen som angir bredde- og høydevariablene nederst på kildekoden, skriv denne koden:
rektangel (høyde, bredde, outside_letter, inside_letter)
Merk at variabelenavnene du bruker til å ringe en metode, ikke må navngis det samme som argumenternes navn er. Her, for å holde det enklere, er de de samme. Imidlertid er plasseringen av variablene viktige, og den første verdien du gir når du ringer en metode går inn i det første argumentet, det andre til det andre, og så videre.
-
Kjør programmet. Det skal se slik ut:
Et vellykket rektangel. -
Kopier og lim inn rektangelmetodeanropet slik at du har to eksakte kopier av linjen, og kjør programmet igjen.Hva skjer?
Når du setter koden i metoder, kan du enkelt gjenbruke koden og gjøre det lettere å endre det eller fikse feil. Tenk deg om du hadde limt det lange settet med kode for å tegne et rektangel, to ganger, tre ganger eller mange, mange ganger. (Prøv det!) Dette fungerer, men hvis du må gjøre en liten endring i koden din, må du jakte på hver versjon hvor som helst. Med en metode, trenger du bare å fikse det en gang!