Design Pattern

MVC Pattern

motosw3600 2021. 12. 10. 16:31

MVC?

  • Model, View, Controller로 이루어진 구조
  • View와 Contoller, Model과 Contoller는 서로 통신하는 구조이지만, View와 Model은 서로 알지못하는 구조

Model

  • 앱에서 필요한 데이터 담당
  • 네트워크 데이터
  • persistence(DB, Core Data)

Model -> Controller

  1. Model의 값이 변경
  2. 변경했음을 Notification
  3. Controller는 Notification받음

View

  • 화면에 직접적으로 보이는 View 담당
  • UIKit에 의존적

View -> Controller

  1. View로부터 사용자 action발생
  2. Delegate나 DataSource로 ViewController연결
  3. Controller가 입력에 대한 처리 수행

Controller

  • View와 Model사이 중간역할로 앱의 비지니스 로직을 담당
  • View로부터 요청을 Model에 보내고 Model의 변화를 View에게 전달

'Design Pattern' 카테고리의 다른 글

DI(Dependency Injection)  (0) 2022.01.19
Delegate Pattern  (0) 2021.12.14
Clean Architecture  (0) 2021.12.10