[iOS] MVC구조, UIKit, trait condition

Bibi·2022년 3월 4일
0

MVC 구조 (from About App Development With UIKit)

https://developer.apple.com/documentation/uikit/about_app_development_with_uikit

Code Structure of a UIKit App (UIKit 앱의 코드 구조)

UIKit 앱의 구조는 MVC 디자인 패턴을 기반으로 한다.

  • Model : 앱의 데이터와 비즈니스 로직을 관리한다.
    • 개발자는 앱의 데이터 구조를 나타내는 모델 객체를 제공해야 한다.
    • UIKit과 Foundation 프레임워크, Swift Standard Library에서, 모델 객체를 정의하는 데 필요한 많은 기본 타입을 제공한다.
  • View : 데이터의 시각적 표현을 제공한다.
    • UIKit이 대부분의 뷰 객체를 제공하며, 필요하다면 커스텀 뷰를 정의할 수 있다.
  • Controller : Model 과 View 사이의 다리 역할을 하며, 적절한 시간에 둘 사이에서 데이터를 이동시킨다.
    • '모델의 데이터 객체'와 'UIKit 뷰'의 정보 교환을 조정하는 것은 뷰 컨트롤러와 앱 델리게이트 객체이다.

UIKit은 앱의 컨트롤러와 뷰 레이어의 대부분의 객체를 제공한다. 특히 UIView라는, 컨텐츠를 화면에 보여주는 클래스를 제공한다. UIApplication 객체는 앱의 메인 이벤트 루프를 실행하고, 앱의 전체적인 라이프사이클을 관리한다.

App and Environment

https://developer.apple.com/documentation/uikit/app_and_environment

라이프사이클 이벤트와 앱의 UI 화면을 관리하며, 앱이 실행되는 환경 및 특성에 대한 정보를 가져온다.

UIKit은 trait collection(특성 컬렉션) 을 사용해 현재 환경에 대한 세부 정보를 전달한다. 특성 컬렉션은 장치 설정, 인터페이스 설정, 사용자 기본 설정의 조합을 반영한다.

  • 예를 들어, 현재 view 또는 view Controller에 다크 모드가 활성화 되어 있는지

0개의 댓글