-
MVC 란?
M : Model
- 평범함 자바 객체 POJO
- 도메인 객체 또는 DTO로 화면에 전달할 또는 화면에서 전달 받은 데이터를 담고 있는 객체
V : View
- HTML, JSP 타임리프 등등
- 데이터를 보여주는 역할, 다양한 형태로 보여줄 수 있다.
C : Controller
- 스프링 @MVC
- 사용자 입력을 받아 모델 객체의 데이터를 변경하거나, 모델 객체를 뷰에 전달하는 역할
- 입력값 검증
- 입력받은 데이터로 모델객체 변경
- 변경된 모델 객체를 뷰에 전달
MVC 패턴의 장점
동시다발적(Simultaneous) 개발
- 백엔드 개발자와 프론트 엔드 개발자가 독립적으로 개발을 진행
높은 결합도
- 논리적으로 관련있는 기능을 하나의 컨트롤러로 묶거나, 특정 모델과 관련있는 뷰를 그룹화 가능
낮은 의존도
개발 용이성
- 책임이 구분되어 있어 코드 수정하는 것이 편함
한 모델에 대한 여려 형태의 뷰를 가질 수 있다.
MVC 패턴의 단점
- 코드 네비게이션 복잡함
- 코드 일관성 유지에 노력이 필요
- 높은 학습 곡선