SWIFT क्या है ?
स्विफ्ट एक सामान्य-उद्देश्य, मल्टी-प्रतिमान, संकलित प्रोग्रामिंग भाषा है जिसे ऐप्पल इंक और ओपन-सोर्स समुदाय द्वारा विकसित किया गया है, 2014 में पहली बार जारी किया गया था। स्विफ्ट को ऐप्पल के पहले की प्रोग्रामिंग भाषा ऑब्जेक्टिव-सी के लिए एक उद्देश्य के रूप में विकसित किया गया था। 1980 के दशक की शुरुआत से काफी हद तक अपरिवर्तित रहा और आधुनिक भाषा सुविधाओं का अभाव था।
स्विफ्ट ऐप्पल के कोको और कोको टच फ्रेमवर्क के साथ काम करता है, और स्विफ्ट के डिजाइन का एक प्रमुख पहलू पिछले दशकों में ऐप्पल उत्पादों के लिए विकसित मौजूदा ऑब्जेक्टिव-सी कोड के विशाल शरीर के साथ हस्तक्षेप करने की क्षमता थी।
यह ओपन सोर्स एलएलवीएम कंपाइलर फ्रेमवर्क के साथ बनाया गया है और 2014 में जारी किए गए संस्करण 6 के बाद से Xcode में शामिल किया गया है। Apple प्लेटफार्मों पर, यह ऑब्जेक्टिव-सी रनटाइम लाइब्रेरी का उपयोग करता है जो सी, ऑब्जेक्टिव-सी, सी ++ और स्विफ्ट की अनुमति देता है। एक कार्यक्रम के भीतर चलाने के लिए कोड।
ऐप्पल का इरादा उद्देश्य-सी के साथ जुड़े कई मुख्य अवधारणाओं का समर्थन करने के लिए स्विफ्ट, विशेष रूप से गतिशील प्रेषण, व्यापक देर से बाध्यकारी, एक्स्टेंसिबल प्रोग्रामिंग और इसी तरह की विशेषताओं, लेकिन "सुरक्षित" तरीके से, सॉफ्टवेयर बग को पकड़ना आसान बनाता है; स्विफ्ट में कुछ सामान्य प्रोग्रामिंग त्रुटियों को संबोधित करने की विशेषताएं हैं जैसे नल पॉइंटर डेरेफ्रेंसिंग और कयामत के पिरामिड से बचने में मदद करने के लिए सिंटैक्टिक चीनी प्रदान करता है। स्विफ्ट प्रोटोकॉल एक्सेन्सिबिलिटी की अवधारणा का समर्थन करता है, एक एक्सेंसेंसिबिलिटी सिस्टम जिसे टाइप्स, स्ट्रक्चर्स और क्लासेस पर लागू किया जा सकता है, जिसे Apple प्रोग्रामिंग प्रतिमानों में एक वास्तविक बदलाव के रूप में बढ़ावा देता है, जिसे वे "प्रोटोकॉल-ओरिएंटेड प्रोग्रामिंग" कहते हैं।
स्विफ्ट को Apple के 2014 वर्ल्डवाइड डेवलपर्स कॉन्फ्रेंस (WWDC) में पेश किया गया था। इसने 2014 के दौरान संस्करण 1.2 में अपग्रेड किया और WWDC 2015 में स्विफ्ट 2 के लिए एक बड़ा उन्नयन किया। शुरू में एक मालिकाना भाषा, संस्करण 2.2 को ऐप्पल के प्लेटफार्मों और लिनक्स के लिए अपाचे लाइसेंस 2.0 के तहत ओपन-सोर्स सॉफ़्टवेयर बनाया गया था। ।
संस्करण 3.0 के माध्यम से स्विफ्ट का सिंटैक्स महत्वपूर्ण विकास के माध्यम से चला गया, जिसके साथ कोर टीम स्रोत स्थिरता को बाद के संस्करणों में फ़ोकस करती है। 2018 की पहली तिमाही में स्विफ्ट ने मापा लोकप्रियता में ऑब्जेक्टिव-सी को पीछे छोड़ दिया।
2017 में रिलीज़ हुई स्विफ्ट 4.0 ने कुछ अंतर्निहित कक्षाओं और संरचनाओं में कई बदलाव पेश किए। स्विफ्ट के पिछले संस्करणों के साथ लिखे गए कोड को Xcode में निर्मित माइग्रेशन कार्यक्षमता का उपयोग करके अपडेट किया जा सकता है। मार्च 2019 में रिलीज़ हुई स्विफ्ट 5 ने ऐप्पल प्लेटफार्मों पर एक स्थिर बाइनरी इंटरफ़ेस पेश किया, जिससे स्विफ्ट रनटाइम को ऐप्पल ऑपरेटिंग सिस्टम में शामिल किया गया। यह स्विफ्ट 4 के साथ संगत स्रोत है।
स्विफ्ट 5.1 आधिकारिक तौर पर सितंबर 2019 में जारी किया गया था। स्विफ्ट 5.1 मॉड्यूल स्थिरता की शुरूआत के साथ संकलन-समय के लिए भाषा की स्थिर विशेषताओं का विस्तार करके स्विफ्ट 5 के पिछले संस्करण पर बनाता है। मॉड्यूल स्थिरता का परिचय बाइनरी फ्रेमवर्क बनाने और साझा करने के लिए संभव बनाता है जो स्विफ्ट के भविष्य के रिलीज के साथ काम करेंगे।
स्विफ्ट का इतिहास
स्विफ्ट का विकास जुलाई 2010 में क्रिस लैटनर द्वारा ऐप्पल में कई अन्य प्रोग्रामरों के अंतिम सहयोग के साथ शुरू हुआ। स्विफ्ट ने भाषा के विचारों को "ऑब्जेक्टिव-सी, रस्ट, हास्केल, रूबी, पायथन, सी #, सीएलयू और बहुत से अन्य लोगों से सूचीबद्ध करने के लिए लिया।" 2 जून 2014 को, ऐप्पल वर्ल्डवाइड डेवलपर्स कॉन्फ्रेंस (डब्ल्यूडब्ल्यूडीसी) एप्लिकेशन स्विफ्ट के साथ सार्वजनिक रूप से जारी किया गया पहला ऐप बन गया है। सम्मेलन में पंजीकृत Apple डेवलपर्स के लिए प्रोग्रामिंग भाषा का एक बीटा संस्करण जारी किया गया था, लेकिन कंपनी ने वादा नहीं किया था कि स्विफ्ट का अंतिम संस्करण परीक्षण संस्करण के साथ स्रोत कोड संगत होगा। Apple ने पूर्ण रिलीज़ के लिए यदि आवश्यक हो तो सोर्स कोड कन्वर्टर्स उपलब्ध कराने की योजना बनाई है।
स्विफ्ट प्रोग्रामिंग लैंग्वेज, एक मुफ्त 500-पृष्ठ मैनुअल, WWDC में भी जारी की गई थी, और यह ऐप्पल बुक्स स्टोर और आधिकारिक वेबसाइट पर उपलब्ध है।
9 सितंबर, 2014 को स्विफ्ट आईओएस के लिए Xcode 6.0 के गोल्ड मास्टर के साथ 1.0 मील के पत्थर पर पहुंच गया। स्विफ्ट 1.1 को Xcode 6.1 के लॉन्च के साथ 22 अक्टूबर 2014 को जारी किया गया था। स्विफ्ट 1.2 को Xcode 6.3 के साथ 8 अप्रैल, 2015 को जारी किया गया था। डब्ल्यूडब्ल्यूडीसी 2015 में स्विफ्ट 2.0 की घोषणा की गई थी, और सितंबर 21, 2015 में ऐप स्टोर में प्रकाशन एप्लिकेशन के लिए उपलब्ध कराया गया था। स्विफ्ट 3.0 को 13 सितंबर, 2016 को जारी किया गया था। स्विफ्ट 4.0 को 19 सितंबर, 2017 को जारी किया गया था। स्विफ्ट 4.1 को 29 मार्च, 2018 को जारी किया गया था।
स्टैक ओवरफ्लो डेवलपर सर्वे 2015 में स्विफ्ट ने सबसे अधिक पसंद की गई प्रोग्रामिंग भाषा के लिए पहला स्थान प्राप्त किया और 2016 में दूसरा स्थान हासिल किया।
स्विफ्ट क्यों ज्यादा अच्छा है ?
तेज़ और आसान विकास
जैसा कि इसके नाम से पता चलता है, यह SWIFT विकास को सक्षम बनाता है। मतलब, इसका उद्देश्य विकास के समय को 'पठनीय, स्वच्छ वाक्यविन्यास, लचीलेपन और सुरक्षा उपायों के साथ कम करना है जो विकास करते समय त्रुटियों को रोकते हैं। इसे सी-आधारित भाषाओं (सी, सी ++, ऑब्जेक्टिव-सी) को एप्पल उपकरणों के लिए भाषा के रूप में बदलने के लिए विकसित किया गया था। यह पश्चगामी-संगत है और इसका उपयोग मौजूदा उद्देश्य-सी कोड बेस में आसानी से किया जा सकता है; स्विफ्ट कोड आपकी मौजूदा ऑब्जेक्टिव-सी फाइलों के साथ सह-मौजूद है और लोकप्रिय कोको और कोको टच फ्रेमवर्क के साथ काम करता है।
Xcode की मदद से विकास का अनुभव, शक्तिशाली और सहज प्रोग्रामिंग प्रदान करता है। रीड-एवल-प्रिंट-लूप (आरईपीएल) के साथ स्विफ्ट खेल के मैदानों को अवधारणाओं और कोड के साथ गड़बड़ करना आसान और मजेदार बना देता है। REPL कोड के परिणामों को तुरंत प्रदर्शित करके कोड को इंटरैक्टिव बनाता है, उसी तरह जैसे कि IPython जैसे इंटरैक्टिव वातावरण में पाया जाता है।
तेजी से प्रदर्शन?
अन्य भाषाओं जैसे C ++ और Java की तुलना में स्विफ्ट के प्रदर्शन पर बहस जारी है। बेंचमार्क से परिणाम विरोधाभास हर जगह हैं जो आप देखते हैं
ये बेंचमार्क बताते हैं कि स्विफ्ट कुछ कार्यों पर जावा को बेहतर बनाता है (मैंडलब्रॉट: स्विफ्ट 3.19 बनाम जावा 6.83 सेकेंड), लेकिन कुछ (बाइनरी-ट्रीज़: स्विफ्ट 45.06 सेकंड बनाम जावा एक्स 2 सेकंड्स) पर काफी धीमी है। मैंने ऐसे अन्य लोगों को देखा है जिन्होंने व्यक्त किया है कि स्विफ्ट वर्तमान में "इसे काम करने" की मानसिकता में है, तेजी से "इसे जल्दी करो" ... इसका अर्थ है कि शायद प्रदर्शन अनुकूलन प्रगति पर हैं। हालांकि, एक बात निश्चित है, उद्देश्य-सी की तुलना में तेजी से स्विफ्ट है और कथित तौर पर पायथन की तुलना में 8 गुना अधिक तेज है।
थोड़े चिंताजनक प्रदर्शन के बेंचमार्क के बावजूद, स्विफ्ट टीम ने खुद कहा कि यह एक तेज़ भाषा है। अपेक्षाकृत नई भाषा के रूप में, आप लगभग गारंटी दे सकते हैं कि भविष्य में प्रदर्शन में सुधार होगा (अधिकांश नई भाषाओं की तरह)।
रनटाइम सेफ्टी
स्विफ्ट स्वचालित मेमोरी प्रबंधन के साथ रनटाइम सुरक्षा सुनिश्चित करता है। यह सुनिश्चित करता है कि चर जिनका उपयोग करने से पहले हमेशा उपयोग किया जाता है, सरणी या पूर्णांक अतिप्रवाह के मामलों को रोका जाता है, और मेमोरी तक अनन्य पहुंच लगातार लागू होती है। यह कुछ सामान्य प्रोग्रामिंग गलतियों को रोकता है।
स्विफ्ट का उद्देश्य परस्पर विरोधी मेमोरी एक्सेस को रोकना और किसी भी मेमोरी एक्सेस टकराव को हल करने के लिए स्पष्ट प्रतिलिपि के तरीके प्रदान करके असुरक्षित व्यवहार को रोकना है। यह संकलन-समय की त्रुटियों की मदद से रनटाइम अपवाद को बहुत कम संभावना बनाता है।
एक अन्य सुरक्षा विशेषता यह है कि, डिफ़ॉल्ट रूप से, स्विफ्ट ऑब्जेक्ट कभी भी शून्य नहीं हो सकते हैं। स्विफ्ट कंपाइलर से एक संकलन-समय की त्रुटि आपको एक शून्य वस्तु के साथ बातचीत करने से रोक देगी।
प्लेटफार्म
स्विफ्ट का समर्थन करने वाले प्लेटफ़ॉर्म Apple के ऑपरेटिंग सिस्टम (डार्विन, iOS, iPadOS, macOS, tvOS, watchOS), लिनक्स, विंडोज और एंड्रॉइड हैं।
Conclusion:
यह जानकारी आपको कैसी लगी जरुर बताएं और इसे शेयर करें |