Bonjour à toutes et à tous,
Ma question se porte sur l'architecture a adopter avec une application web 3-Tiers avec de l'injection de dépendance.
Dans la plus part des tutos et des projets que j'ai pu croiser on retrouve les interfaces et les implémentations dans le même assembly et je trouve ça étrange.
Par exemple, dans la couche d’accès au données on peut trouver ICustomerRepository et son implémentation CustomerRepository.
Si je pars du principe que ICustomerRepository sera référencé dans les autres couches il faudra forcement mettre en tant que référence l'assembly contenant les interfaces et les implémentations.
Donc si demain je souhaite changer ma couche d’accès au données via le moteur d'injection de dépendance je suis obligé de garder en référence ma première assembly car elle contient les interfaces indispensables et les implémentations qui ne sont plus utilisées.
Ne faut-il pas mettre toutes les interfaces dans une "couche" distincte afin de ne pas mélanger interfaces et implémentations dans une même couche ?
Merci pour vos retours.
Partager