मैं कक्षा के गुणों से मेल खाने वाले पैरामीटर नामों के संबंध में इसी तरह के प्रश्न देखता हूं, लेकिन मुझे पैरामीटर नाम का उपयोग करने के संबंध में कुछ भी नहीं मिल सकता है जो सी # में आवरण के अलावा पैरामीटर प्रकार नाम के समान है। यह एक उल्लंघन नहीं लगता है जो मुझे मिल सकता है, लेकिन क्या इसे बुरा व्यवहार माना जाता है? उदाहरण के लिए, मेरे पास निम्न विधि है
public Range PadRange(Range range) {}
यह विधि एक सीमा लेती है, और एक नई सीमा लौटाती है जिसमें कुछ पेडिंग लागू होती है। इसलिए, सामान्य संदर्भ को देखते हुए, मैं पैरामीटर के लिए अधिक वर्णनात्मक नाम के बारे में नहीं सोच सकता। हालाँकि, मुझे याद आ रहा है कि जब "मनोवैज्ञानिक दूरी" के बारे में कोड पूरा पढ़ने पर मुझे कोई टिप दी गई थी। इसे कहते हैं
मनोवैज्ञानिक दूरी को उस आसानी के रूप में परिभाषित किया जा सकता है जिसमें दो वस्तुओं को विभेदित किया जा सकता है ... जैसा कि आप डिबग करते हैं, समान वैरिएबल नामों के बीच और समान दिनचर्या के नामों के बीच अपर्याप्त मनोवैज्ञानिक दूरी के कारण होने वाली समस्याओं के लिए तैयार रहें। जैसा कि आप कोड का निर्माण करते हैं, बड़े अंतर वाले नामों का चयन करें ताकि आप समस्या से बच सकें।
मेरे विधि हस्ताक्षर में "रेंज" का एक बहुत कुछ चल रहा है, इसलिए ऐसा महसूस होता है कि यह इस मनोवैज्ञानिक दूरी के संबंध में एक मुद्दा हो सकता है। अब, मैं देख रहा हूँ कि कई डेवलपर्स निम्नलिखित कार्य करते हैं
public Range PadRange(Range myRange) {}
मुझे व्यक्तिगत रूप से इस सम्मेलन के लिए एक मजबूत अरुचि है। चर नामों में "मेरे" उपसर्ग जोड़ना कोई अतिरिक्त संदर्भ प्रदान नहीं करता है।
मैं निम्नलिखित भी देखता हूं
public Range PadRange(Range rangeToPad) {}
मुझे "मेरे" उपसर्ग से बेहतर यह पसंद है, लेकिन अभी भी इसके लिए समग्र रूप से परवाह नहीं है। यह सिर्फ मुझ पर अत्यधिक लगता है, और एक चर नाम के रूप में अजीब रूप से पढ़ता है। मेरे लिए, यह समझा जाता है कि विधि नाम की वजह से सीमा को गद्देदार किया जाएगा।
तो इस सब के साथ, मेरा पेट पहले हस्ताक्षर के साथ जाना है। मेरे लिए, यह साफ है। जब जरूरत न हो तो संदर्भ को मजबूर करने की जरूरत नहीं है। लेकिन क्या मैं खुद या भविष्य के डेवलपर्स को इस अधिवेशन से दूर कर रहा हूं? क्या मैं एक सर्वोत्तम अभ्यास का उल्लंघन कर रहा हूं?
Range r
(कम से कम एक छोटी विधि शरीर के लिए) और Range toPad
।
Range range
तो ठीक है।