아키텍처3 도메인 주도 설계 첫걸음 - 8장 : 아키텍처 패턴 (계층형 /CQRS / 포트와 어댑터) 8. 아키텍처 패턴 코드베이스가 처리해야 할 다양한 관심사로 인해 비즈니스 로직이 다양한 구성요소에 흩어지기 쉬움 사용자 인터페이스 / DB에 의해 구현 혹은 다양한 구성요소에 중복 관심사 구현 시, 엄격히 구성하지 않는다면 코드베이스의 변경에 대한 제약 계층형 아키텍처 고전적 아키텍처 : PL(Presentation layer) + BLL(Business logic) + DAL(Data access) 프로젠테이션 계층 사용자와 상호작용 하기 위한 인터페이스 구현 ex) GUI/CLI/연동 API/메시지 브로커 이벤트 구독/이벤트 발행 프로그램의 퍼블릭 인터페이스 비즈니스 로직 계층 소프트웨어의 중심 액티브 레코드 또는 도메인 모델과 같은 비즈니스 로직 패턴 적용 엔티티 / 규칙 / 프로세스 데이터 접근.. 2023. 6. 6. 클린 아키텍처 15장, 16장 리뷰 15장 아키텍처란? 소프트웨어 아키텍트는 최고의 프로그래머이며, 코드와 동떨어져서는 안된다. 동시에,나머지 팀원들이 생산성을 극대화 할 수 있는 설계를 하도록 이끈다. 아키텍처의 주된 목적은 시스템의 생명주기를 지원하는 것이다. 좋은 아키텍처는 시스템을 쉽게 이해하고, 쉽게 개발하며, 쉽게 유지보수하고, 쉽게 배포하게 해준다. 아키텍처의 궁극적인 목표는 시스템의 수명과 관련된 비용은 최소화하고, 프로그래머의 생산성은 최대화하는데 있다. 개발 개발하기 힘든 시스템이라면 수명이 길지도 않고 건강하지도 않을 것이다. 시스템 아키텍처는 개발팀이 시스템을 쉽게 개발할 수 있도록 만들어야 한다.배포소프트웨어 시스템이 사용될 수 있으려면 반드시 배포할 수 있어야 한다. 배포 비용이 높을수록 시스템의 유용성은 떨어진다.. 2023. 1. 1. 클린 아키텍처 1장, 2장, 3장, 4장, 5장 리뷰 클린 아키텍처 1장. 설계와 아키텍처 설계(design) vs 아키텍처(architecture) 전체 설계의 구성요소 관점에서는 설계와 아키텍처를 구분지을 필요 X 아키텍처는 고수준, 설계는 저수준의 세부사항이라고 하지만 건축/SW 설계에서는 개별적으로 존재할 수 없다. 좋은 SW 설계의 목표 필요한 시스템을 만들고 유지보수하는데 투입되는 리소스를 최소화 새로운 feature 때마다 비용이 증가한다면 나쁜 설계 나쁜 신호 직원이 많아지지만, 코드 생산성(LoC)가 그대로라면 생산성은 떨어지는 것 시스템 급하게 개발, 코드와 설계의 구조를 클린하게 하고자하지 않으면 생산성은 떨어짐 토끼 개발자와 거북이 개발자 토끼 개발자 : 일만 계속하지만, 설계의 중요성을 알고서도 실천하지않음. 생산성 유지할 수 있을 .. 2022. 12. 11. 이전 1 다음