Skip to content
This repository has been archived by the owner on Dec 28, 2020. It is now read-only.

core design concept

bububu10 edited this page Oct 24, 2017 · 6 revisions

summary

  • Domain Driven Design
  • MVP architecture
  • Powered by Spring Boot, Vaadin Framework8, and MyBatis

DDD+MVP

used libraries

  • Lombok https://projectlombok.org/
    • do away with boilerplate code from domain model.
    • using for 2 purposes:
      • define ValueObject's getter/setter and no args constructor which Vaadin's com.vaadin.data.Binder#bind() require
      • define Aggregation's no args constructor which MyBatis's ResultMap require
    • so our domain logic don't depend on methods created by Lombok. these methods are only used by Framework.
Clone this wiki locally