Glossaire

Programmation objet

Attribut : Une variable qui appartient à une classe ou à un objet et qui définit ses propriétés (i.e. son état).

Classe : Un modèle qui définit les propriétés et les comportements d’un objet.

Classe abstraite : Une classe qui ne peut pas être instanciée, mais qui peut être héritée par d’autres classes. Elle sert à définir des méthodes que les sous-classes devront implémenter.

Constructeur : Une méthode spéciale appelée lors de la création d’un objet (e.g., via l’opérateur new en Java). Elle initialise les attributs de l’objet.

Délégation : Un concept où un objet transfère la responsabilité de l’exécution d’une méthode à un autre objet.

Encapsulation : Le principe de cacher les détails internes d’un objet et de ne montrer que ce qui est nécessaire. Cela est souvent réalisé en utilisant des méthodes d’accès (getters et setters).

Envoi de messages : Une demande envoyée à un objet pour exécuter une méthode. Les messages sont utilisés pour la communication entre objets.

Héritage : Un mécanisme qui permet à une classe (classe dérivée ou classe fille) d’hériter des propriétés et des comportements d’une autre classe (classe de base ou classe mère).

Interface : Un type abstrait qui définit un ensemble de méthodes qu’une classe doit implémenter (i.e. contrat). Contrairement à une classe, elle ne contient aucune implémentation (pas d’attribut ni de corps de méthode).

Liaison tardive (ou late binding) : Un mécanisme qui permet de déterminer la méthode à appeler lors de l’exécution du programme plutôt qu’au moment de la compilation. Ce concept est également connu sous le nom de liaison dynamique ou liaison à l’exécution.

Machine virtuelle : Un environnement d’exécution qui permet d’exécuter du code intermédiaire déjà compilé (byte-code). Elle abstrait les détails de la machine physique sous-jacente et fournit une plateforme d’exécution uniforme.

Méthode : Une fonction définie dans une classe qui décrit les comportements des objets de cette classe.

Méthode de classe (ou méthode statique) : Une méthode qui appartient à la classe elle-même plutôt qu’à une instance particulière de la classe. Contrairement aux méthodes d’instance, qui opèrent sur les objets créés à partir de la classe, les méthodes de classe opèrent sur la classe elle-même.

Objet : Une instance d’une classe. Un objet possède des attributs (propriétés) et des méthodes (comportements).

Polymorphisme : La capacité de différentes classes à être traitées comme des « instances d’une même classe » par l’intermédiaire d’une interface commune.

Ramasse-miettes : Un « ramasse-miettes » (ou garbage collector en anglais) est un mécanisme automatique de gestion de la mémoire. Son rôle est de libérer la mémoire occupée par des objets qui ne sont plus utilisés par le programme.

Redéfinition (ou overriding) : La capacité d’une classe dérivée à fournir une implémentation spécifique pour une méthode qui est déjà définie dans sa classe de base.

Surcharge (ou overloading) : La capacité de définir plusieurs méthodes avec le même nom mais des paramètres différents dans une même classe.

this : la pseudo-variable this est une référence implicite à l’objet courant de la classe. Elle est utilisée pour faire référence à l’instance actuelle de la classe à l’intérieur de ses méthodes ou de ses constructeurs.

Variable de classe (ou variable statique) : une variable qui appartient à la classe elle-même, plutôt qu’à une instance spécifique de la classe. Cela signifie que toutes les instances de cette classe partagent la même valeur pour cette variable, contrairement aux variables d’instance, qui sont spécifiques à chaque objet.

Visibilité (ou modificateur d’accès) : Les modificateurs d’accès déterminent la visibilité des attributs et des méthodes d’une classe (par exemple, public, private, protected).

Conception objet

Association : Une relation entre deux classes qui permet à un objet d’une classe d’utiliser les méthodes et les attributs d’un objet d’une autre classe. Les associations comportent des cardinalités.

Agrégation : Une forme spéciale d’association qui représente une relation « a un » entre deux classes, où une classe contient des références à des objets d’une autre classe.

Composition : Un principe de conception où une classe est composée d’objets d’autres classes. C’est un cas particulier d’agrégation où la partie ne se conçoit pas sans son tout : la disparition de l’objet composite entraîne celle de sa partie.

Diagramme de classes : Un diagramme UML qui définit les classes d’un système, leurs attributs, méthodes et les relations entre elles.

Diagramme de séquence : Un diagramme UML qui décrit comment les objets interagissent dans une séquence temporelle particulière.