GGURUPiOS

Swift Architecture - MVC 본문

Swift/Architecture

Swift Architecture - MVC

꾸럽 2023. 4. 25. 16:18

MVC ( Model - View - Controller )

MVC는 디자인 패턴 중 하나로, 앱의 구조를 나누어 관리하고 개발하는 방법론 중 하나 임

MVC 패턴은 앱의 구성 요소를 세 가지 주요 부분으로 나누어 관리 함

  • Model: 데이터 관리
  • View: UI를 담당함 (UIview, UILabel 등)
  • Controller: 모델과 뷰의 중재자역할, 모델의 데이터 갱신, 뷰 업데이트, 상호작용 처리 (UIViewController)

Model

  • 데이터 관리
  • 비지니스 로직 처리
  • 데이터 상태 관리
  • 독립성 유지

View

  • 데이터의 시각적 표시
  • 사용자 입력 처리
  • UI 이벤트 처리
  • 업데이트된 모델 처리 (변경 감지)
  • UIKit의 UILabel, UIButton 등

Controller

  • 위의 말한 Model과 View의 역할을 서로 중재해주는 중재자 역할

장점

  • Model, View, Controller로 구분되어 있어 비교적 간단한 패턴임 ( 구조파악과 확장성에 좋음 )

단점

  • MVC 패턴의 가장 큰 문제는 앱이 커질수록 Controller의 역할이 커진다는 점