iOS 계층구조에 대해서 공부해봅시다. (네트워크 OSI 7계층 공부하다가 쓰는글)
Core OS 방향으로 갈수록 Hardware(iPhone)과 가까워지며, Cocoa Touch 계층으로 갈수록 앱과 가까워지는 계층구조입니다. Cocoa Touch에서 Touch를 빼면 MAC OS에 구동되는 Cocoa FrameWork가 됩니다.
Cocoa가 붙는 단어는 Objective C를 기반으로한 NSObject를 상속받는 모든 클래스와 객체를 가리킬 때 사용되는 단어입니다 !_!
이러한 계층구조에 대한 이해가 필요한 이유?
- 우리가 흔히 사용하는 UIKit은 Core Services 계층에 있는 Foundation kit을 포함하고 있습니다. 따라서 자연스럽게 계층의 포함관계를 알고 이러한 Kit들이나 Core Data부분을 사용해야한다고 생각됩니다.
Cocoa Touch
- 앱을 개발하며 가장 많이 사용되는 UIKit 이 포함된 계층
- Apple 지도 이용을 위한 MapKit, Game 제작을 위한 Game kit 또한 이 계층에 포함되어 있습니다.
Media
- Media 라는 단어 그대로 오디오 비디오 등 관련된 기능을 제공합니다.
- AVFoundation (Audio Video) 음성과 영상 재생과 관련한 프레임워크
- 그래픽과 음성 영상과 관련된 주기능이 모여있습니다.
Core Services
- Core Data를 이용 앱을 통해 아이폰에 복잡한 구조의 Data도 저장되게하는 기능이 포함됨
- GPS, 자이로 센서 등 사용할 수 있게해주는 계층이 Core Service
- Foundation Kit이 이 계층에 속하며, 데이터 관리 기능 포함
Core OS
- 아이폰 하드웨어와 가장 가까운 단계인 계층입니다.
- 환경설정, 데이터처리, 네트워크 등 시스템의 주요 관리 기능이 여기서 이루어집니다.
- C기반이며, Low Level API로 구성
'Deep Dive iOS' 카테고리의 다른 글
간단하게 알아보는 GCD vs Swift Concurrency 차이 (0) | 2022.01.18 |
---|---|
Thread Safe한 Core Data 환경 구성하기 (0) | 2022.01.17 |
UIView? Custom View? (0) | 2020.11.12 |
앱이 inactive 상태가 되는 경우 (0) | 2020.11.11 |
iOS/Swift) UIKit 이란? (0) | 2020.11.10 |