L'architecture Ports et Adapters, également connue sous le nom d'architecture hexagonale, est une architecture centrée sur le domaine qui permet d'isoler les applications des préoccupations externes. Cette architecture a été initialement introduite par Alistair Cockburn en 1994, puis décrite dans son blog en 2005. Son objectif principal est de permettre à une application d'être pilotée par divers utilisateurs, programmes et scripts, tout en étant développée et testée de manière isolée de ses périphériques et bases de données d'exécution. La logique métier constitue le cœur de l'application et doit être protégée et isolée des dépendances externes. L'architecture Ports et Adapters y parvient en découplant la logique métier des facteurs externes, la rendant ainsi facilement remplaçable et maintenable. L'architecture est pilotée par les cas d'utilisation, l'accent étant mis sur ces derniers et non sur les détails d'implémentation tels que la base de données ou d'autres facteurs externes. L'hexagone dans l'architecture représente la logique métier principale, les ports et les adaptateurs agissant comme des interfaces pour interagir avec le monde extérieur. Les ports sont définis par l'hexagone et implémentés par des adaptateurs en dehors de l'hexagone, permettant la communication entre l'application et les acteurs externes. Les adaptateurs agissent comme des éléments intermédiaires entre les acteurs et les ports, convertissant les données pour les rendre compatibles avec l'application ou les acteurs externes. En utilisant l'architecture Ports et Adapters, les développeurs peuvent construire des logiciels résilients et adaptables capables d'évoluer indépendamment des facteurs externes.
dev.to
Ports and Adapters (Hexagonal Architecture)
