Swift Typealias: इनका उपयोग कैसे करें और क्यों करें?

इस लेख में, आप Swift में टाइपेलियास और इसके उपयोग के मामलों के बारे में जानेंगे।

एक प्रकार का उपनाम आपको अपने प्रोग्राम में मौजूदा डेटा प्रकार के लिए एक नया नाम प्रदान करने की अनुमति देता है। एक प्रकार का उपनाम घोषित होने के बाद, पूरे कार्यक्रम में मौजूदा प्रकार के बजाय अन्य नाम का उपयोग किया जा सकता है।

प्रकार उपनाम अन्य नए प्रकार नहीं बनाते हैं। वे बस एक मौजूदा प्रकार को एक नया नाम प्रदान करते हैं।

इसका मुख्य उद्देश्य typealiasहमारे कोड को मानवीय समझ के लिए अधिक पठनीय और स्पष्ट करना है।

कैसे एक टाइपेलियास बनाने के लिए?

इसे कीवर्ड का उपयोग करके घोषित किया typealiasगया है:

 typealias नाम = मौजूदा प्रकार

स्विफ्ट में, आप typealiasअधिकांश प्रकारों के लिए उपयोग कर सकते हैं । वे या तो हो सकते हैं:

  • अंतर्निहित प्रकार (for.eg: स्ट्रिंग, इंट)
  • उपयोगकर्ता-परिभाषित प्रकार (for.eg: वर्ग, संरचना, एनम)
  • जटिल प्रकार (उदाहरण के लिए: बंद)

अंतर्निहित प्रकारों के लिए टाइपेलियास

आप सभी टाइप किए गए डेटा टाइपिंग स्ट्रिंग, इंट, फ्लोट आदि के लिए टाइपेलियास का उपयोग कर सकते हैं।

उदाहरण के लिए:

 typealias StudentName = स्ट्रिंग

उपरोक्त घोषणा छात्रनाम का उपयोग करने के बजाय हर जगह करने की अनुमति देता है String। इसलिए, यदि आप एक प्रकार का स्ट्रिंग बनाना चाहते हैं, लेकिन छात्र के नाम की तरह अधिक प्रतिनिधित्व करते हैं। आप निम्न कार्य कर सकते हैं:

 नाम बताएं: StudentName = "जैक"

टाइपेलियास का उपयोग किए बिना, आपको निम्न प्रकार के स्ट्रिंग की घोषणा करनी चाहिए:

 नाम दें: स्ट्रिंग = "जैक"

दोनों उदाहरणों के ऊपर एक निरंतर प्रकार का निर्माण होता है String। लेकिन के साथ घोषित typealias, हमारे कोड अधिक पठनीय हो जाता है।

उपयोगकर्ता परिभाषित प्रकारों के लिए टाइपेलियास

ऐसे कई मामले हैं जब आपको अपना डेटा प्रकार बनाने की आवश्यकता होती है। मान लें कि आप एक प्रकार बनाना चाहते हैं जो छात्र का प्रतिनिधित्व करता है, आप इसे कक्षा का उपयोग करके बना सकते हैं:

 class Student ( ) 

अब छात्रों के एक समूह को एक सरणी के रूप में दर्शाया जा सकता है:

 var के छात्र: Array = ()

उपरोक्त घोषणा को Arrayउपयोग करने के लिए अपना स्वयं का प्रकार बनाकर अधिक पठनीय बनाया जा सकता है typealias:

 typealias छात्र = सरणी

अब हम अपने कोड को और अधिक पठनीय बना सकते हैं:

 var छात्र: छात्र = ()

जटिल प्रकार के लिए टाइपेलियास

आओ हम एक और उदाहरण का विश्लेषण करें। मान लीजिए हमारे पास एक विधि है जो एक इनपुट पैरामीटर के रूप में बंद हो जाती है।

अगर आपको क्लोजर के बारे में जानकारी नहीं है तो चिंता न करें। बस इसे एक विशेष प्रकार के फ़ंक्शन के रूप में सोचें। हमने इसे लेख में विस्तार से बताया है: स्विफ्ट क्लोजर।

 func someMethod(oncomp:(Int)->(String))( ) 

उपरोक्त उदाहरण इनपुट के रूप में एक क्लोजर लेता है someMethod। क्लोजर एक Intमूल्य लेता है और रिटर्न करता है String

आप (Int)->(String)पाठक को कम समझ में आता है के उपयोग को देख सकते हैं । आप इसके typealiasलिए एक नया नाम प्रदान करने के लिए उपयोग कर सकते हैं :

 टाइपेलियास कम्पेक्शनहैंडलर = (इंट) -> (स्ट्रिंग)

अब आप इस विधि को फिर से लिख सकते हैं:

 func someMethod(oncomp:CompletionHandler)( )

हम देख सकते हैं कि समान कोड उपयोग के साथ अधिक स्पष्ट और प्रोग्रामर के अनुकूल लगता है typealias

दिलचस्प लेख...