Среда разработки программного обеспечения
Cocoa Touch — это среда разработки приложений [1] для создания программ для работы на iOS для iPhone и iPod Touch , iPadOS для iPad , watchOS для Apple Watch и tvOS для Apple TV от Apple Inc.
Cocoa Touch предоставляет уровень абстракции iOS, операционной системы для iPhone, iPod Touch и iPad. Cocoa Touch основан на наборе инструментов MacOS Cocoa API и, как и он, в основном написан на языке Objective-C . Cocoa Touch позволяет использовать оборудование и функции, которых нет на компьютерах MacOS и, следовательно, они являются уникальными для линейки устройств iOS. Как и Cocoa, Cocoa Touch следует архитектуре программного обеспечения Модель-Представление-Контроллер (MVC).
Cocoa Touch содержит другой набор графических элементов управления , чем Cocoa. Инструменты для разработки приложений на базе Cocoa Touch включены в iOS SDK .
Cocoa Touch по отношению к другим слоям
Технологии iOS, watchOS и tvOS можно рассматривать как набор слоев: Cocoa Touch на самом высоком уровне и Core OS/ ядро на нижнем.
Иерархическое представление технологий iOS, watchOS и tvOS можно представить следующим образом:
- Какао Тач
- Медиа/сервисы приложений
- Основные услуги
- Ядро ОС/iOS
Основные особенности
Некоторые из основных функций и технологий Cocoa Touch:
- Расширение приложения
- Управление данными
- Передавать
- Средство выбора документов
- AirDrop
- ТекстКит
- UIKit Динамика
- Многозадачность
- Автоматический макет
- Раскадровки
- Сохранение состояния пользовательского интерфейса
- Служба push-уведомлений Apple
- Локальные уведомления
- Распознаватели жестов
- Стандартные контроллеры системного представления
Основные фреймворки
Cocoa Touch предоставляет ключевые платформы для разработки приложений на устройствах под управлением iOS. Вот некоторые из этих ключевых рамок:
- Фондовый комплект
- UIKit (на основе Application Kit )
- GameKit
- iAd (производство прекращено в 2016 году)
- MapKit
- Интерфейс адресной книги
- Пользовательский интерфейс EventKit
- Интерфейс сообщений
- Центр уведомлений
- Пушкит
- Твиттер
Порты
WinObjC от Microsoft , мост iOS на базе GNUstep для универсальной платформы Windows , содержит рабочую реализацию фреймворков Cocoa Touch, таких как Foundation, UIKit и MapKit, выпущенных под лицензией MIT . [2] Одна из реализаций UIKit основана на XAML . [3]
Различные попытки пытались перенести UIKit, модифицированный AppKit от Cocoa Touch, на macOS:
- Chameleon — это порт UIKit на macOS 2014 года. [4]
- UXKit от ZeeZide — это более поздний порт UIKit для macOS. Он существует на уровень выше AppKit и UIKit. [5]
- Apple использовала частную платформу «UXKit» для версии Photos.app 2015 года. [6]
- Apple сделала мост более официальным с помощью проекта «iosMac» или «Marzipan» в 2018 году, который поместил каталог «iOSSupport», полный платформ iOS, в macOS Mojave . Первоначально их использование разработчиками было ограничено [7] и, наконец, было официально объявлено с выпуском Mac Catalyst в 2019 году. [8]
Рекомендации
- ^ «Какао (Прикосновение)» . разработчик.apple.com . Проверено 21 ноября 2019 г.
- ^ «Microsoft/WinObjC/Frameworks: Objective-C для Windows». Гитхаб . Проверено 17 февраля 2020 г.
- ^ «WinObjC: перенос элементов управления UIKit в XAML» . Гитхаб .
- ^ Хибер, Шон. «BigZaphod/Chameleon: Chameleon — это порт Apple UIKit для iOS (и некоторых минимальных связанных фреймворков) на Mac OS X». Гитхаб .
- ^ «ZeeZide/UXKit: напишите код, который работает как на UIKit, так и на AppKit». Гитхаб . ЗиЗид. 19 декабря 2019 года . Проверено 17 февраля 2020 г.
- ↑ Холл, Зак (5 февраля 2015 г.). «UIKit-подобная платформа под названием UXKit, используемая в Photos для Mac». 9to5Mac .
- ↑ Демаси, Адам (7 июня 2018 г.). «Краткий обзор UIKit на macOS».
- ^ "Mac Catalyst". Документация разработчика Apple . Проверено 17 февраля 2020 г.