Эта статья требует дополнительных ссылок для проверки . ( декабрь 2009 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) |
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
Ссылки [ править ]
- ^ «Соответствие OpenStep» . GNUstep (База) . Дата обращения 17 февраля 2020 .
- ^ "swift-corelibs-foundation" . GitHub .
Внешние ссылки [ править ]
- База GNUstep
- Справочник по Apple Foundation Framework
- Раздел Foundation в Руководстве по основам какао
- Список классов в спецификации OpenStep