Médiaforma

All posts tagged encapsulation

Le terme “encapsulation” désigne le regroupement des variables et des fonctions au sein d’une seule et même entité : une classe.

Par défaut, toutes les propriétés et méthodes d’une classe sont de type public. Ils sont donc utilisables et modifiables par toutes les instances de la classe. Si nécessaire, vous pouvez également définir des propriétés et méthodes d’un autre type :

  • private : les propriétés et méthodes ne sont utilisables et modifiables que par la classe elle-même (pas dans les classes dérivées ni dans les objets) ;
  • protected : les propriétés et méthodes sont utilisables et modifiables par la classe elle-même et par ses classes dérivées. Par contre, elles sont inaccessibles aux objets qui découlent de la classe.

La programmation orientée objet (POO) a essentiellement deux avantages. Elle :

  • facilite l’organisation du code et donc le développement ;
  • permet de définir des modules réutilisables.

La programmation orientée objets repose sur trois notions fondamentales : l’encapsulation, l’héritage et le polymorphisme.

Les classes définissent des structures composées de variables et de fonctions. Pour utiliser les termes propres à la POO, les variables d’une classe sont appelées propriétés. Quant aux fonctions de la classe, elles sont appelées méthodes.

Les instances, c’est-à-dire les utilisations d’un type classe, sont appelées des objets. Les variables et fonctions d’une classe sont appelés composants ou membres de la classe.

Si vous avez du mal à vous y retrouver avec tous ces nouveaux termes, nous allons faire une analogie. Considérez une classe comme une usine qui fabrique des voitures. Les instances de l’usine (la classe) sont des voitures (les objets). La cylindrée, la couleur, le type des pneus, etc. sont des caractéristiques (propriétés) propres à chaque voiture. Selon les caractéristiques des voitures à fabriquer, il faut appliquer différents procédés de fabrication (méthodes).