해결된 질문
작성
·
326
0
강사님.
Controller에 사용자의 요청이 캡슐화되어 전달되어지면서 실제 요청하는 URL과 매핑되어있는 처리 메소드가 호출되는 구조로 알고있습니다!
따라서, Controller는 핸들러와 비슷한 개념인거 같은데...
어째서 표현 계층에 속하는 것인지요 ?
컨트롤러가 사용자의 요청을 전달받기 때문일까요 ?
답변 1
1
네 언급하신바 와 같이 컨트롤러는 사용자 (예 브라우저, 웹 또는 명령어 창)과 비지니스 로직을 연결해 주는 역할을 수행하며 사용자의 요구변화(REST API, 모바일앱, 커맨드 등) 에 따라 적절히 대응해줘야 하는 계층입니다.
왜냐하면 이런 사용자 요구변화에 비즈니스 로직이 영향을 가급적이면 받지 않게 하기 위해서죠.
그런 의미에서 일반적으로 표현(프리젠테이션) 계층이라 이라 부릅니다.
아마도 클라이언트쪽 핸들러 개념과 헷갈리시는 것 같은데 보통 자바 엔터프라이즈 아키텍처에서 비지니스 로직의 흐름 제어는 비지니스 로직 계층의 응용 서비스 클래스가 담당하고 프리젠테이션의 컨트롤러는 클라이언트가 요구하는 형태(DATA,프로토콜)에 대한 변환에 집중하는 역할을 수행한다고 보면 됩니다.