Základní nadace - Core Foundation
Vývojáři | Apple Inc. |
---|---|
Typ | Systém knihovna |
Licence | APSL 2.0 |
webová stránka | developer.apple.com |
Základní nadace (také zvaný CF) je C aplikační programovací rozhraní (API) v Operační Systém Mac a iOS, a je směsicí rutin na nízké úrovni a funkce obálky. Většina rutin Core Foundation se řídí určitou konvencí pojmenování, která se zabývá neprůhlednými objekty, například CFDictionaryRef pro funkce, jejichž názvy začínají CFDictionary, a tyto objekty jsou často odkaz počítáno (ručně) až CFRetain
a CFR Vydání
. Interně Core Foundation tvoří základ typů v Cíl-C standardní knihovna a Uhlíkové API.[1]
Nejběžnější použití Core Foundation je pro předávání vlastních primitivních typů pro data, včetně raw bajtů, Unicode struny, čísla, kalendářní data, a UUID, stejně jako sbírky jako pole, sady, a slovníky, do mnoha macOS C rutiny, především ty, které jsou GUI -příbuzný. Na úrovni operačního systému Core Foundation také poskytuje standardizovanou správu předvoleb aplikace prostřednictvím CFPropertyList
, svazek zacházení, spustit smyčky, meziprocesová komunikace přes CFMachPort
a CFNotificationCenter
a základní grafické uživatelské prostředí dialogové okno se zprávou CFUserNotification
.
Mezi další části API patří obslužné rutiny a obálky kolem existujících API pro snadné použití. Rutiny obslužného programu provádějí takové akce jako souborový systém a síť I / O přes CFReadStream
, CFWriteStream
, a CFURL
a endianismus překlad (Byte Order Utilities). Některé příklady souhrnných rutin zahrnují ty pro souhrnné rutiny Core Foundation pro unixové sokety, rozhraní CFSocket API.
Některé typy v Core Foundation jsou „bezplatně přemostěné“ nebo zaměnitelné s jednoduchým obsazením, s typy jejich Foundation Kit protějšky. Například by se dalo vytvořit a CFDictionaryRef
Typ Core Foundation a poté později jednoduše použít standardní cast C k jeho převodu na protějšek Objective-C, NSDictionary *
, a pak použijte požadované metody Objective-C na tomto objektu jako obvykle.
Core Foundation má model zásuvného modulu (CFPlugin), který je založen na Microsoftu Komponentní objektový model.[2]
Dostupnost otevřeného zdroje
Jablko slouží k uvolnění většiny CF jako open-source projekt s názvem CFLite, který lze použít k psaní multiplatformních aplikací pro macOS, Linux, a Okna.[3]
Implementace open-source třetí strany s názvem OpenCFLite rozšiřuje Apple CFLite pro stavění na 32bitové verzi Okna a Linux prostředí. Je udržován jedním z WebKit vývojáři, ale byl zastaven do roku 2015.[4] Karaoke platforma KJams udržuje vidlici od roku 2017. Tato verze od svého programátora Davida M. Cottera podporuje 64bitové systémy a má implementaci CFNetwork s LibreSSL TLS na základě.[5]
Nadace Swift Corelib, záložní verze Foundation Kit pro programovací jazyk Swift pro platformy jiné než Apple, obsahuje téměř plnou verzi Core Foundation vydanou pod Licence Apache 2.0.[6]
GNUstep zahrnuje verzi Core Foundation nazvanou „libs-corebase“.[7]
Viz také
- GLib - ekvivalent GNOME
Reference
- ^ absurdní_fish (2006). "Most".
- ^ „Plug-ins a Microsoft's COM“. Knihovna vývojářů pro Mac. Apple Inc. Archivováno od originál 1. září 2014. Citováno 25. března 2015.
- ^ http://opensource.apple.com/source/CF/
- ^ Projekt OpenCFLite na SourceForge.
- ^ "CFLite". KJams. Citováno 19. února 2020.
- ^ "swift-corelibs-foundation". GitHub.
- ^ „gnustep / libs-corebase: Knihovna GNUstep CoreBase je knihovna obecných, negrafických C objektů“. GitHub. GNUstep. 19. listopadu 2019.
externí odkazy
- Reference Core Foundation na Připojení vývojáře Apple
- OpenCFLite ve společnosti SourceForge
- CFLite včetně CFNetwork pracuje v 64bitové verzi, používá LibreSSL (TLS 1.1, 1.2)