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

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

✔ 장점

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

✔ 단점

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

1. Model

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

2. View

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

3. Controller

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

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