Cocoa Touch FrameWork
UIKit/Foundation/CoreData/MapKit/CoreAnimation 등을 포함하는 프레임워크
iOS개발 최상위 프레임워크
Foundation
기본적인 테이터타입, 자료구조, 네트워크 통신, 파일 관리 등 프로그램의 중심을 담당
UIKit
사용자 인터페이스 관리, 이벤트 처리 등 주로 기능을 구현해주는 프레임 워크
UIKit에는 Foundation 프레임워크를 포함하고 있음
UILabel, UIButton 등 앞에 대체로 UI가 붙은 클래스들이 대부분
MVC 패턴
Model
앱에 데이터 비즈니스로직을 가짐
View
사용자에게 데이터를 보여주는 UI를 담당
Controller
Model과 View의 중간 역할
View로부터 사용자 전달받아 Model에게 어떤 작업을 하는지 알려줌
Model의 데이터 변화를 View에게 전달하여 View를 어떻게 업데이트할지 알려줌
현실MVC디자인 패턴들은 View와 Controller이 강하게 연결되어 있음
거의 모든것을 담당하고 Controller가 View의 Lifecycle을 관여하여 분리하기가 어려움
프로젝트가 커질수록 컨트롤러가 비대해져 내부구조가 복잡하게 되어 유지보수가 힘들어짐
이를 보완한 MVVM, VIPER 패턴등 사용
UIView
화면의 직사각형 영역에 대한 내용을 관리하는 개체
화면을 구성하는 기본 클래스
ViewController
앱의 근간을 이루는 객체
사용자가 화면을 보는 것에 대한 관리 기능을 제공
데이터 변화에 따라서 View 컨텐츠를 업데이트
view들과 함께 상호작용 응답
view를 리사이징하고 전체적인 인터페이스의 레이아웃 관리
다른 뷰컨트롤러들과 함께 앱을 구성
'Swift랑 친해지기 > Swift문법정리' 카테고리의 다른 글
[Swift] convenience init (보조 이니셜라이저) (0) | 2023.08.03 |
---|---|
async/await 로 비동기 처리 하기 (Swift) (0) | 2023.06.01 |
[Swift] 고차함수 (map,filter,reduce) (0) | 2022.09.27 |
[Swift] try-catch (에러처리) (0) | 2022.09.27 |
[Swift] 열거형 (Enum) (1) | 2022.09.22 |