Project Jo

iOS MVVM 적용해 보기 본문

Developer/iOS

iOS MVVM 적용해 보기

Project Jo 2022. 1. 6. 22:12

MVVM (Model + View + ViewModel)

Model
- 네트워크 통신, DB 등 데이터 덩어리

View Model
- Model 로 부터 가져온 데이터를 View 에 적합한 형태의 데이터로 가공 한다.
- ViewModel 이 변경될 때마다 해당 ViewModel 과 관련된 View 화면이 자동으로 반영된다.

View(Storyboard/xib + ViewController)
- 뷰의 레이아웃과 생명주기를 담당한다.

* 1개의 View 에는 1개의 ViewModel 이 존재하게 된다.

이상적인 구현 방법
- SwiftUI 를 이용
- RxSwift 를 이용

지금 문제점
하지만 기존 MVC 패턴 프로젝트에서 잘 운용하지 못하는 RxSwift 를 사용하기에는 부담이 있다.
또한, SwiftUI 의 지원 버전이 iOS 13 이상 버전을 지원하기에 지금 프로젝트의 타깃 버전 iOS 9 에서는 불가능 하다.

대안
따라서 지금 사용 가능한 기술 범위 내에서 MVVM 패턴을 다음과 같이 구현해 본다.

 

참고

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=hobin1019&logNo=221616197346 

https://42kchoi.tistory.com/292

https://hryang.tistory.com/16

 

'Developer > iOS' 카테고리의 다른 글

Apple Intelligence  (0) 2024.09.24
cocoapods-binary-cache 를 이용한 빌드 속도 개선 검토  (0) 2022.05.27
UIAlertController 를 여러번 띄우기  (0) 2020.08.20
MDM Push 인증서 만들기  (9) 2015.11.18
pem 만들기 커멘드  (0) 2015.09.04