Die Ports-and-Adapter-Architektur, auch bekannt als hexagonale Architektur, ist eine domänenzentrierte Architektur, die Anwendungen von externen Belangen isoliert. Diese Architektur wurde erstmals 1994 von Alistair Cockburn vorgestellt und später 2005 in seinem Blog beschrieben. Die Hauptintention dieser Architektur ist es, eine Anwendung durch verschiedene Benutzer, Programme und Skripte steuerbar zu machen, während sie isoliert von ihren Laufzeitgeräten und Datenbanken entwickelt und getestet werden kann. Die Geschäftslogik bildet den Kern der Anwendung und sollte geschützt und von externen Abhängigkeiten isoliert sein. Die Ports-and-Adapter-Architektur erreicht dies durch die Entkopplung der Geschäftslogik von externen Faktoren, wodurch sie leicht austauschbar und wartbar wird. Die Architektur ist use-case-getrieben, wobei der Fokus auf den Anwendungsfällen und nicht auf den Implementierungsdetails wie der Datenbank oder anderen externen Faktoren liegt. Das Hexagon in der Architektur repräsentiert die Kern-Geschäftslogik, wobei Ports und Adapter als Schnittstellen dienen, um mit der Außenwelt zu interagieren. Ports werden durch das Hexagon definiert und von Adaptern außerhalb des Hexagons implementiert, was die Kommunikation zwischen der Anwendung und externen Akteuren ermöglicht. Die Adapter fungieren als Bindeglieder zwischen den Akteuren und den Ports und konvertieren Daten, um sie mit der Anwendung oder externen Akteuren kompatibel zu machen. Durch die Verwendung der Ports-and-Adapter-Architektur können Entwickler robuste und anpassungsfähige Software erstellen, die sich unabhängig von externen Faktoren weiterentwickeln kann.
dev.to
Ports and Adapters (Hexagonal Architecture)
Create attached notes ...
