Cocoa Framework란?
Cocoa Framework는 애플에서 만든 맥용 어플리케이션을 만들 때 사용하는 프레임워크입니다.
iOS 개발을 위해선 Cocoa Touch Framework를 사용하고, macOS(OS X) 개발을 위해선 Cocoa Framework를 사용합니다.Cocoa Touch Framework를 통해서 iOS 개발 환경에 필요한 도구를 꺼내 쓸 수 있습니다.

사진에서 볼 수 있듯이 Cocoa Touch Framework는 iOS개발을 위한 최상위 프레임워크입니다!
우리는 iOS개발을 위해 주로 UIKit와 Foundation을 주로 사용하게 됩니다.
UIKit
iOS 애플리케이션의 사용자 인터페이스를 구현하고 관리하며 이벤트를 처리하는 게 주 목적인 프레임워크입니다.테이블뷰, 슬라이더, 버튼, 텍스트 필드 등 애플리케이션의 화면을 구성하기도 하고,제스처 처리, 애니메이션, 그림 그리기, 이미지 처리, 텍스트 처리 등의 이벤트도 처리합니다.
Foundation
Foundation은 말그대로 프로그램의 기본을 담당하는 프레임워크입니다.원시 데이터 타입(Int, String, Double), 컬렉션 타입(Array, Dictionary, Set) 및 운영체제 서비스를 사용해서
어플리케이션의 기본적인 기능을 관리합니다.
Foundation에선 위에서 언급한 것 외에도 애플리케이션 지원, 파일 및 데이터 관리, 네트워킹을 담당합니다.
Cocoa Framework의 계층구조
코코아 프레임워크는 다음과 같은 계층구조를 갖습니다.
하위 계층일 수록 하드웨어에 친화적이고, 상위 계층일 수록 사용자 친화적입니다.UIKit는 가장 위인 Cocoa Touch 계층이고, Foundation은 Core Service 계층이에요!
그래서 UIKit를 상속하는 것만으로도, Foundation도 함께 상속한 결과를 나타낸답니다!
각 계층에 있는 프레임워크들을 살펴볼게요!
Cocoa Touch 계층
하위 계층의 프레임워크를 사용하여 애플리케이션을 직접 구현하는 프레임워크UIKit, GameKit, MapKit
Media 계층
상위 계층인 코코아 터치 계층에 그래픽 관련 서비스나 멀티미디어 관련 서비스를 제공Core Graphics, Core Text, Core Audio, Core Animation, AVFoundation
Core Service 계층
문자열 처리, 데이터 집합 관리, 환경 설정 등 핵심적인 서비스들을 제공하고,
디바이스의 하드웨어 특성(GPS, 나침반, 가속도 센서 등)에 기반한 서비스도 제공Foundation, Core Animation, Core Data, Core Foundation, Core Location, Core Motion
Core OS 계층
커널, 파일 시스템, 네트워크, 보안, 전원 관리, 디바이스 드라이버 등이 포함
iOS가 운영 체제로서 기능을 하기 위한 핵심적인 영역
'📂 Archive > iOS-Swift' 카테고리의 다른 글
| [iOS/Swift] Tab bar(탭바) 와 Tool bar(툴바) 차이 (0) | 2021.05.17 |
|---|---|
| [iOS/Swift] 애플의 H.I.G (Human Interface Guide) 가이드라인 (0) | 2021.05.12 |
| [iOS/Swift] Xcode 톺아보기 (0) | 2021.05.11 |
| [iOS/Swift] Controls - Label(라벨), Button(버튼), Text Field(텍스트 필드) 구현하기 (0) | 2021.05.11 |
| [iOS/Swift] Xcode 단축키 정리 (0) | 2021.05.10 |