Que signifie l’encapsulation ?
L’encapsulation, dans le contexte de C#, fait référence à la capacité d’un objet à masquer des données et des comportements qui ne sont pas nécessaires à son utilisateur. L’encapsulation permet à un groupe de propriétés, de méthodes et d’autres membres d’être considérés comme une seule unité ou un seul objet.
Les avantages de l’encapsulation sont les suivants :
L’encapsulation est utilisée pour restreindre l’accès aux membres d’une classe afin d’empêcher l’utilisateur d’une classe donnée de manipuler les objets d’une manière qui n’est pas prévue par le concepteur.
Alors que l’encapsulation masque l’implémentation interne des fonctionnalités de la classe sans affecter le fonctionnement global du système, elle permet à la classe de répondre à une demande de fonctionnalité et d’ajouter ou de modifier sa structure interne (données ou méthodes) pour répondre aux exigences changeantes.
L’encapsulation est également connue sous le nom de masquage d’informations.
Techopedia explique l’encapsulation
L’encapsulation en C# est implémentée avec différents niveaux d’accès aux données d’objet qui peuvent être spécifiés à l’aide des modificateurs d’accès suivants :
L’encapsulation peut être illustrée avec un exemple d’objet Employee qui stocke les détails de cet objet.
En utilisant l’encapsulation, l’objet Employee peut exposer les données (comme Name, EmployeeID, etc.) et les méthodes (comme GetSalary) nécessaires à l’utilisation de l’objet, tout en masquant ses champs et méthodes non pertinents aux autres objets.
Il est facile d’imaginer une situation dans laquelle tous les utilisateurs pourraient accéder aux informations de base sur un employé tout en limitant les informations sur le salaire.
C# permet l’encapsulation de données grâce à l’utilisation d’accesseurs (pour obtenir des données) et de mutateurs (pour modifier des données), qui aident à manipuler indirectement des données privées sans les rendre publiques.
Les propriétés sont un mécanisme alternatif permettant d’encapsuler des données privées dans un objet C# et d’y accéder en mode lecture seule ou en mode lecture-écriture. Contrairement à l’accesseur et au mutateur, une propriété fournit un point d’accès unique aux valeurs « set » et « get » d’un objet.