Search

관심사의 분리와 MVC 패턴

관심사의 분리 (Separation of Concerns)

OOP 5대 설계 원칙 : S O L I D
SRP : 단일 책임의 원칙
하나의 메소드는 하나의 책임만
분리
관심사(해야할 작업)
변하는 것과 변하지 않는 것
공통(중복)코드
다음 코드는 3개의 관심사로 나눌 수 있다.

공통 코드의 분리 - 입력의 분리

다음을
다음으로
또는 이렇게도 가능

출력의 분리 - 변하는 것과 변하지 않는 것의 분리

코드를 관심사에 따라 분리하면 더 이상 기존 변수들을 사용하지 못함.
→ 결과를 저장할 Model 객체가 필요
Model, View(출력), Controller(처리)로 나눈 MVC 패턴 등장

MVC 패턴

입력(DispatchcerServlet) → 처리(Controller) → Model에 결과 저장 → 출력(View)
1.
요청
DispatcherServlet
입력 & 변환
모델 생성
2.
모델에 결과 저장
YoilTellerMVC.java
3.
결과(모델)를 View에 전달하여 출력
yoil.jsp
yoilError.jsp

관심사의 분리 & MVC 패턴 실습

YoilTellerMVC.java
yoil.jsp
yoilError.jsp

컨트롤러 메소드의 반환 타입

String View 이름을 반환
void 매핑된 URL의 끝단어가 View 이름
ModelAndView Model과 View 이름을 반환