Dealing with multiple adapter categories
In the context of the hexagonal architecture, adapters help us to increase the hexagonal system's compatibility with different protocols and technology. In the Framework hexagon, we finally decide how the system will expose its features through input adapters and how it will communicate with external systems through output adapters.
In a similar way to what happens in the Application and Domain hexagons, the Framework hexagon is encapsulated in its own Java module. This module approach helps us enforce the boundaries between each system hexagon. From the Framework hexagon's perspective, it's good to group all input and output adapters within the same module. Although modularization can help us delimit boundaries, it is not enough to prevent the maintainability challenges we may face when dealing with multiple adapter categories.
What I mean by adapter category is a classification to group adapters that enable the integration...