inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

JPA와 도메인 모델 패턴

핵사고날 아키텍처 책을 추천해주실 수 있으실까요??

183

김지은

작성한 질문수 2

0

안녕하세요 토비님

언제나 헥사고날 아키텍처는 무엇이고 이걸 적용한다는 것이 왜 좋고 왜 필요하다는 것인지

궁금했습니다.

 

이번 강의를 통해서 대략적인 흐름 어떻게 적용할 것인지 어떤 방향으로 작업 해야 하는지 살짝 이해할 수 있었습니다

 

조금 더 이해도를 높이고 싶은데.. 혹시 토비님께서 추천하시는 서적이 있으실까요??

java spring spring-boot jpa 리팩터링 ddd

답변 1

0

토비

헥사고날 아키텍처를 만든 알리스타 코번이 직접 쓴 책을 가장 추천합니다. 다만 아직 번역서는 없습니다.

https://www.amazon.com/Hexagonal-Architecture-Explained-architecture-simplifies-ebook/dp/B0F5F7YRWW/ref=sr_1_1?crid=29GCGUY2229PS&dib=eyJ2IjoiMSJ9.aSPusFLg6fP6Q_7dKnTWKfCVvm66UJyGWS-H3kHbVKNpJmpVzk7TrcA8C7jWKPsWkh7Oxway0Bz1zX53Ejc6wkmm5ZmuAQ4wYm1MO4Z0xMYDGUP9hxNqqRVfegxr-DtNA_8qkdSwijiEMJ0Bm7-38-OB-iyT5GHqhzujILzQFCqppqevckvjGM4BbnRozJbSlkpQwhA6Hg9cd1GVperWeQN0hD6It9O5wmyNiUJ6-Xg.U3sR5my34TaZv8IfX0ZF0TanL39rQeQxanT4vrZM2Lc&dib_tag=se&keywords=hexagonal+architecture&qid=1760246351&sprefix=hexagonal+architect%2Caps%2C321&sr=8-1

 

한국에서는 만들면서 배우는 클린 아키텍처가 헥사고날 아키텍처를 잘 소개한 책으로 알려져있는데요. 이 책은 저자가 생각하는 클린 아키텍처를 스프링 개발에 적용하는 구체적인 전략을 잘 알려주는 장점이 있습니다. 보통 아키텍처 책들이 원리와 개념은 알려주지만 구체적인 개발 방법은 설명이 없거든요. 하지만 이 책은 좀 위험합니다. 제가 보기엔 헥사고날 아키텍처 또는 클린 아키텍처에 대해서 너무 한가지 방식만 정답인 것처럼 오해하기 쉽습니다. 사실 저자의 의도는 그게 아닌데도요. 그리고 헥사고날 아키텍처를 엄밀하게 설명하지 못합니다. 여러가지 아키텍처 사상이 혼재되어 있거나 잘못된 설명도 있습니다. 하지만 한번은 읽어보시는 걸 추천드리고, 책에서 제안한 내용, 특히 매핑과 선택에 관련한 부분은 비판적으로 보시는 것이 중요합니다. 제 강의에서 설명드리는 내용을 기억하시면서 보시면 좋겠습니다.

그리고 헥사고날과는 다른 아키텍처이지만 많은 사상을 공유하는 클린아키텍처도 보시는 걸 추천합니다. 로버트 마틴의 클린 아키텍처 책이 유명한데, 이것도 읽어보세요.

온라인에 공개된 헥사고날 아키텍처를 소개하는 영상이나 글은 사실 헥사고날 아키텍처가 아닌 경우가 많으니 주의해서 보셔야 합니다.

 

 

N+1 관련해서 질문있습니다.

0

40

3

도메인 모델에서 관계와 규칙을 구분하는 방법

0

61

2

헥사고날 아키텍처에서의 배치, 시큐리티, 비동기 이벤트 처리는 어떻게 하나요?

0

133

2

어댑터에서 도메인에 직접 의존하는 경우에 대해

0

134

2

Member 도메인이 PasswordEncoder를 받는 구조 질문 있습니다.

0

118

2

MemberService와 EmailSender 책임 분리에 대한 질문

0

109

2

NonNullApi를 NullMarked로 대체하라고 합니다.

0

133

2

39. 문서와 코드 다듬기 updateInfo 테스트 질문 있습니다.

0

80

2

Repository Adapter 설계에 대해 피드백을 부탁드립니다

0

111

2

헥사고날 part2 강의 출시 예정일 문의 드립니다.

0

261

2

PT 문의사항

0

104

1

초기 어플리케이션 구동 시 compose.yml 파싱 오류

0

152

2

애플리케이션의 JPA 리턴과 도메인 모델

0

129

2

애그리거트 루트의 하위 도메인들의 depth가 깊어질 때 문의

0

137

2

페이징 처리를 해야한다면 어떻게 해야할까요?

0

196

2

애그리거트의 repository

0

125

2

Domain Expert가 정확히 어떤 역할을 하는 사람인가요?

0

237

1

회원 애플리케이션 서비스 테스트 (1)

0

109

2

정적 팩토리 메서드 관련 질문드립니다!

0

110

2

spotbug + @NonNullApi 로만 Null 방어가 될까요?

0

129

2

required 포트에 관해서

0

95

2

혹시 다음 편은 언제쯤 오픈할까요?

0

172

2

서비스 단위 테스트 코드 작성

0

101

2

domain 모듈에 entity를 정의한다고 했을때

0

104

2