육각형 아키텍처에서 구조적으로 핵심이 되는 요소는 엔티티, 유스케이스, incoming, outcoming Adapter
📦 buckpal
└─ account
├─ adapter
│ ├─ in
│ │ └─ AccountController
│ └─ out
│ └─ persistence
│ ├─ AccountPersistenveAdapter
│ └─ SpringDataAccountRepository
├─ domain
│ └─ Acoount
│ └─ Activity
└─ application
├─ SendMoneyService
└─ port
├─ in
│ └─ SendMoneyUseCase
└─ out
└─ LoadAccountPort
└─ UpdateAccountStatePort
해당 패키지 구조를 사용 하면 어떤 작업을 할 때 패키지 구조만 보고 바로 파악 할수 있도록 도와준다.
<aside>
🔥 이 패키지 구조는 architecture-code gap
(아키텍처-코드 갭) 혹은 model-code gap
(모델 코드 갭)울 효과적으로 다룰 수 있는 강력한 요소.
</aside>
<aside> 🔥 단점