मैं कभी-कभी उन तरीकों में भाग लेता हूं जहां एक डेवलपर ने कुछ वापस करने के लिए चुना जो फ़ंक्शन के लिए महत्वपूर्ण नहीं है। मेरा मतलब है, जब कोड को देखते हुए, यह स्पष्ट रूप से एक के रूप में अच्छा काम करता है void
और एक पल के विचार के बाद, मैं पूछता हूं "क्यों?" क्या यह ध्वनि परिचित है?
कभी-कभी मैं इस बात से सहमत होता हूं कि अक्सर यह बेहतर होता है कि किसी चीज को वापस लौटाया जाए, bool
या int
फिर सिर्फ ए void
। मुझे यकीन नहीं है, हालांकि, बड़ी तस्वीर में, पेशेवरों और विपक्ष के बारे में।
स्थिति पर निर्भर करते हुए, int
कॉल करने वाले को विधि से प्रभावित पंक्तियों या वस्तुओं की मात्रा से अवगत कराया जा सकता है (उदाहरण के लिए, MSSQL में सहेजे गए 5 रिकॉर्ड)। यदि "InsertSomething" जैसी एक विधि एक बूलियन लौटाती है, तो मेरे पास true
सफलता के लिए लौटने के लिए डिज़ाइन की गई विधि हो सकती है , अन्यथा false
। कॉल करने वाला उस जानकारी पर कार्रवाई कर सकता है या नहीं।
दूसरी ओर,
- क्या यह विधि कॉल के कम स्पष्ट उद्देश्य की ओर ले सकता है? खराब कोडिंग मुझे अक्सर विधि सामग्री को दोबारा जांचने के लिए मजबूर करती है। यह कुछ देता है, तो यह आपको बताता है कि विधि एक प्रकार आप की है है लौटे परिणाम के साथ कुछ करने के लिए।
- एक और मुद्दा यह होगा, यदि विधि कार्यान्वयन आपके लिए अज्ञात है, तो डेवलपर ने क्या वापसी करने का फैसला किया जो महत्वपूर्ण नहीं है? बेशक आप इसे कमेंट कर सकते हैं।
- वापसी मूल्य को संसाधित करना होगा, जब प्रसंस्करण विधि के समापन कोष्ठक पर समाप्त हो सकता है।
- हुड के नीचे क्या होता है? क्या
false
एक फेंकी हुई त्रुटि के कारण इसे विधि कहा जाता है ? या मूल्यांकन किए गए परिणाम के कारण यह गलत निकला?
इसके साथ आपके क्या अनुभव हैं? आप इस पर कार्रवाई कैसे करेंगे?
void
कम से कम डेवलपर पता है कि विधि द्वारा दिया गया मान अप्रासंगिक है की सुविधा देता है; यह मूल्य मानने के बजाय एक क्रिया करता है।