[iOS] MVC
by Roel Downey728x90
반응형
MVC 패턴
MVC패턴 이란?
-
소스 코드 설계 기법으로써, Model-View-Controller 로 이어지는 세개의 핵심 구조를 이용하여 애플리케이션을 설계 하는것을 말한다.
-
Model: 모델은 데이터를 담당
-
View: 뷰는 데이터에 대한 화면 표현을 담당
-
Controller: 모델과 뷰사이에 위치하여 데이터를 가공하여, 뷰로 전달하고 뷰에서 발생하는 이벤트를 입력받아 처리하는 역할 담당
요약
-
3가지 요소를 설명하면
- Model: 무엇을 할지 정의 비지니스 로직에서의 알고리즘, 데이터 등의 기능을 처리
- Controller는 어떻게 할지를 정의 화면의 처리기능과 Model과 View를 연결시켜주는 역할
- View는 화면을 보여주는 역할 웹이라면 Web, 모바일이라면 App 화면의 보여지는 부분
-
MVC 문제점:
복잡한 대규모 프로그램을 개발할때,
다수의 View와 Model이 Controller를 통해 복잡하게 연결될 수 있기 때문에,
Controller가 커지게 되는 Massive ViewController(대규모 MVC 어플리케이션) 되어 버림.
View와 Controller가 라이브사이클에 강하게 연결되어있고,
더불어 Controller를 통해 View와 Model간에도 관계가 복잡하게 연결되어있어서,
수정시 테스트가 힘들고, 파악이 어렵기 때문에 여러 Side-Effect를 불러오게 되는 문제점 있다.
그래서 MVC는 위 문제점을 해결하기 위해 여러 패러다임을 수용한 다양한 패턴을 파생시킴
내 생각 정리
애플의 MVC 패턴은 View와 Controller가 강하게 연결되어 있어 View Controller가 모든 일을 하는것 같다.
MVC 발표를 하기 위해 만든 자료
728x90
반응형
'iOS' 카테고리의 다른 글
[iOS] CocoaPods 설치하고 Xcode 나의 프로젝트에 적용하기 (0) | 2019.08.28 |
---|---|
[iOS] SwiftLint Xcode 나의 프로젝트에 적용하기 (0) | 2019.08.28 |
[iOS] UIApplicationMain 과 UIApplication 학습 (0) | 2019.08.28 |
[iOS] UIImageView && Custom View (0) | 2019.08.28 |
[iOS] IBAction과 IBOutlet 정리 (0) | 2019.08.28 |
블로그의 정보
What doing?
Roel Downey