Skip to content

10. Technology selections & decisions

Ilkka Seppälä edited this page Mar 30, 2025 · 5 revisions
  • The design pattern examples use Java 21
  • The web pages use Vuepress 2
  • The parent project and all the submodules are Maven projects
  • Lombok is used to reduce the boilerplate
  • H2 is a typical database choice
    • Use in-memory database do prevent cluttering the user's disk
  • The Enterprise Integration Patterns (EIP) won't be implemented in this repository
  • Naked Objects pattern was implemented with Apache Isis framework
  • The diagrams have traditionally been made with ObjectAid UML Explorer for Eclipse and urm-maven-plugin, but nowadays we recommend using Whimsical Diagrams
  • Logging with SLF4J API and Logback implementation
  • Continuous integration using Github Actions.
  • Lombok is used to reduce boilerplate
  • Cloud design patterns are not implemented in this repository
  • SonarCloud is used for static analysis
  • Domain-driven design is not a design pattern, but an approach to craft applications.
Clone this wiki locally