कोर फाउंडेशन

From Vigyanwiki
Revision as of 18:40, 17 May 2023 by alpha>Artiverma
Core Foundation
Developer(s)Apple Inc.
Repositorygithub.com/apple/swift-corelibs-foundation
Written inSwift, Objective-C, C
Operating system
TypeSystem library
LicenseAPSL 2.0
Websitedeveloper.apple.com

कोर फ़ाउंडेशन (जिसे सीएफ़ भी कहा जाता है) एप्पल ने अपने ऑपरेटिंग सिस्टम के लिए लिखा है सी (प्रोग्रामिंग लैंग्वेज) एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस (एपीआई) है, और निम्न-स्तरीय रूटीन और रेपर  फंक्शन्स का मिश्रण है। अधिकांश कोर फाउंडेशन रूटीन निश्चित नामकरण सम्मेलन का पालन करते हैं जो अपारदर्शी वस्तुओं हैं, उदाहरण के लिए CFDictionaryRef उन कार्यों के लिए जिनके नाम CFDictionary से प्रारंभ होते हैं, और इन वस्तुओं को अधिकांशतःCFRetain और CFRelease के माध्यम से (मैन्युअल रूप से) गिना जाता है। आंतरिक रूप से, कोर फाउंडेशन उद्देश्य सी मानक पुस्तकालय और कार्बन एपीआई में प्रकारों का आधार बनाता है।[1]

कोर फाउंडेशन का सबसे प्रचलित उपयोग बाइट, यूनिकोड स्ट्रिंग (कंप्यूटर विज्ञान) संख्या, कैलेंडर तिथियां, और सार्वभौमिक रूप से अद्वितीय पहचानकर्ता, सहित डेटा के लिए अपने स्वयं के सर्वप्रथम प्रकारों को पारित करने के लिए है, साथ ही संग्रह जैसे सरणी, सेट और शब्दकोश, कई macOS C (प्रोग्रामिंग लैंग्वेज) रूटीन के लिए हैं। मुख्य रूप से वे जो ग्राफिकल यूज़र इंटरफ़ेस से संबंधित हैं। ऑपरेटिंग सिस्टम स्तर पर कोर फाउंडेशन मानकीकृत अनुप्रयोग प्राथमिकता प्रबंधन भी प्रदान करता है CFPropertyList, बंडल (macOS) हैंडलिंग, इवेंट लूप, CFMachPort और CFNotificationCenterइंटरप्रोसेस संचार के माध्यम से इंटरप्रोसेस संचार, औरCFUserNotification के माध्यम से बुनियादी ग्राफिकल यूजर इंटरफेस संदेश संवाद के माध्यम से मानकीकृत अनुप्रयोग वरीयता प्रबंधन भी प्रदान करता है।

एपीआई के अन्य भागों में उपयोग में सरलता के लिए प्रस्तुत एपीआई के निकट उपयोगिता रूटीन और रैपर सम्मिलित हैं। CFReadStream, CFWriteStream, और CFURL और एंडियननेस ट्रांसलेशन (बाइट ऑर्डर यूटिलिटीज) के माध्यम से फाइल सिस्टम और नेटवर्क इनपुट/आउटपुट जैसी कार्रवाइयाँ करते हैं। रैपर रूटीन के कुछ उदाहरणों में यूनिक्स सॉकेट्स के लिए कोर फाउंडेशन के रैपर रूटीन, सीएफसॉकेट एपीआई सम्मिलित हैं।

कोर फाउंडेशन में कुछ प्रकार टोल-फ्री ब्रिज हैं, उनके फाउंडेशन किट समकक्षों के साथ साधारण कास्ट के साथ विनिमेय हैं। उदाहरण के लिए, कोई CFDictionaryRef कोर फाउंडेशन प्रकार बना सकता है, और उसके पश्चात में इसे अपने उद्देश्य-सी समकक्ष NSDictionary * में परिवर्तित के लिए एक मानक C कास्ट का उपयोग कर सकता है, और उसके पश्चात उस वस्तु पर वांछित उद्देश्य-सी विधियों का उपयोग करें जैसा सामान्य रूप से होता है।

कोर फाउंडेशन का प्लग-इन मॉडल है (CFPlugin) जो माइक्रोसॉफ्ट घटक वस्तु मॉडल पर आधारित है।[2]


ओपन सोर्स उपलब्धता

एप्पल अधिकांश सीएफ़ को सीएफलाइट नामक ओपन-सोर्स प्रोजेक्ट के रूप में प्रस्तुत करता था | जिसका उपयोग मैकओएस, लिनक्स,और माइक्रोसॉफ़्ट विंडोज़ के लिए क्रॉस-प्लेटफ़ॉर्म एप्लिकेशन लिखने के लिए किया जा सकता है।[3]

ओपनसीएफलाइट नामक तृतीय-पक्ष ओपन-सोर्स कार्यान्वयन 32-बिट विंडोज और लिनक्स वातावरणों पर निर्माण के लिए एप्पल सीएफलाइट का विस्तार करता है। यह वेबकिट डेवलपर्स के द्वारा बनाए रखा जाता है, किंतु 2015 तक संवृत हो गया था।[4] कराओके प्लेटफॉर्म KJams 2017 से फोर्क बनाए रखता है। यह संस्करण, इसके प्रोग्रामर डेविड एम. कॉटर द्वारा, 64-बिट सिस्टम का समर्थन करता है और लिबरएसएसएल-आधारित टीएलएस के साथ सीएफ नेटवर्क कार्यान्वयन है।[5] ओपनसीएफलाइट का फोर्क 2021 में ग्रांट एरिकसन (ब्रेंट फुलघम के साथ मूल सहयोगी) द्वारा 2021 में बनाया गया था।[6] सीएफनेटवर्क के CFHost का भाग, ओपनसीएफ नेटवर्क के रूप में है।[7]

स्विफ्ट कोरलिब फाउंडेशन, गैर-एप्पल प्लेटफॉर्म के लिए स्विफ्ट प्रोग्रामिंग भाषा के लिए फाउंडेशन किट का फ़ॉलबैक संस्करण है, जिसमें अपाचे लाइसेंस 2.0 के अधीन निरंतर कोर फाउंडेशन का लगभग पूर्ण संस्करण सम्मिलित है।[8]

जीएनयूस्टेप में "लिब्स-कोरबेस" नामक कोर फाउंडेशन का संस्करण सम्मिलित है ।[9]


यह भी देखें

  • जीएलआईबी - गनोम समकक्ष

संदर्भ

  1. ridiculous_fish (2006). "पुल".
  2. "प्लग-इन और माइक्रोसॉफ्ट के COM". Mac Developer Library. Apple Inc. Archived from the original on 2014-09-01. Retrieved 2015-03-25.
  3. "Source Browser".
  4. OpenCFLite project on SourceForge.
  5. "सीएफलाइट". KJams. Retrieved 19 February 2020.
  6. "GitHub पर OpenCFlite प्रोजेक्ट". Retrieved 30 November 2021.
  7. "GitHub पर OpenCFNetwork प्रोजेक्ट". Retrieved 30 November 2021.
  8. "स्विफ्ट-कोरलिब्स-फाउंडेशन". GitHub. October 14, 2021.
  9. "gnustep/libs-corebase: The GNUstep CoreBase Library is a library of general-purpose, non-graphical C objects". GitHub. GNUstep. 19 November 2019.


बाहरी संबंध