How does this help me build maintainable software?
We looked at a package structure for a Hexagonal Architecture that takes the actual code structure as close to the target architecture as possible. Finding an element of the architecture in the code is now a matter of navigating down the package structure along the names of certain boxes in an architecture diagram, helping with communication, development, and maintenance.
In the following chapters, we’ll see this package structure and dependency injection in action as we implement a use case in the application layer, a web adapter, and a persistence adapter.