Introducing Hexagonal Architecture
Hexagonal architecture is also called as Ports and Adapters. Ports define the interfaces through which adapters interact with the application core, and any adapter can be replaced without affecting business logic. This makes it easy to change external technologies without affecting the core logic and even delay technological decisions.This type of architecture helps in understanding how and why interfaces are utilized when designing an application. The main idea of hexagonal architecture is to structure an application in such a way that it can be developed and tested in isolation without relying on external tools and technologies, which separates the core logic of the application from the services it uses. This architecture adds the concept of ports and adapters to the layered architecture.
Allow an application to equally be driven by users, programs, automated test or batch scripts, and to be developed and tested in isolation from its eventual run...