यह व्यक्तिगत पसंद का मामला है। ऐसे लोग हैं जो तर्क देते हैं कि डॉट नोटेशन यह स्पष्ट नहीं करता है कि संदेश भेजे जा रहे हैं (विधियों को बुलाया जा रहा है) क्योंकि यह सी-स्टाइल संरचना तत्व पहुंच की तरह दिखता है। तर्क का दूसरा पक्ष यह है कि डॉट नोटेशन टाइप करना आसान है, पढ़ने में आसान है, और अधिक संक्षिप्त है।
डॉट नोटेशन (ऑब्जेक्टिव-सी 2.0 में) से पहले उद्देश्य-सी लिखने वाले व्यक्ति के रूप में, मैं दोनों तरफ के तर्कों को समझ सकता हूं, लेकिन डॉट नोटेशन का उपयोग करना पसंद करता हूं। उस ने कहा, मुझे लगता है कि उद्देश्य-सी से शुरू होने वाले लोगों के लिए यह महत्वपूर्ण है कि संकुचित होने पर डॉट नोटेशन सिंटैक्स मानक एक्सेसर विधि कॉल में परिवर्तित हो जाता है। मुझे लगता है कि बिग नेर्ड रांच पुस्तक के लेखकों के पास शायद एक समान रवैया है, और यह एक बड़ा हिस्सा है कि उन्होंने पुस्तक में ब्रैकेट नोटेशन का उपयोग करने का फैसला क्यों किया।
तो संक्षेप में, जो भी आपको सबसे अच्छा लगता है। दोनों मान्य हैं, और दोनों के बीच चुनाव अनिवार्य रूप से शैली का मामला है। कोई फर्क नहीं पड़ता कि आप क्या चुनते हैं, सुनिश्चित करें कि आप समझते हैं कि दोनों शैलियों समकक्ष संकलित कोड उत्पन्न करती हैं।
संपादित करें: मैं डॉट नोटेशन को ब्रैकेट सिंटैक्स में परिवर्तित करने के बारे में प्रश्न का उत्तर देना भूल गया। आप करीब हैं, लेकिन जो आपने लिखा है वह गलत है और वास्तव में संकलित नहीं होगा। यह होना चाहिए: [[self display] setText:[[[self display] text] stringByAppendingString:digit]]
।
NSString *stringWithDigit = [[[self display] text] stringByAppendingString:digit];
[[self display] setText:stringWithDigit];
संपादित करें 2:: मैं इसे दो पंक्तियों (ठीक है, वास्तव में मैं डॉट नोटेशन का उपयोग करेंगे) में विभाजित था मैं इसे लिख रहे थे, तो यह 3 साल से अधिक कर दिया गया है के बाद से मैं इस जवाब में लिखा था। मैं सिर्फ यह ध्यान रखना चाहता था कि इन दिनों, एक बहुत अधिक ऐप्पल फ्रेमवर्क कक्षाओं में ऐसी चीजें हैं जो पहले से ही नियमित तरीके से @properties (उदा। -[NSArray count]
) में परिवर्तित की गई थीं, संभवतः बेहतर स्विफ्ट इंटरऑप के लिए। इसने मुझे डॉट नोटेशन का उपयोग करने के लिए और भी उदारतापूर्वक उपयोग करने के लिए प्रेरित किया है।
तुम हमेशा डॉट नोटेशन का उपयोग करना चाहिए, जब भी आप गुणों के साथ काम कर रहे:
स्रोत
2012-07-13 16:19:49
यह ज्यादातर व्यक्तिगत वरीयता का मामला है। – omz