Что такое Платформы?
Платформа является иерархическим каталогом, инкапсулирующим совместно используемые ресурсы, такие как динамическая совместно используемая библиотека, файлы пера, файлы образа, локализованные строки, заголовочные файлы и справочная документация в единственном пакете. Многократные приложения могут использовать все эти ресурсы одновременно. Системные нагрузки их в память по мере необходимости и доли одна копия ресурса среди всех приложений, когда это возможно.
Платформа является также пакетом, и к его содержанию можно получить доступ с помощью Core Foundation Bundle Services или Какао класс NSBundle. Однако в отличие от большинства пакетов, пакет платформы не появляется в Средстве поиска как непрозрачный файл. Пакет платформы является стандартным каталогом, по которому может переместиться пользователь. Это упрощает для разработчиков просматривать содержание платформы и просматривать любую дополнительную документацию и заголовочные файлы.
Платформы служат той же цели как статические и динамические совместно используемые библиотеки, т.е. они предоставляют библиотеке подпрограмм, которые может вызвать приложение для выполнения определенной задачи. Например, платформы Набора и Основы Приложения обеспечивают программируемые интерфейсы для классов Какао и методов. Платформы предлагают следующие преимущества перед статически соединенными библиотеками и другими типами динамических совместно используемых библиотек:
Группа платформ имела отношение, но отдельный, ресурсы вместе. Эта группировка упрощает устанавливать, удалять, и определять местоположение тех ресурсов.
Платформы могут включать более широкое разнообразие типов ресурсов, чем библиотеки. Например, платформа может включать любые соответствующие заголовочные файлы и документацию.
Многократные версии платформы могут быть включены в тот же пакет. Это позволяет быть обратно совместимым с более старыми программами.
Только одна копия ресурсов платформы только для чтения находится физически в памяти в любой момент времени, независимо от того, сколько процессов использует те ресурсы. Это совместное использование ресурсов сокращает объем потребляемой памяти системы и помогает улучшить производительность.
Дарвинский уровень содержит много статических и динамических библиотек, но иначе, большинство интерфейсов OS X упаковывается как платформы. Некоторые ключевые платформы — включая Углерод, Какао, Прикладные службы и Core Services — обеспечивают удобные группировки нескольких меньших, но связанных платформ. Эти группы платформы вызывают платформами зонтика, и они действуют как уровень абстракции между технологией и подплатформами та реализация та технология.
В дополнение к использованию системных платформ можно создать собственные платформы и использовать их конфиденциально для собственных приложений или сделать их общедоступными другим разработчикам. Частные платформы являются подходящими для модулей кода, которые Вы хотите использовать в Ваших собственных приложениях, но не хотите, чтобы другие разработчики использовали. Общедоступные платформы предназначаются для использования другими разработчиками и обычно включают заголовки и документацию, определяющую открытый интерфейс платформы.