헥사고날 아키텍처 설계와 구현
이 시리즈는 “만들면서 배우는 헥사고날 아키텍처 설계와 구현” (위키북스) 책을 기반으로 한 학습 정리입니다.
실습 환경
원본 프로젝트는 Maven + Java 11 기반이지만, 이 시리즈에서는 다음 환경으로 변환하여 진행합니다:
| 항목 | 원본 | 변환 버전 |
|---|---|---|
| Build Tool | Maven | Gradle (Kotlin DSL) |
| Java Version | 11 | 21 |
| 저장소 | PacktPublishing/Designing-Hexagonal-Architecture-with-Java | dhaj |
시리즈 구성
1부. 아키텍처 핵심 기초
헥사고날 아키텍처의 핵심 개념과 각 헥사곤의 역할을 이해합니다.
- 01장: 왜 헥사고날 아키텍처인가?
- 02장: 도메인 헥사곤으로 비즈니스 규칙 감싸기
- 03장: 포트와 유스케이스를 통한 동작 처리
- 04장: 외부와 상호작용하는 어댑터 만들기
- 05장: 드라이빙 오퍼레이션과 드리븐 오퍼레이션
2부. 헥사곤을 활용한 견고한 기반 구축
실제로 도메인, 애플리케이션, 프레임워크 헥사곤을 구현합니다.
- 06장: 도메인 헥사곤 만들기
- 07장: 애플리케이션 헥사곤 만들기
- 08장: 프레임워크 헥사곤 만들기
- 09장: 자바 모듈을 이용한 의존성 역전 적용
3부. 실전 적용 (Quarkus)
Quarkus 프레임워크를 활용해 실제 애플리케이션을 완성합니다.
- 10장: 모듈화된 헥사고날 애플리케이션에 쿼커스 추가
- 11장: CDI 빈즈를 활용한 포트와 유스케이스 관리
- 12장: RESTEasy 리액티브를 활용한 입력 어댑터 구현
- 13장: 하이버네이트 리액티브를 이용한 출력 어댑터 구현
- 14장: Dockerfile과 쿠버네티스 객체 설정
- 15장: 헥사고날 애플리케이션을 위한 모범 설계 실천법
참고 자료
Last updated on