posted 3 years ago
M Kahlid,
Thank you for your question!
I chose Quarkus for two reasons. The first is because it is a framework geared from the ground up for cloud-native development. I like how Quarkus smoothly and natively integrates with cloud technologies like Docker and Kubernetes. And the second reason is the industry standards on which Quarkus is based, like CDI beans and Microprofile.
In my view, Quarkus blends quite well contemporary software development practices based on the cloud with some solid industry standards. This interesting combination made me use Quarkus to apply hexagonal architecture ideas.
The concepts I present in the book can be applied to any framework. That is why I focus the first nine chapters on developing a hexagonal application without relying on any framework. Only after having the system adequately structured using the hexagonal architecture ideas will I think about which framework to use.
In my opinion, the framework should not drive the system design. For me, it is another technical detail that should be replaceable without significant refactorings.
Please let me know if you want to learn more about my motivations. I would be more than glad to share them with you.
With much respect,
Davi