Sobes.tech
Intern

Qu'est-ce qu'une classe en Ruby?

sobes.tech IA

Réponse de l'IA

Une classe en Ruby est un modèle ou un plan pour créer des objets. Elle définit la structure (données/attributs) et le comportement (méthodes) que les instances de cette classe auront.

Caractéristiques clés :

  • Encapsulation : Regroupe les données et les méthodes qui opèrent sur ces données en une seule entité.
  • Héritage : Permet de créer de nouvelles classes (sous-classes) basées sur des classes existantes (super-classes), en héritant leurs caractéristiques et comportements.
  • Polymorphisme : Permet à des objets de classes différentes de répondre à un même appel de méthode de manière spécifique à leur type.

Exemple d'une classe simple :

class Dog
  # Constructeur de la classe
  def initialize(name, breed)
    @name = name # Attribut d'instance
    @breed = breed # Attribut d'instance
  end

  # Méthode d'instance
  def bark
    "#{@name} dit Ouaf!"
  end

  # Getter pour l'attribut
  def name
    @name
  end
end

# Création d'une instance de la classe (objet)
my_dog = Dog.new("Bobic", "Chien errant")

# Appel d'une méthode d'instance
puts my_dog.bark # Sortie : Bobic dit Ouaf!
puts my_dog.name # Sortie : Bobic

Les classes en Ruby sont des objets de première classe, elles peuvent aussi être modifiées dynamiquement.