이번에는 Design Pattern 중 MVC(Model-View-Controller)
에 대한 소개와, IOS App에서 해당 Design Pattern을 어떻게 사용하는 지에 대해 말하고자 한다.
MVC
는 UIKit에서 기본적으로 차용하는 Design Pattern이다.
Model
: Data의 처리 방법을 말한다. 즉, Class 또는 Struct이다.View
: User Interface를 말한다. 즉, UILabel, UIButton, 등...Controller
: Model과 View의 조정자. Model과 View는 서로 직접적인 소통을 할 수 없으며, 반드시 Controller를 거처야 한다. 만약, 어떤 메세지가 이곳에서 다른 곳으로 이동한다면, 4가지의 이벤트가 발생한다.
- View는 유저 인터렉션(Button 클릭)이 발생할 때, Controller에게 알린다.
- Controller는 해당 데이터를 반영하여 View를 업데이트 한다.
- Controller는 해당 데이터를 반영하여 Model을 업데이트 한다.
- Model은 데이터가 변경되었을 때 Controller에게 알린다(?)
위의 예시를 더 요약하면 아래와 같다!..
- 유저 인터렉션이 발생할 때, View -> Controller -> Model의 순으로 유저의 동작이 실행된다.
- 데이터의 변경이 발생할 때, Model -> Controller -> View 순으로 데이터의 변경이 실행된다.
이따가 내용 추가...