반응형

DesignPattern 2

[iOS] MVVM Pattern

MVVM Pattern MVVM M : Model → Data V : View (ViewController) → Presentation Logic 위치 VM : ViewModel → Business Logic 위치, UI 관련 코드는 존재하지 않음 (→ import UIKit ❌ ) 조금 풀어서 설명해보면 뷰 모델은 모델을 알지만 모델은 뷰 모델을 알지 못한다. 뷰는 뷰 모델을 알지만 뷰 모델은 뷰를 알지 못한다. → 결국, UI와 Presentation Logic, Business Logic을 분리하고자 하는 게 MVVM 아키텍처라 할 수 있다. 그래서 MVVM Pattern으로 작성된 프로그램은 명확한 테스트가 가능하다. 실제로 프로젝트에 적용해보니.. 최근 회사에서 프로젝트를 리팩토링할 수 있는 기..

Programming/iOS 2021.10.08

[iOS] MVC Pattern

MVC iOS의 MVC는 왜 문제가 되는가? 먼저, 일반적인 MVC 패턴을 살펴보자. M : Model V : View C : Controller 사용자가 화면을 Controller를 조작하면 Controller는 Model을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View를 제어해서 사용자에게 전달하게 된다. UI와 Business Logic을 분리할 수 있는 패턴이기 때문에 잘 사용한 MVC 패턴은 쉽게 변경할 수 있는 프로젝트가 된다. 그럼 Apple의 MVC를 한번 보자. 아래 링크로 이동하면 그림이 하나 나오는 데 위와 비슷한 그림이다. 정말 iOS에서 그림과 같은 개발이 가능할까? Model-View-Controller 현실 Apple's MVC (Mass..

Programming/iOS 2021.10.07
728x90
반응형