Фондовый комплект - Foundation Kit
Эта статья нужны дополнительные цитаты для проверка.Декабрь 2009 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
В Фондовый комплект, или просто Фонд для краткости, это Цель-C рамки в OpenStep Технические характеристики. Он предоставляет базовые классы, такие как классы-оболочки и классы структур данных. Эта структура использует префикс NS (для Следующий шаг, или же Следующий /Sun Microsystems ). Это также часть Какао и из Быстрый стандартная библиотека.
Классы
NSObject
Этот класс является наиболее распространенным базовым классом для Цель-C иерархий и предоставляет стандартные методы работы с объектами управление памятью связаны с ними и запрашивают их.
NSString и NSMutableString
Класс, используемый для нить манипуляции, представляющие собой Unicode строка (чаще всего используется UTF-16 в качестве внутреннего формата). NSString неизменен, поэтому его можно только инициализировать, но нельзя изменять. NSMutableString - это изменяемая версия.
NSValue и NSNumber
NSValue - это класс-оболочка для Типы данных C, а NSNumber - это класс-оболочка для C числовые типы данных, такие как int, двойной, и плавать. В структуры данных в 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 Какао API. Начиная как преемник OPENSTEP / Mach, эта структура отклонилась от OpenStep соблюдение, а в некоторых местах несовместимо. Foundation Kit находится в iOS Какао Touch API. Эта структура основана на macOS Cocoa.[нужна цитата ]
GNUstep
Foundation Kit реализован в GNUstep Базовый пакет (libs-base). Эта реализация в основном сопоставима (отсутствуют 4 класса) и стремится быть сопоставимой как с OpenStep API и выше macOS дополнения. Недостающие классы также были исключены Apple.[1]
Кокотрон
Foundation Kit реализован в Кокотрон, реализация Cocoa с открытым исходным кодом. Это также часть Darling.
PureFoundation
PureFoundation - это реализация Foundation с открытым исходным кодом, которая реализует Foundation путем упаковки Основной фундамент, как и в Cocoa, а не создавать отдельный фонд с нуля, как GNUstep и Cocotron.
SwiftFoundation
SwiftFoundation (swift-corelibs-foundation) - открытый исходный код Apple Быстрый реализация Foundation API для платформ, на которых нет среды выполнения Objective-C. Он также включает в себя реализацию Основной фундамент.[2]
ApportableFoundation
ApportableFoundation - это реализация Foundation Kit (Foundation, CoreFoundation и CFNetwork), основанная на выпуске Apple CFLite. Он работает на Android и другие Linux systems и составляет часть уровня перевода Darling macOS для Linux.
Смотрите также
Рекомендации
- ^ «Соответствие OpenStep». GNUstep (Базовый). Получено 17 февраля 2020.
- ^ "swift-corelibs-foundation". GitHub.