클린아키텍처
[클린아키텍처] 15장 아키텍처란?, 16장 독립성
bzerome240
2022. 3. 6. 21:01
소프트웨어 시스템 아키텍처
: 시스템을 구축했던 사람들이 만들어낸 시스템의 형태
- 목적: 시스템의 생명주기를 지원하는 것
- 궁극적인 목표: 시스템의 수명과 관련된 비용은 최소화, 프로그래머의 생산성은 최대화
소프트웨어 시스템이 쉽게 개발, 배포, 운영 유지보수되게 만드려면
가능한 많은 선택지를, 가능한 오래 남겨두는 전략을 따라야한다.
- 개발
- 배포
- 운영
- 유지보수
아키텍트의 목표는 시스템에서 정책을 가장 핵심적인 요소로 식별하고,
동시에 세부사항은 정책에 무관하게 만들 수 있는 형태의 시스템을 구축하는 것
- 개발 초기에는 데이터베이스 시스템을 선택할 필요가 없다
- 개발 초기에는 웹서버를 선택할 필요가 없다.
- 개발 초기에는 REST를 적용할 필요가 없다.
- 개발 초기에는 의존성 주입 프레임워크를 적용할 필요가 없다.
좋은 아키텍처가 지원해야하는 것
- 유스케이스
- 운영
- 개발
- 배포
결합 분리 모드 (계층과 유스케이스의 결합을 분리하는 방법) 종류
- 소스 수준 분리 모드
- 배포 수준 분리 모드
- 서비스 수준 분리 모드
728x90
반응형