Designing hexagonal architecture with Java and Quarkus : build change-tolerant software with improved maintainability by applying hexagonal architecture principles /: build change-tolerant software with improved maintainability by applying hexagonal architecture principles. (2022)