Avantages/Inconvénients
Ressources
Avantages
Testabilité
- Pour chaque Driver port, on peut développer un apadateur qui va exécuter les tests au travers du port
- Pour chaque Driven port, on peut développer un adapatateur bouchon (mock adapter)
Maintenabilité
- L’architecture Hexagonale assure la Separation of Concerns et le découplage de la logique métier, ce qui facilite la localisation du code que nous voulons modifier.
Fléxibilité
- Pour chaque port, on peut facilement changer l’adaptateur
- On peut développer une nouveau adapatateur sans toucher au coeur applicatif
Retarder les décisions technologiques
- Lorsqu’on commence à développer on peut se concentrer sur le coeur applicatif (dont les ports)
- Puis choisir les frameworks/technologies plus tard qui seront des adapateurs de nos ports.
Inconvénients
Complexité
- Augmentation du nombre de classes (un port par usecase et plusieurs adaptateur par ports)
- La flexibilité ajoute de la compléxité