[스프링부트 핵심가이드] 개발에 앞서 알면 좋은 기초 지식 - 레이어드 아키텍처
볼빵빵오춘기
레이어드 아키텍처(Layered Architecture)애플리케이션의 컴포넌트를 유사 관심사를 기준으로 레이어 묶어 수평적으로 구성한 구조를 의미한다. 여러 방면에서 쓰이는개념이며, 어떻게 설계하느냐에 따라 용어와 계층 수가 달라진다.일반적으로는 3 or 4계층 구성을의미한다.차이는 인프라(데이터 베이스) 레이어의 추가 여부로 결정된다. 프리젠테이션 계층애플리케이션의 최상단 계층으로, 클라이언트의 요청을 해석하고 응답하는 역할이다.UI나 API를 제공한다. 별도의 비즈니스 로직을 포함하고 있지 않으므로 비즈니스 계층으로 요청을 위임하고 받은 결과를 응답하는 역할만 수행한다. 비즈니스 계층애플리케이션이 제공하는 기능을 정의하고 세부 작업을 수행하는 도메인 객체를통해 업무를 위임하는역할을 수행한다. DDD..