Bonjour à tous,
J'ai une classe Document et une classe Employee. J'utilise régulièrement ces deux classes indépendamment à travers mon code. Parfois je dois faire des manipulation seulement sur un objet de type Employee.
Cependant, ma classe Document a impérativement besoin d'un instance d'Employee (un document est créé par un et un seul employé).
Je ne peux déclarer une inner class Employee à Document, puisque je veux continuer de traiter Employee de façon indépendante ailleurs dans mon code.
J'aimerais seulement pouvoir avoir une instance d'Employee à l'intérieur de Document à l'instanciation de cette dernière.
Actuellement, dans ma classe document, j'ai une variable membre (Employee employee) et j'instancie cet objet dans le constructeur de Document. Il est évident qu'à la création de Document, Employee est vide.
Mon problème est que je ne sais pas la meilleure (la plus intelligente) façon d'accéder les propriétés de Employee via Document.
J'ai trouvé deux "solutions" :
1. Ma variable membre de type Employee est publique et j'accède les infos de l'employee de cette facon : document.Employee.FirstName, document.Employee.LastName. Le problème avec cette méthode est que je ne suis pas certain si c'est sécuritaire ?
2. Je tire profit de l'encapsulation en créant des propriétés à Document pour toutes celles de Employees : Document.EmployeeFirstName, Document.EmployeeLastName. Le problème avec ça, c'est qu'à chaque fois que j'ajoute ou supprime une propriété de la classe Employee, je dois faire de même dans la classe Document.
Je suis certain de ne pas etre le seul à avoir à intégrer des classes à l'intérieur d'autres classes. Mon code peut fonctionner en utilisant n'importe laquelle des deux méthodes ci-haut, seulement, j'aimerais savoir quelle est la méthode la plus efficace à long terme.
Merci d'avance pour vos suggestions et explications,
Partager