본문 바로가기

만들면서 배우는 클린 아키텍처11

[만들면서 배우는 클린 아키텍처] 12. 아키텍처 스타일 결정하기 언제 실제로 육각형 아키텍처 스타일을 사용해야 할까?도메인이 왕이다육각형 아키텍처는 외부의 영향을 받지 않고 도메인 코드를 자유롭게 발전시킬 수 있다.도메인을 중심에 두는 아키텍처 없이, 도메인 코드를 향한 의존성을 역전시키지 않고서는 DDD를 제대로 할 수 없다. 만약 도메인 코드가 애플리케이션에서 가장 중요한 것이 아니라면 이 아키텍처 스타일은 필요하지 않을 것이다.경험이 여왕이다습관이 저절로 결정을 내리게 된다. 과거에 자주 계층형 아키텍처 스타일로 애플리케이션을 만들어 왔다.아키텍처 스타일에 대해서 괜찮은 결정을 내리는 방법은 다른 아키텍처 스타일을 경험해 보는 것이다. 작은 모듈에 먼저 적용해보고 개념과 스타일에 익숙해지면 이 경험이 다음 아키텍처 결정을 이끌어 줄 것이다.그때그때 다르다어떤 아.. 2024. 10. 20.
[만들면서 배우는 클린 아키텍처] 11. 의식적으로 지름길 사용하기 지름길을 방지하기 위해서는 먼저 지름길 자체를 파악해야 한다. 우발적으로 사용되는 지름길을 인식하고 수정할 수 있고 정당한 지름길이라면 지름길의 효과를 의식적으로 선택할 수 있다.왜 지름길은 깨진 창문 같을까?깨진 창문 이론이 코드 작업에 적용 될 때의 의미- 품질이 떨어진 코드에서 작업할 때 더 낮은 품질의 코드를 추가하기가 쉽다.- 코딩 규칙을 많이 어긴 코드에서 작업할 때 또 다른 규칙을 어기기도 쉽다.- 지름길을 많이 사용한 코드에서 작업할 때 또 다른 지름길을 추가하기도 쉽다.깨끗한 상태로 시작할 책임가능한 한 지름길을 거의 쓰지 않고 기술 부채를 지지 않은 채로 프로젝트를 깨끗하게 시작하는 것이 중요하다. 지름길이 몰래 스며드는 순간 더 많은 지름길을 끌어들이기 때문이다. 프로토타이핑 작업 중.. 2024. 10. 19.
[만들면서 배우는 클린 아키텍처] 10. 아키텍처 경계 강제하기 경계와 의존성             경계를 강제한다는 것은 의존성이 올바른 방향을 향하도록 강제하는 것을 의미한다.점선 화살표: 잘못된 방향을 가리키는 의존성 접근 제한자public, protected, prifate, package-private(default) 제한자가 있다.package-private 제한자는 자바 패키지를 통해 클래스들을 모듈로 만들어준다. 패키지 내에 있는 클래스들은 서로 접근 가능하지만 바깥에서는 접근할 수 없다. 모듈 진입점으로 활용될 클래스들만 public으로 만들면 의존성이 잘못된 방향을 가리킬 위험이 줄어든다.O 표시: private-package Class+ 표시: public Class 영속성 어댑터는 자신이 구현하는 아웃고잉 포트를 통해 접근되므로 private-p.. 2024. 10. 18.
728x90
반응형