क्या मुझे अपने स्विफ्ट क्लास नाम को तीन-अक्षर उपसर्ग देना चाहिए जैसा कि Objective-C Conventions: Class Names Must Be Unique Across an Entire App द्वारा अनुशंसित किया गया है?स्विफ्ट: कक्षा उपसर्ग की आवश्यकता है?
उत्तर
नहीं, you do not need class prefixes in Swift, क्योंकि कक्षाएं उस मॉड्यूल में नामित हैं जहां वे रहते हैं।
आप के बीच (उदाहरण के लिए) स्विफ्ट से एक Array
और एक Array
वर्ग/struct है कि आप अपने अनुप्रयोग में घोषित किया है को स्पष्ट करने की जरूरत है, तो आप एक Swift.Array
या एक MyProject.Array
के रूप में यह लिखकर ऐसा कर सकते हैं। यही कारण है कि रूप में अच्छी तरह एक्सटेंशन के साथ काम करता है:
extension Swift.Array {
...
}
extension MyProject.Array {
...
}
यदि आप उद्देश्य सी में आयात करते हैं तो क्या यह आगे बढ़ता है? – Jeef
@ जेफ [यह स्टैक ओवरफ्लो उत्तर] (http://stackoverflow.com/a/26148391/2067021) यह इंगित करता है कि ऑब्जेक्टिव-सी में कक्षाएं आयात किए जाने पर टकराव नामकरण हो सकते हैं। – user2067021
चूंकि आप 'objc' टैग के साथ निर्यात पर कक्षा के नाम चुनते हैं, मुझे लगता है कि आपको दोनों करना है, इसलिए स्विफ्ट 'सरल अलर्ट' में' DRSimpleAlert' बन जाता है –
नहीं है, उपसर्ग निश्चित रूप से neeeded नहीं है।
मान लें कि आपके ऐप में MyApp
नाम है, और आपको अपना कस्टम UICollectionViewController
घोषित करने की आवश्यकता है।
आप इस तरह उपसर्ग के लिए और उपवर्ग जरूरत नहीं:
class MAUICollectionViewController: UICollectionViewController {}
इसे इस तरह कार्य करें:
class UICollectionViewController {} //no error "invalid redeclaration o..."
क्यों?। क्योंकि आपने जो घोषणा की है उसे वर्तमान मॉड्यूल में घोषित किया गया है, जो आपका वर्तमान लक्ष्य है। UIKit
से UIKit
मॉड्यूल में UICollectionViewController
घोषित किया गया है।
वर्तमान मॉड्यूल के भीतर इसका उपयोग कैसे करें?
var customController = UICollectionViewController() //your custom class
var uikitController = UIKit.UICollectionViewController() //class from UIKit
कैसे एक और मॉड्यूल से उन्हें अलग करने के लिए?
var customController = MyApp.UICollectionViewController() //your custom class
var uikitController = UIKit.UICollectionViewController() //class from UIKit
- 1. स्प्रिंग सिक्योरिटी की रोलवॉटर को उपसर्ग की आवश्यकता क्यों है?
- 2. कक्षा है .forName() तंत्र की आवश्यकता है?
- 3. क्या सांख्यिकी को कक्षा की आवश्यकता है?
- 4. कक्षा में एआरसी की आवश्यकता कैसे है?
- 5. स्विफ्ट इंस्टेंस वेरिएबल अंडरस्कोर उपसर्ग?
- 6. स्विफ्ट में सार्वजनिक कक्षा/संरचना के लिए एक स्पष्ट सार्वजनिक प्रारंभकर्ता की आवश्यकता क्यों होती है?
- 7. क्या आपको स्विफ्ट में CGContextRef जारी करने की आवश्यकता है?
- 8. स्विफ्ट की आवश्यकता है कि दो जेनरिक एक ही प्रकार
- 9. कंक्रीट सी # कक्षा में serializable विशेषता की आवश्यकता है?
- 10. कक्षा .forName (JDBC_DRIVER) की अब आवश्यकता नहीं है?
- 11. सार कक्षा के साथ-साथ इंटरफ़ेस की आवश्यकता है?
- 12. सी # में स्थापित करने के लिए कक्षा की आवश्यकता है?
- 13. क्या कक्षा को टाइपस्क्रिप्ट में एक निर्माता की आवश्यकता है?
- 14. एक्सटेंशन विधियों को कक्षा घोषित करने की आवश्यकता है
- 15. क्यों EnumMap निर्माता को कक्षा तर्क की आवश्यकता है?
- 16. एंड्रॉइड दस्तावेज़ों का कहना है कि अतिरिक्त अतिरिक्त पैकेज पैकेज उपसर्ग की आवश्यकता क्यों है
- 17. स्विफ्ट प्रोटोकॉल - प्रकार एक आवश्यकता
- 18. ग्रंट की आवश्यकता है
- 19. RAILS_ROOT की आवश्यकता है?
- 20. क्यों "{} \" की आवश्यकता है?
- 21. 'rubygems' की आवश्यकता है
- 22. आवश्यकता, आयात, आयात की आवश्यकता है
- 23. क्या रैखिक-ढाल के लिए अभी भी ब्राउज़र उपसर्ग की आवश्यकता है?
- 24. क्यों और कब हमें एंड्रॉइड जोड़ने की आवश्यकता है: शैली के लिए उपसर्ग?
- 25. $ (उपसर्ग)/etc/gitconfig पर $ (उपसर्ग) क्या है?
- 26. उपसर्ग
- 27. मुझे सी ++ में अनाम कक्षा की आवश्यकता कब होगी?
- 28. हमें संरचना की आवश्यकता क्यों है? (सी #)
- 29. स्विफ्ट में कक्षा से प्रोटोकॉल बेहतर क्यों है?
- 30. क्या जावा स्विफ्ट-जैसी कक्षा एक्सटेंशन का समर्थन करता है?
अब एप्पल भी 'NS' उपसर्ग के' NSNotificationCenter' तरह कक्षाओं के लिए जब स्विफ्ट में इस्तेमाल छुटकारा हो गया है। हालांकि, वे अभी भी 'NSObject' के लिए उपसर्ग रखते हैं, यही कारण है कि हम सभी यहां बहुत मजेदार हैं। –