MVC 프레임워크 만들기
한 줄 흐름
컨트롤러 앞에 Front Controller 하나를 두고, 버전을 올리면서 중복 제거 -> 서블릿 의존성 제거 -> 유연한 구조까지 발전시키는 과정.
Front Controller 패턴이란
- 요청을 하나의 서블릿이 먼저 받음
- 그 다음 실제 컨트롤러를 찾아서 호출
- 입구를 하나로 만들 수 있음
- 공통 처리 넣기 쉬움
- 개별 컨트롤러는 서블릿일 필요가 없어짐
v1: 프론트 컨트롤러 도입
- 기존 구조 최대한 유지
ControllerV1 인터페이스 도입
- 프론트 컨트롤러가 URL에 따라 컨트롤러를 찾아서 실행
- 없으면 404 반환
v1 느낀 점
- 일단 입구 하나로 모은 건 좋음
- 근데 각 컨트롤러가 여전히 뷰 forward 코드를 직접 가짐
- 중복은 아직 많음
v2: View 분리