La Fundación Kit , o simplemente Fundación para abreviar, es una de Objective-C marco en el OpenStep especificación. Proporciona clases básicas como clases contenedoras y clases de estructura de datos. Este marco utiliza el prefijo NS (para NeXTSun , antes de OpenStep, NX era el prefijo NeXT). También es parte de Cocoa y de la biblioteca estándar de Swift .
Clases
NSObject
Esta clase es la clase base más común para las jerarquías de Objective-C y proporciona métodos estándar para trabajar con objetos mediante la administración de la memoria asociada con ellos y su consulta.
NSString y NSMutableString
Una clase utilizada para la manipulación de cadenas , que representa una cadena Unicode (por lo general, usa UTF-16 como formato interno). NSString es inmutable y, por lo tanto, solo se puede inicializar pero no modificar. NSMutableString es una versión modificable.
NSValue y NSNumber
NSValue es una clase contenedora para tipos de datos C , y NSNumber es una clase contenedora para tipos de datos numéricos C como int , double y float . Las estructuras de datos de Foundation Kit solo pueden contener objetos, no tipos primitivos, por lo que se utilizan contenedores como NSValue y NSNumber en esas estructuras de datos.
NSArray y NSMutableArray
Una matriz dinámica de objetos que admite la indexación en tiempo constante. NSArray es una versión inmutable que solo puede inicializarse con objetos pero no modificarse. NSMutableArray se puede modificar agregando y quitando objetos.
NSDictionary y NSMutableDictionary
Un contenedor de datos asociativo de pares clave-valor con claves únicas. La búsqueda y la adición y eliminación de elementos (en el caso de NSMutableDictionary) es más rápida que lineal. Sin embargo, el orden de los elementos dentro del contenedor no está garantizado.
NSSet y NSMutableSet
Un contenedor asociativo de claves únicas, similar a NSDictionary, con la diferencia de que los miembros no contienen un objeto de datos.
NSData y NSMutableData
Un contenedor para datos de bytes sin procesar. Un objeto de este tipo puede asignar y administrar dinámicamente sus datos, o puede hacer referencia a datos que pertenecen y son administrados por otra cosa (como una matriz numérica estática).
NSDate, NSTimeZone y NSCalendar
Clases que almacenan horas y fechas y representan información de calendario. Ofrecen métodos para calcular las diferencias de fecha y hora. Junto con NSLocale, proporcionan métodos para mostrar fechas y horas en muchos formatos, y para ajustar horas y fechas según la ubicación en el mundo.
Implementaciones importantes
macOS y iOS
El Foundation Kit es parte de macOS Cocoa API. Comenzando como el sucesor de OPENSTEP / Mach , este marco se ha desviado del cumplimiento de OpenStep y, en algunos lugares, es incompatible. El Foundation Kit está en la API Cocoa Touch de iOS . Este marco se basa en macOS Cocoa. [ cita requerida ]
GNUstep
El Foundation Kit está implementado en el Paquete Base de GNUstep (libs-base). Esta implementación es en su mayoría comparable (faltan 4 clases) y pretende ser comparable tanto con la API de OpenStep como con las adiciones posteriores de macOS . Apple también ha eliminado las clases que faltan. [1]
Cocotron
El Foundation Kit se implementa en Cocotron , una implementación de código abierto de Cocoa. También es parte de Darling.
PureFoundation
PureFoundation es una implementación de código abierto de Foundation que implementa Foundation envolviendo Core Foundation , al igual que en Cocoa, en lugar de crear una Foundation separada desde cero como GNUstep y Cocotron.
Fundación Swift
SwiftFoundation (swift-corelibs-foundation) es la implementación Swift de código abierto de Apple de la API Foundation para plataformas donde no hay tiempo de ejecución de Objective-C. También incluye una implementación de Core Foundation . [2]
Fundación Apportable
ApportableFoundation es una implementación de Foundation Kit (Foundation, CoreFoundation y CFNetwork) basada en la versión CFLite de Apple. Funciona en Android y otros sistemas Linux , y forma parte de la capa de traducción Darling macOS para Linux.
Ver también
Referencias
- ^ "Cumplimiento de OpenStep" . GNUstep (Base) . Consultado el 17 de febrero de 2020 .
- ^ "fundación-swift-corelibs" . GitHub .
enlaces externos
- Base GNUstep
- Referencia de Apple Foundation Framework
- Sección de cimientos en la Guía de fundamentos del cacao
- Lista de clases en la especificación de OpenStep