Swift) 스토리보드를 이용했을 때의 장단점을 설명하시오.
장점
- 어느 위치에 무엇이 있는지 View의 구조와 형태를 한 번에 파악이 가능하다.
- 앱의 Flow Chart를 파악하는 것이 쉽다.
- 코드로 View를 제작하는 것 보다, 구성 요소들을 직접 보며 관리할 수 있어서 View 구성이 편하다.
객체를 하나만 생성하여, 공용으로 사용하고 싶을 때 사용하는 디자인 유형1 | // User의 정보를 저장하는 클래스 |
특정 타입의 인스턴스에서 호출되는 메서드1 | class Sample { |
Model, View, ViewMode
View는 오직 시각적인 요소(레이아웃, 애니매이션 그리고 UI 요소들에 대한 초기화 작업 코드들)로만 이루어져야 하고, View Controller가 View가 된다.ViewModel은 View의 각 UI 요소들에 대한 인터페이스를 제공하며, 중간 역할을 한다.
Model(모델), View(UIView/UIViewController), Presenter
Model은 MVC 패턴에서 의미하는 모델과 같은 역할을 한다. 즉, 앱의 실행에 필요한실질적인 데이터를 갖고 있다.View는UIView와 UIViewController가 여기에 해당하며, 비즈니스 로직과 관련된 일은 모두 Presenter가 하도록 한다.Presenter는 UIKit과 관련이 없는 로직들을 수행하며, 사용자 응답에 반응하거나 UI를 업데이트하는 일을 한다.(비즈니스 로직 관련된 일 수행)
Model(모델), View(뷰), Controller(컨트롤러)
Model에서는 애플리케이션에서 사용할 데이터들을 관리하고, View는 유저 인터페이스를 표현 및 관리한다. Controller는 View와 Model의 다리 역할을 해 View의 입력을 Model이 반영하고, Model의 변화를 View에 갱신하는 역할을 한다.참조 타입(Reference Type)상속 가능값 타입(Value Type)상속 불가능 (protocol은 사용 가능)