सी # में हमारे पास protected
एक्सेसर है जो वर्ग के सदस्यों को विरासत वाले समूहों पर दिखाई देने की अनुमति देता है लेकिन बाकी के लिए नहीं।तेजी से सी # संरक्षित एक्सेसर सोचने का सही तरीका क्या है?
स्विफ्ट में यह मौजूद नहीं है तो मुझे आश्चर्य है कि क्या इस तरह के लिए एक सही दृष्टिकोण है:
मैं एक चर (आंतरिक व्यवहार) और और एक सार्वजनिक विधि एक आधार पर इस चर का उपयोग कर करना चाहते हैं कक्षा। इस चर का उपयोग विरासत वाले समूहों पर भी किया जाएगा।
विकल्प मैं देख रहा हूँ
- आधार वर्ग के बारे में भूल जाओ और हर जगह मैं इसकी आवश्यकता को लागू चर और तरीकों। WRONG, डुप्लिकेट कोड
- संरचना द्वारा विरासत को लागू करें। मैं सामान्य विधियों वाली कक्षा बनाउंगा और इसका उपयोग विरासत की बजाय संरचना द्वारा किया जाएगा। कम WRONG लेकिन अभी भी कोड दोहराया जा सकता है जिसे विरासत
- से वंचित किया जा सकता है विरासत लागू करें और आधार वर्ग पर परिवर्तनीय आंतरिक बनाएं। WRONG विरासत वाले समूहों पर दृश्यता को छोड़कर किसी भी औचित्य के बिना चीजों को उजागर करता है।
बेस कक्षा
के लिए कार्यान्वयन विवरण मैं एक NSOperationQueue
उदाहरण और और पंक्तिबद्ध कार्यवाही रद्द करना एक सार्वजनिक विधि करना चाहते हैं। मैं विरासत कक्षाओं से इस कतार में नए परिचालन जोड़ता हूं।
शानदार उत्तर। धन्यवाद! – StackOverflower