We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 4b206d3 + a6e7088 commit a1eed3fCopy full SHA for a1eed3f
1 file changed
2026/Fundamentals_of_Software_Architecture_2nd_Edition/donghyeon/week2.md
@@ -0,0 +1,24 @@
1
+# 4 ~ 5장
2
+
3
+## 논의
4
5
+모놀리식 애플리케이션을 분해할 때 컴포넌트 눌러 펴기 패턴(고아 클래스는 새 리프 노드(컴포넌트)로 옮겨서 눌러 편다.)을 적용하라고 나와있는데,
6
+여러번 읽어봐도 "무조건 하라"는 뉘앙스인 것 같습니다. (책 전체적인 뉘앙스로 봐서는 아마 아닐 것 같긴하지만..)
7
8
+네임스페이스와 디렉토리 경로가 일치해야하는 언어를 사용하는 입장에서는 이게 오히려 캡슐화를 방해하기도 하고,
9
+구조를 한눈에 확인하기 어렵게 만들 수 있다고 생각합니다.
10
11
+다른 분들은 "컴포넌트 눌러 펴기 패턴" 부분을 읽고 어떻게 생각하셨는지 다양한 관점을 들어보고 싶습니다.
12
13
+## 내용
14
15
+- 모놀리식 애플리케이션 분해 전략
16
+- 전술적 분기(tactical forking): 모놀리스 복제 후 필요 없는 부분 삭제
17
+- 컴포넌트 기반 분해(component-based decomposition): 컴포넌트를 정제/추출한 후 분산 아키텍처를 점진적으로 구축
18
+ - 컴포넌트 식별 및 사이징 패턴
19
+ - 공통 도메인 컴포넌트 수집 패턴
20
+ - 컴포넌트 눌러 펴기 패턴
21
+ - 컴포넌트 디펜던시 결정 패턴
22
+ - 컴포넌트 도메인 생성 패턴
23
+ - 도메인 서비스 생성 패턴
24
+- 구(구할 구)심/원(멀 원)심 커플링
0 commit comments