Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Foundation Kit , или просто фонд для краткости, Objective-C рамки в OpenStep спецификации. Он предоставляет базовые классы, такие как классы-оболочки и классы структур данных. Эта структура использует префикс NS (для NeXTSTEP или NeXT / Sun Microsystems ). Он также является частью Cocoa и стандартной библиотеки Swift .

Классы [ править ]

NSObject [ править ]

Этот класс является наиболее распространенным базовым классом для иерархий Objective-C и предоставляет стандартные методы для работы с объектами путем управления связанной с ними памятью и выполнения запросов к ним.

NSString и NSMutableString [ править ]

Класс, используемый для обработки строк , представляющий строку Unicode (чаще всего с использованием UTF-16 в качестве внутреннего формата). NSString неизменяем, поэтому его можно только инициализировать, но нельзя изменять. NSMutableString - это изменяемая версия.

NSValue и NSNumber [ править ]

NSValue - это класс-оболочка для типов данных C , а NSNumber - класс-оболочка для числовых типов данных C, таких как int , double и float . Структуры данных в Foundation Kit могут содержать только объекты, а не примитивные типы, поэтому в этих структурах данных используются оболочки, такие как NSValue и NSNumber.

NSArray и NSMutableArray [ править ]

Динамический массив объектов, поддерживающий индексацию в постоянное время. NSArray - это неизменяемая версия, которая может быть инициализирована только объектами, но не может быть изменена. NSMutableArray может быть изменен путем добавления и удаления объектов.

NSDictionary и NSMutableDictionary [ править ]

Ассоциативный контейнер данных пар ключ-значение с уникальными ключами. Поиск, добавление и удаление элементов (в случае NSMutableDictionary) происходит быстрее, чем линейно. Однако порядок элементов в контейнере не гарантируется.

NSSet и NSMutableSet [ править ]

Ассоциативный контейнер уникальных ключей, похожий на NSDictionary, с той разницей, что члены не содержат объект данных.

NSData и NSMutableData [ править ]

Оболочка для необработанных байтовых данных. Объект этого типа может динамически выделять и управлять своими данными, или он может ссылаться на данные, принадлежащие и управляемые чем-то другим (например, статическим числовым массивом).

NSDate, NSTimeZone и NSCalendar [ править ]

Классы, которые хранят время и дату и представляют календарную информацию. Они предлагают методы для расчета разницы в дате и времени. Вместе с NSLocale они предоставляют методы для отображения даты и времени во многих форматах, а также для настройки времени и даты в зависимости от местоположения в мире.

Основные реализации [ править ]

macOS и iOS [ править ]

Foundation Kit является частью MacOS Cocoa API. Начинаясь как преемник OPENSTEP / Mach , этот фреймворк отклонился от соответствия OpenStep и в некоторых местах несовместим. Foundation Kit находится в iOS Cocoa Touch API. Эта структура основана на macOS Cocoa. [ необходима цитата ]

GNUstep [ править ]

Foundation Kit реализован в базовом пакете GNUstep (libs-base). Эта реализация в основном сопоставима (отсутствуют 4 класса) и стремится быть сопоставимой как с OpenStep API, так и с более поздними дополнениями macOS . Недостающие классы также были исключены Apple. [1]

Кокотрон [ править ]

Foundation Kit реализован в Cocotron , реализации Cocoa с открытым исходным кодом. Это также часть Darling.

PureFoundation [ править ]

PureFoundation - это реализация Foundation с открытым исходным кодом, которая реализует Foundation путем обертывания Core Foundation , как в Cocoa, а не создает отдельный Foundation с нуля, как GNUstep и Cocotron.

SwiftFoundation [ править ]

SwiftFoundation (Свифт-corelibs-фонд) является открытым исходным кодом от Apple Swift реализации API Foundation для платформ , где нет Objective-C во время выполнения. Он также включает реализацию Core Foundation . [2]

ApportableFoundation [ править ]

ApportableFoundation - это реализация Foundation Kit (Foundation, CoreFoundation и CFNetwork), основанная на выпуске Apple CFLite. Он работает на Android и других системах Linux и составляет часть уровня перевода Darling macOS для Linux.

См. Также [ править ]

  • OpenStep
  • Комплект приложений
  • GNUstep
  • Какао (API)
  • Какао Touch

Ссылки [ править ]

  1. ^ «Соответствие OpenStep» . GNUstep (База) . Дата обращения 17 февраля 2020 .
  2. ^ "swift-corelibs-foundation" . GitHub .

Внешние ссылки [ править ]

  • База GNUstep
  • Справочник по Apple Foundation Framework
  • Раздел Foundation в Руководстве по основам какао
  • Список классов в спецификации OpenStep