Els mètodes són blocs de codi que realitzen una tasca específica i poden ser reutilitzats en diferents parts del programa. En Ruby, els mètodes són fonamentals per organitzar i estructurar el codi de manera eficient.
Continguts
Definició de Mètodes
Per definir un mètode en Ruby, utilitzem la paraula clau def
seguida del nom del mètode i un bloc de codi. Aquí teniu un exemple bàsic:
Explicació
def saludar
: Defineix un mètode anomenatsaludar
.puts "Hola, món!"
: El bloc de codi que s'executarà quan es cridi al mètode.end
: Finalitza la definició del mètode.saludar
: Crida al mètodesaludar
.
Paràmetres de Mètodes
Els mètodes poden acceptar paràmetres, que són valors que es passen al mètode per personalitzar la seva execució. Aquí teniu un exemple:
def saludar_nom(nom) puts "Hola, #{nom}!" end saludar_nom("Anna") # Crida al mètode amb el paràmetre "Anna"
Explicació
def saludar_nom(nom)
: Defineix un mètode anomenatsaludar_nom
que accepta un paràmetrenom
.puts "Hola, #{nom}!"
: Utilitza el paràmetrenom
dins del bloc de codi.saludar_nom("Anna")
: Crida al mètodesaludar_nom
amb el paràmetre"Anna"
.
Valors de Retorn
Els mètodes poden retornar valors utilitzant la paraula clau return
. Si no es proporciona explícitament un valor de retorn, Ruby retorna l'última expressió avaluada.
Explicació
def sumar(a, b)
: Defineix un mètode anomenatsumar
que accepta dos paràmetresa
ib
.return a + b
: Retorna la suma dea
ib
.resultat = sumar(3, 4)
: Emmagatzema el valor retornat pel mètodesumar
en la variableresultat
.puts resultat
: Imprimeix el valor deresultat
.
Mètodes Predeterminats
Els mètodes poden tenir valors predeterminats per als seus paràmetres. Això és útil quan volem proporcionar valors per defecte que es poden sobrescriure si cal.
def saludar_nom(nom = "món") puts "Hola, #{nom}!" end saludar_nom # Crida al mètode sense paràmetres, utilitza el valor predeterminat saludar_nom("Anna") # Crida al mètode amb el paràmetre "Anna"
Explicació
def saludar_nom(nom = "món")
: Defineix un mètode amb un paràmetrenom
que té un valor predeterminat"món"
.saludar_nom
: Crida al mètode sense paràmetres, utilitza el valor predeterminat"món"
.saludar_nom("Anna")
: Crida al mètode amb el paràmetre"Anna"
.
Exemples Pràctics
Exemple 1: Mètode per calcular l'àrea d'un rectangle
def area_rectangle(amplada, alçada) return amplada * alçada end puts area_rectangle(5, 10) # Imprimeix 50
Exemple 2: Mètode per verificar si un número és parell
def es_parell?(num) return num % 2 == 0 end puts es_parell?(4) # Imprimeix true puts es_parell?(7) # Imprimeix false
Exercicis Pràctics
Exercici 1: Mètode per calcular la mitjana de tres números
Escriu un mètode anomenat mitjana
que accepti tres números com a paràmetres i retorni la seva mitjana.
def mitjana(a, b, c) # El teu codi aquí end # Prova el mètode puts mitjana(3, 4, 5) # Ha de retornar 4.0
Solució
Exercici 2: Mètode per convertir graus Celsius a Fahrenheit
Escriu un mètode anomenat celsius_a_fahrenheit
que accepti un valor en graus Celsius i el converteixi a Fahrenheit.
def celsius_a_fahrenheit(celsius) # El teu codi aquí end # Prova el mètode puts celsius_a_fahrenheit(0) # Ha de retornar 32.0 puts celsius_a_fahrenheit(100) # Ha de retornar 212.0
Solució
def celsius_a_fahrenheit(celsius) return (celsius * 9.0 / 5) + 32 end puts celsius_a_fahrenheit(0) # Retorna 32.0 puts celsius_a_fahrenheit(100) # Retorna 212.0
Conclusió
En aquesta secció, hem après com definir mètodes en Ruby, com passar paràmetres, com retornar valors i com utilitzar valors predeterminats. Els mètodes són una eina poderosa per organitzar i reutilitzar el codi, i són fonamentals per escriure programes eficients i mantenibles. A la següent secció, explorarem les col·leccions en Ruby, començant amb els arrays.
Curs de Programació en Ruby
Mòdul 1: Introducció a Ruby
Mòdul 2: Conceptes Bàsics de Ruby
Mòdul 3: Treballant amb Col·leccions
Mòdul 4: Programació Orientada a Objectes en Ruby
- Classes i Objectes
- Variables i Mètodes d'Instància
- Variables i Mètodes de Classe
- Herència
- Mòduls i Mixins
Mòdul 5: Conceptes Avançats de Ruby
- Blocs, Procs i Lambdas
- Metaprogramació
- Gestió d'Excepcions
- Entrada/Sortida de Fitxers
- Expressions Regulars
Mòdul 6: Introducció a Ruby on Rails
- Què és Ruby on Rails?
- Configuració de l'Entorn Rails
- Creació d'una Aplicació Simple en Rails
- Arquitectura MVC
- Rutes
Mòdul 7: Proves en Ruby
- Introducció a les Proves
- Proves Unitàries amb Minitest
- Desenvolupament Basat en Comportament amb RSpec
- Mocking i Stubbing
Mòdul 8: Millors Pràctiques en Ruby
- Estil de Codi i Convencions
- Refactorització
- Optimització del Rendiment
- Millors Pràctiques de Seguretat