Métodes y arguments
Abordarem el tema en el context on aquestes funcions están fora dels objectes.
Un mètode és un grup de codi que es pot reciclar.
S’inicia amb la paraula reservada def
i després ve el nom del mètode. Finalitza amb la paraula end
.
El mètode es crida utilitzant el nom del mètode amb dos parèntesi ()
. Aquests parèntesi, en Ruby es poden ignorar, però els utilitzem per tal que quede clar que es va a imprimir el mètode.
La recomanació és que posarem parèntesi. Però podem utilitzar-los quan hi ha arguments i no utilitzar-los en el cas de que no hi hagen arguments.
Els arguments són variables que rep el mètode i que s’especifiquen en la definició del mètode. Aquestes també es poden obviar, però la recomanació és no fer-ho per tal que quede clar.
Per tal de retornar el valor, en molts llenguatges exiteix la paraula return
, això significa que si col·loquem alguna cosa al costat del això va a retornar el que retorn
indique.
La paraula reservada return
pot ignorar-se, en Ruby sempre es retorna el que troben en l’última línia.
Quan utilitzar la paraula return
?
Doncs quan vols acabar el programa abans i no en l’última línia. Exemple punt 4.
Així el programa tornarà 0
a en cas que no ens donen un string va a tornar 0
. Exemple punt 5.
1. Mètode square
def square(x)
# retorna el quadrat d'un nombre
x * x
end
puts square(2)
Output
4
2. Imprimint mètodes
def square(x)
# retorna el quadrat d'un nombre
x * x
end
def saludar
puts "Hola món"
end
saludar()
puts square(3)
Output
Hola món
9
3. Utilitzant return
def square(x)
# retorna el quadrat d'un nombre
return x * x
end
def saludar
puts "Hola món"
end
saludar()
puts square(3)
4. Exemple de return
def square(x)
# retorna el quadrat d'un nombre
return 0 unless x.is_a? Integer
x * x
end
def saludar
puts "Hola món"
end
saludar()
puts square(3)
Output
Hola món
9
5. Exemple l’string
Mirem l’última línia.
def square(x)
# retorna el quadrat d'un nombre
return 0 unless x.is_a? Integer
x * x
end
def saludar
puts "Hola món"
end
saludar()
puts square("3")
Output
Hola món
0
Font Código Facilito