Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом(Надёжин О.А).docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
13.16 Mб
Скачать

Слой Cocoa Touch

В прошлой статье мы уже писали о Cocoa Touch и ее связи с Objective-C. В сегодняшней статье хотелось бы рассказать о Cocoa Touch больше с функциональной точки зрения, а точнее о том, как приложения основываются на слое Cocoa Touch, и какова ее роль в iOS-архитектуре.

Слой Cocoa Touch представляет собой самый верхний слой в iOS-архитектуре. Он содержит некоторые ключевые платформы, на которых основываются родные приложения iOS, и одной из них является платформа UIKit. Слой Cocoa Touch определяет основную инфраструктуру приложения и предлагает ряд жизненно важных технологий вроде мультизадачности или ввода посредством сенсоров.

Как мы уже отмечали, iOS-приложения плотно основываются на платформе UIKit. Родные iOS-приложения не могут оперировать, если они не привязаны к платформам UIKit и Foundation. Платформа UIKit тесно связана с iOS. Существует эквивалентная среда разработки платформе OS X, которая имеет название Application Kit или среда разработки AppKit. Среда разработки UIKit предоставляет инфраструктуру для графических iOS-приложений, управляемых событиями. Тем не менее, она также работает с другими аспектами ядра, присущих платформе iOS (вроде мультизадачности, оповещений и инструментов доступности).

Слой Cocoa Touch предоставляет разработчикам большое количество свойств высокого уровня вроде автоматической расстановки шаблона, печати, функций распознавания жестов, а также поддержку документов. Вдобавок к платформе UIKit, она также содержит платформы Map Kit, Event Kit и Message UI. Если вам нужен полный перечень платформ в слое Cocoa Touch, то предлагаем вам обратиться к руководству iOS Technology Overview

Слой Media

Графика, аудио и видео управляются слоем Media. Этот слой состоит из нескольких ключевых технологий, включая Core Graphics, OpenGL ES и OpenAL, AV Foundation, а также Core Media. Media-слой состоит из множества платформ, включая Assets Library для осуществления доступа к фотографиям и видео устройства, Core Image для обработки изображений при помощи фильтров, а также Core Graphics для создания двухмерных графических элементов. Если вам нужен полный перечень платформ в слое Media, то предлагаем вам обратиться к руководству iOS Technology Overview.

Слой Core Services

Слой Core Services отвечает за управление основными системными сервисами, которые используют родные iOS-приложения. Слой Cocoa Touch тесно связан со слоем Core Services в некоторых аспектах функционала. Слой Core Services также предоставляет несколько невосполнимых свойств, вроде блочных объектов, Grand Central Dispatch, In-App Purchase и iCloud Storage.

Одно из основных дополнений в слое Core Services называется ARC или Automatic Reference Counting. Что такое ARC? Это функция на уровне компилятора, представленная в 2011 с выходом iOS 5, которая упрощает процесс распределения памяти в Objective-C. Распределение памяти – это та тема, которую мы не охватим в наших статьях, но вам важно понимать основу распределения памяти при разработке Cocoa-приложений. Automatic Reference Counting – это отличное дополнение, но вам необходимо знать, для чего оно нужно. Вы можете узнать больше о распределении памяти в руководстве The Objective-C Programming Language.

Платформа Foundation - это еще одна важная среда разработки для приложений iOS и OS X. В следующей статье мы расскажем о данной платформе более подробно. Платформа Foundation – это больше чем коллекция удобных классов вроде NSArray, NSDictionary и NSDate. Она предлагает корневой класс NSObject, который предоставляет основной интерфейс для Objective-C, а также предлагает различные парадигмы вроде политики объектов собственности. По образу Core Foundation, среда разработки Foundation делает возможным то, чтобы многие библиотеки и среды разработки могли разделять данные и код.

Еще одна среда разработки слоя Core Services, которая также тесно связана с платформой Foundation, это среда разработки Core Foundation на базе C. Как и Foundation, она позволяет различным библиотекам и средам разработки разделять код и данные. Core Foundation имеет свойство, которое зачастую принято называть бесплатным мостом, который позволяет взаимно заменять объекты Cocoa объектами Core Foundation, и наоборот.

Если вам нужен полный перечень платформ в слое Core Services, то предлагаем вам обратиться к руководству iOS Technology Overview.