Clean Architecture
- architecture vs design
- architecture: 세부사항과는 분리된 고수준
- design: 저수준의 구조 또는 결정사항 등
행위와 아키텍처
- 소프트웨어 개발자는 두 가치를 모두 반드시 높게 유지해야 하는 책임을 진다.
행위
- 이해관계자를 위해 기계가 수익을 창출하거나 비용을 절약하도록 만든다.
- 기능 명세서나 요구사항 문서를 구체화 할 수 있도록 돕는다.
아키텍처
- 소프트웨어를 변경하기 쉽게 만들어준다.
- 소프트웨어는 soft와 ware의 합성어이다. ware는 상품 즉, product를 뜻한다. soft는 말 그대로 부드럽다는 뜻이다. 소프트웨어를 만든 이유는 기계의 행위를 쉽게 변경할 수 있도록 하기 위해서이다. 만약 기계의 행위를 바꾸는 일을 어렵게 만들고자 했다면 소프트웨어가 아니라 하드웨어라고 불렀을 것이다.
행위 vs 아키텍처 : 둘 중 어디에 집중 해야 할까?
- 아이젠하워 메트릭스
긴급함긴급하지 않음
중요함 | 중요함 긴급함 | 중요함 긴급하지 않음 |
중요하지 않음 | 중요하지 않음 긴급함 | 중요하지 않음 긴급하지 않음 |
내겐 두 가지 유형의 문제가 있습니다. 하나는 긴급하며, 다른 하나는 중요합니다. 긴급한 문제는 중요하지 않으며, 중요한 문제는 절대 긴급하지 않습니다.
- 행위 ==> 긴급
- 아키텍처 ==> 중요함
결론
- 긴급하지만 중요하지 않은 일을 우선적으로 처리하라고 요구를 받을테지만 프로그래머들은 긴급하지 않지만 중요한 일과 조율을 통해 해내야만 한다.
- 아키텍처가 후순위가 되면 시스템을 개발하는 비용이 더 많이 들고, 일부 또는 전체 시스템에 변경을 가하는 일이 현실적으로 불가능해진다.
클린 아키첵처 전체 보기
클린 아키텍처란? https://blog.kjslab.com/199
클린 아키텍처 - 설계원칙 - SRP https://blog.kjslab.com/200
클린 아키텍처 - 설계원칙 - OCP https://blog.kjslab.com/201
클린 아키텍처 - 설계원칙 - LSP https://blog.kjslab.com/202
클린 아키텍처 - 설계원칙 - ISP https://blog.kjslab.com/203
클린 아키텍처 - 설계원칙 - DIP & SOLID 요약 https://blog.kjslab.com/204
클린 아키텍처 - 컴포넌트 https://blog.kjslab.com/205
클린 아키텍처 - 컴포넌트 결합 - ADP https://blog.kjslab.com/206
클린 아키텍처 - 컴포넌트 결합 - SDP https://blog.kjslab.com/207
클린 아키텍처 - 컴포넌트 결합 - SAP & 결론 https://blog.kjslab.com/208
'아키텍처 > 클린 아키텍처' 카테고리의 다른 글
클린 아키텍처 - 설계원칙 - SRP (2) | 2023.02.11 |
---|---|
클린 아키텍처 - 컴포넌트 (12) | 2023.02.11 |
클린 아키텍처 - 설계원칙 - LSP (2) | 2023.02.11 |
클린 아키텍처 - 설계원칙 - DIP (14) | 2023.02.11 |
클린 아키텍처 - 컴포넌트 결합 - ADP (2) | 2023.02.11 |
댓글