본문 바로가기

Base/Architecture2

Layered 아키텍처와 SOLID 원칙 Layered 아키텍처란? 크게 3가지 계층으로 분리할 수 있다. Controller 클라이언트 요청과 응답을 담당하는 계층 클라이언트 요청에 대한 유효성 체크를 하는 계층 UI 계층 Service 비즈니스 로직에 연관된 계층 Repository 데이터 베이스 접근 계층 InfraStructure 레이어로도 사용된다. Layered 아키텍처의 장점 구현이 단순하다. 레이어드 간의 작성되어야 할 코드가 구분되어 있어 생산성이 좋다. 빠르게 학습할 수 있다. Layered 아키텍처의 단점 데이터 베이스 우선적으로 설계가 이루어진다. Repository가 우선적으로 되는 이유는 DB 설계부터 우선적으로 되기 때문이다. DB 중심적이면 도메인 모델에 대한 상태 변경이 아닌 행동 중심으로 모델링이 된다. 결국 D.. 2023. 3. 21.
도메인과 SW아키텍처 도메인과 아키텍처 도메인 이란? 소프트웨어로 해결하고자 하는 문제 영역을 도메인 이라고 부른다. 우리가 프로그래밍을 하면서 가장 신경써줘야할 곳. 우리가 문제에 대해 맞닥들이는 곳. 문제에 대해 풀어 나아가며 해결해야할 곳. 도메인은 하나일 수 있지만, 하나의 도메인으로인해 점점 파생될 수 있다 어떤 문제를 해결하고 싶은지 정확히 파악해야 어떤 해결책이 좋을지 생각할 수 있다. 누구의 문제인지, 어떤것이 문제인지, 왜 문제인지 생각해야한다. 문제를 어떻게 바라보는지에 따라 해결책이 달라질 수 있다. 따라서 우리가 문제를 해결하기 위해서 도메인을 잘 알아야할 필요가 있다. 반 버논의 도메인 종류 메인 도메인 비즈니스의 전체 도메인 서브 도메인 전체 도메인을 여러 부분 도메인으로 나눈 것. 즉, 메인에서 파.. 2023. 3. 21.