코코아 터치 계층 (Cocoa Touch Layer)
iOS 애플리케이션 개발에 주 축을 이루는 개발환경
애플리케이션의 다양한 기능 구현에 필요한 여러 프레임워크를 포함하는 최상위 프레임워크 계층
macOS 애플리케이션 제작에 사용합니다 !
'코코아' '코코아 터치'
Objective-C 런타임을 기반으로하고, NSObject를 상속받는 모든 클래스 또는 객체를 가리킬 때 사용합니다.
핵심 프레임워크인 UIKit 와 Foundation 을 포함합니다.
Frameworks
Foundation 프레임워크는 기본 객체 동작을 정의하는 루트 클래스인 NSObject 를 구현합니다.
기본 유형 (예: 문자열 및 숫자) 과 컬렉션 (예: 배열 및 사전) 을 나타내는 클래스를 구현합니다.
Foundation 은 절차 인터페이스를 게시하는 Core Foundation 프레임워크를 기반으로 합니다.
AppKit, UIKit Framework
응용 프로그램의 사용자 인터페이스를 개발하기 위해 AppKit 및 UIKit 프레임워크를 사용합니다. 두 프레임워크의 목적이 동일하지만 플랫폼에 따라 다릅니다. 이벤트 처리, 그리기, 이미지 처리, 텍스트 처리, 타이포그래피 및 응용 프로그램 간 데이터 전송을위한 클래스가 포함됩니다. 또한 테이블보기, 슬라이더, 버튼, 텍스트 필드 및 경고 대화 상자와 같은 사용자 인터페이스 요소도 포함됩니다.
The Language
Objective-C 는 Cocoa 및 Cocoa Touch 애플리케이션을 개발하기 위한 기본 언어입니다. 그러나 Cocoa 및 Cocoa Touch 애플리케이션 용 프로젝트에는 C++ 및 ANSI C 코드가 포함될 수 있습니다. 또한 PyObjC 및 RubyCocoa 와 같이 Objective-C 런타임에 연결된 스크립팅 언어를 사용하여 Cocoa 애플리케이션을 개발할 수 있습니다.
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
하위 계층일수록 하드웨어에 친화적이고, 상위 계층일수록 사용자 친화적이다.
Cocoa Touch 계층
하위 계층의 프레임워크를 사용하여 애플리케이션을 직접 구현하는 프레임워크.
UIKit, GameKit, MapKit
Media 계층
상위 계층인 코코아 터치 계층에 그래픽 관련 서비스나 멀티미디어 관련 서비스를 제공
Core Graphics, Core Text, Core Audio, Core Animation, AVFoundation
Core Service 계층
문자열 처리, 데이터 집합 관리, 네트워크, 주소록 관리, 환경 설정 등 핵심적인 서비스들을 제공.
또한 GPS, 나침반, 가속도 센서나 자이로스코프 센서와 같이 디바이스의 하드웨어 특성에 기반한 서비스도 제공.
Foundation, Core Foundation, Core Location, Core Motion, Core Animation, Core Data
Core OS 계층
커널, 파일 시스템, 네트워크, 보안, 전원 관리, 디바이스 드라이버 등이 포함
iOS가 운영 체제로서 기능을 하기 위한 핵심적인 영역
이 중 UIKit 는 Cocoa Touch 계층이고, Foundation 은 Core Sevices 계층으로 UIKit 를 상속하는 것만으로도 Foundation 도 상속한 결과가 나온다.
참조
'iOS > STUDY' 카테고리의 다른 글
[iOS] Foundation (0) | 2021.02.02 |
---|---|
[iOS] UIKit (0) | 2021.02.02 |
[iOS] AVFoundation, Timer (0) | 2021.01.30 |
[iOS] UIButton, UISlider, UILabel (0) | 2021.01.29 |
[iOS] 컨트롤 이벤트 종류 (controll event) (0) | 2021.01.29 |