Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

teunteun2

[Swift] Cocoa Touch Framework | Cocoa | NSObject 에 대해 본문

iOS

[Swift] Cocoa Touch Framework | Cocoa | NSObject 에 대해

teunteun2 2022. 3. 15. 13:50

iOS의 계층구조 중 최상위 계층인 Cocoa Touch

~ Cocoa Touch Framework ~

iOS 개발을 위해 필요한 여러 도구를 포함한 최상위 프레임워크

https://developer.apple.com/library/archive/documentation/General/Conceptual/DevPedia-CocoaCore/Cocoa.html

 

Cocoa (Touch)

Retired Document Important: This document may not represent best practices for current development. Links to downloads and other resources may no longer be valid. Cocoa (Touch) Cocoa and Cocoa Touch are the application development environments for OS X and

developer.apple.com


1-1. 여기서 Cocoa란 ?

"Cocoa"라는 용어는 Objective-C 런타임에 기반하고 루트 클래스 NSObject에서 상속되는

클래스 또는 개체를 일반적으로 지칭하는 데 사용됩니다.

 

NSObject ?

대부분의 Objective-C 클래스 계층의 루트 클래스.

이 계층에서 하위 클래스는 런타임 시스템에 대한 기본 인터페이스,

Objective-C 개체로 동작하는 기능을 상속합니다.

 

 

Cocoa Touch Framework가 Objective-C 런타임을 기반으로 하지만

Swift와도 완전히 호환되기 때문에 두 언어 모두 쓸 수 있는 것이라 해요!

 


1-2. Cocoa Framework 와 Cocoa Touch Framework 의 차이

 

Cocoa Framework 

맥OS 개발에 이용되는 Foudation framework, AppKit framework을 포함한 프레임워크

 

Cocoa Touch Framework

iOS 개발에 이용되는 Foundation framework, UIKit framework을 포함한 프레임워크 

 

* OS X는 macOS의 이전명칭


1-3. Foundation & UIKit

보통 XCode에서 새로운 파일을 만들 때

Swift file로 만들면 기본으로 Foundation이 import 되어 있고,

Cocoa Touch Class로 만들면 UIKit이 import 되어 있는데요 !

 

Swift 파일 생성 시
Cocoa Touch Class 파일 생성 시

 

여기서 나오는 Foundation, UIKit이 바로

우리가 iOS 개발을 할 때 꼭 필요한 프레임워크로

Cocoa Touch Framework에 포함되어 있습니다.

 

둘의 차이와 UIKit 내부에 어떤 객체들이 있는지

다음 포스팅에서 살펴볼 수 있습니다 : )