iOS 아키텍처 패턴 - Classic MVC
원문 출처 : https://medium.com/ios-os-x-development/ios-architecture-patterns-ecba4c38de52
우선 기본적으로 MVC, MVP, MVVM와 같이 MV(X) 패턴들은 다음과 같이 3가지 요소로 나뉜다.
일반적인 카테고리 특징은 아래와 같고, 패턴에 따라 조금씩 차이를 보인다.
Models
- domain data 또는 데이터를 다루는 data access layer를 담당하는 카테고리.
- ‘Person’, ‘PersonDataProvider’를 떠올려 보아라.
Views
- presentation layer (GUI)를 담당하는 카테고리.
- iOS 환경에서 접두사 ‘UI’가 붙었던 모든 것을 떠올려 보라.
Controllor / Presenter / ViewModel
- Model 카테고리와 View 카테고리를 연결, 조정하는 카테고리.
- 일반적으로 뷰에서 수행된 사용자의 동작에 반응하여 모델을 변경하고, 모델의 변경 사항을 뷰로 업데이트함..
[이점]
이렇게 구분함으로써
- 이해하기 더 쉬워짐
- 재사용에 용이
- 독립적으로 테스트 가능
이제 Classic MVC 만의 특징을 살펴보자.
View
: 상태가 없다 (stateless). Model의 변화에 따라 Controlloer에 의해서 단순히 redenring 될 뿐이다.
(웹 페이지에서 링크 클릭 시 단순히 페이지가 바뀌는 것을 생각해봐)
좋은 아키텍처는 책임 분배가 명확하여 각각이 독립성을 가져야 하는데, 이 경우에는 3가지 카테고리가 서로 긴밀하게 결합되어 있다.
독립성의 이점을 가지지 못한다고 볼 수 있다.
iOS 애플리케이션에서 Classic MVC 구현을 할 수는 있다만... 별 다른 장점이 없는 아키텍처 문제로 크게 와닿진 않는 방식이다.
==> 현대 iOS 개발에는 적합하지 않다. (안씀!)
'iOS 앱 점검(ObjC)' 카테고리의 다른 글
iOS 아키텍처 패턴 - MVP (1) | 2019.05.20 |
---|---|
iOS 아키텍처 패턴 - Apple's MVC (0) | 2019.05.20 |
iOS 아키텍처 패턴 - 개요 (1) | 2019.05.20 |
xcode simulator 명령어 기록 (0) | 2019.01.17 |
IOS 리버싱 툴 (0) | 2019.01.16 |