* MVC(Model - View - Controller) 패턴이란 ?

  • 어플리케이션 개발의 확장성을 위해 Model, View, Controller 세가지 영역으로 분리
  • 한 컴포넌트의 변경이 다른 컴포넌트에게 영향을 주지 않음 (유지보수)

장점

1. 사용자 인터페이스(화면)와 비즈니스 로직을 분리해서 작업 가능
2. 영역별 개발로 인하여 확장성이 뛰어남

단점

1. 개발과정이 복잡해서 초기 개발속도가 늦음
2. 초보자가 이해하기에 어려울 수 있음

1. Model

  • 어플리케이션의 기능 표현 -> 내부 비즈니스 로직을 처리
  • 데이터와 같은 상태 변화를 View에게 통지

2. View

  • Model을 화면에 시각적으로 표현
  • 사용자의 입력을 Controller에 전달

3. Controller

  • 사용자의 행동을 Model 업데이트와 맵핑한다.

  • 사용자 요청에 대한 응답을 위한 View를 선택한다.