Conclusion – the hexagonal journey
One of the fascinating things about software development is that we can employ many methods to achieve the same result. This freedom adds to the fun of software development and fosters creativity. Creativity is the main force behind clever solutions for complex problems. That's why we should always leave space for creativity in any software project. But when combined with tight schedules and resources, freedom and creativity should be managed to produce valuable software without adding unnecessary complexity.
I see the hexagonal architecture as an approach that can help us manage these different requirements. It provides a clear set of principles to organize system code within flexible yet consistent boundaries. The hexagonal approach offers a model to direct our creative efforts in an organized and – to a certain extent – standardized way.
The hexagonal architecture is not for everyone, nor is it suitable for every...