Spoločnosť Apple poskytuje mnoho rámcov na vývoj aplikácií pre počítače Macintosh (knižnice kódov), ktoré môže vaša aplikácia volať na vykonávanie tisícok operácií v systéme OS X. Mnohé z týchto rámcov, ako napríklad súprava PDF, pozostávajú z tried Objective-C, z ktorých môže vaša aplikácia vytvárať a používať objekty vo svojich aplikáciách. Niektoré z týchto rámcov sú však len knižnice funkcií, ktoré môže vaša aplikácia vykonávať.
Rámec CFNetwork je napríklad súbor funkcií, ktoré môže vaša aplikácia použiť na vykonávanie vyladených sieťových pripojení. Trieda NSURL poskytuje dobrý súbor základných sieťových operácií, ktoré sú skvelé na získavanie údajov pomocou adresy URL. Ak vaša aplikácia vyžaduje väčšiu kontrolu nad sieťovou komunikáciou, ktorú iniciuje, budete musieť použiť rámec CFNetwork a jeho funkcie. Na prípravu požiadavky HTTP na prenos na konkrétnu adresu URL môžete použiť nasledujúci kód:
CFStringRef httpBody = CFSTR( " ); CFStringRef headerFieldName = CFSTR( "Cookie" ); // pridanie konkrétneho súboru cookie do požiadavky HTTP CFStringRef headerFieldValue = CFSTR( "loginID=moje_používateľské_meno; heslo=moje_heslo;" = ur = lCFStringRef .diabeticpad.com" ); CFURLRef urlRef = CFURLCreateWithStrign( kCFAllocatorDefault, url, NULL ); CFStringRef requestMethod = CFSTR( "GET" ); CFHTTPMessageRef request = CFHTTPMessageCreateRequest(,CFTPMessageCreateRequest,,CFTPMessageCreateRequest, kCFAllocatorBetody url,BPV requestM httpersHThodody,urlSHTody) // pridanie cookie CFHTTPMessageSetHeaderFieldValue( request, headerFieldName, headerFieldValue ); CFDataRef serializedHttpRequest = CFHTTPMessageCopySerializedMessage( request );
Keď bude mať váš kód serializovanú požiadavku, vaša aplikácia môže otvoriť stream zápisu, aby doručila požiadavku na miesto určenia.
Všetky rámce Apple založené na C poskytujú súbor funkcií na vykonávanie tohto typu programovania nižšej úrovne. Váš kód bude komplikovanejší, ale Apple neposkytuje triedy Objective-C pre všetky svoje rámce. Ak skutočne potrebujete funkcie dostupné v jednom z týchto rámcov, je to jediný spôsob, ako môžete dosiahnuť ciele svojej aplikácie. Nasledujúce rámce neposkytujú triedy Objective-C:
Ak chcete vytvárať aplikácie, ktoré dokážu naplno využívať funkcie OS X, musíte byť pripravení podporovať používanie knižníc kódov, ktoré nie sú Objective-C.