Encapsulation

Définition - 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 un comportement 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 objet.

Voici les avantages de l'encapsulation:

  • Protection des données contre la corruption accidentelle
  • Spécification de l'accessibilité de chacun des membres d'une classe au code en dehors de la classe
  • Flexibilité et extensibilité du code et réduction de la complexité
  • Réduction du couplage entre les objets et donc amélioration de la maintenabilité du code

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 des 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) en fonction de l'évolution des besoins.

L'encapsulation est également connue sous le nom de masquage d'informations.

Definir Tech 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ées à l'aide des modificateurs d'accès suivants:

  • Public: accès à tout le code du programme
  • Privé: accès uniquement aux membres de la même classe
  • Protégé: accès aux membres de la même classe et à ses classes dérivées
  • Interne: accès à l'assemblage actuel
  • Protected Internal: accès à l'assembly actuel et aux types dérivés de la classe conteneur

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 (telles que Name, EmployeeID, etc.) et les méthodes (telles que GetSalary) nécessaires à l'utilisation de l'objet, tout en masquant ses champs et méthodes non pertinents à d'autres objets. Il est facile de voir une situation dans laquelle tous les utilisateurs pourraient accéder aux informations de base sur un employé tout en restreignant les informations de salaire.

C # permet l'encapsulation des données via l'utilisation d'accesseurs (pour obtenir des données) et de mutateurs (pour modifier les données), qui aident à manipuler les données privées indirectement sans les rendre publiques. Les propriétés sont un mécanisme alternatif pour que les données privées soient encapsulées dans un objet C # et accessibles 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.

Cette définition a été écrite dans le contexte de C #