본문 바로가기

iOS

CocoaTouch Framework란 무엇일까?

안녕하세요. ☁️ On the Swift의 윤태중입니다.


iOS를 공부하려 책을 핀 순간 나오는 Cocoa Touch Framework...


이건 도대체 무엇인지 아주 간략하게나마 이해하기 위해서 정리해보려 합니다!


# CocoaTouch Framework란 무엇일까?


먼저 Cocoa에 대해서 알아보면,

Cocoa는 Apple의 macOS용 API입니다. 간단하게 macOS의 운영체제 계층을 살펴보면 아래 그림과 같습니다.


[macOS의 운영체제 계층]



보시다시피 Cocoa Application Layer가 가장 상단에 위치하고 있습니다.


그래서인지 이 Cocoa Application Layer의 역할은


 앱의 모양 및 사용자 작업에 대한 애플리케이션의 응답성을 담당합니다.


또한 Notification Center, 전체 화면 모드 및 Auto Save와 같은 OS X 사용자 환경을 정의하는 등 많은 기능도 포함되어 있습니다.




하지만 저희는 macOS상에서 가 아닌 iOS상에서 앱을 개발하고


iOS를 사용하는 기기들은 모두 화면을 터치하는 동작이 포함되어 있습니다.


그래서 iOS에서의 Cocoa Framework는 Cocoa Touch Framework라고 호칭합니다.


아래는 iOS의 운영체제 계층입니다.



[iOS의 운영체제 계층]



iOS에는 macOS의 가장 low level layer인 Kernel and Device Drivers가 없네요...?


흠... 왜인지는 모르겠지만... 따로 iOS Kernel layer가 있는 건지 아니면


Core OS Layer에서 위의 기능을 담당하는 건지 좀 더 공부해야 할 것 같습니다... 😅




이렇게 보면 Cocoa와 Cocoa Touch가 아예 다른 Framework라고 느껴지는 것 같지만


어플리케이션의 동작을 담당하는 Layer라는 것은 같고


다만 쓰이는 환경(Cocoa - macOS, Cocoa Touch - iOS)만 다르다고 이해하고 좀 더 깊게 공부하면 될 것 같습니다.


또 다른 차이점은 Cocoa는 AppKit, Cocoa Touch는 UIKit 가 사용된다는 점....? 🙂


(저 둘의 차이도 나중에는 알아야겠죠...?)


그럼 Cocoa Touch에는 어떤 것들이 있을까요??

cocoa touch framework에 대한 이미지 검색결과

[Cocoa Touch Framework]



위 그림에서 보시다시피 Cocoa Touch에는


Multi-Touch Events 부터 View Hierarchy, 다양한 Picker 그리고 Camera기능까지 있습니다!!!


확실히 저희가 기본적인 앱을 만들때 필요한 기능들, 사용자와 바로 연결되는 기능들이


전부 Cocoa Touch Framework안에 있는 것 같습니다. 🙂


일단 저 기능들을 이해하고 손 쉽게 다룰수 있도록 연습부터 해야겠네요...ㅎㅎ




깊게는 아니지만 그래도 Cocoa Touch가 무엇이고 어떤 역할을 하는지 정말 간단하게 공부해봤습니다...


더 나은 iOS / macOS 개발자가 되려면 더 공을 들여서 알아가야겠죠.


뭐든지 중요한 건 기본이니까 한 번에 다 이해를 못 하더라도 나중에는 꼭 이해하도록


멈추지 않고 공부해야겠습니다! 🙂


Reference


Cocoa Application Layer




아직 모르는 것이 많고 알아가는 과정입니다.

잘못된 것이 있다면 댓글로 남겨주신다면 감사하겠습니다! 😊

'iOS' 카테고리의 다른 글

UIView의 ContentMode정리  (0) 2019.03.24
Mapkit이 Blank Screen 되었다.  (0) 2019.03.07
CocoaPods를 사용해보자.  (0) 2018.11.08
View Controller에 대해 알아보자.  (0) 2018.10.27
App LifeCycle에 대해 알아보자.  (0) 2018.10.25
CocoaTouch Framework란 무엇일까?  (0) 2018.10.23

태그