व्यक्तिगत रूप से, मुझे लगता है कि जब आप एक खोजी चक्र में या सिर्फ "खेल" रहे हैं, तो टुपल्स को विकास का एक पुनरावृत्ति वाला हिस्सा लगता है। चूँकि एक Tuple जेनेरिक है, मैं सामान्य पैरामीटर के साथ काम करते समय इसके बारे में सोचता हूँ - विशेषकर जब कोड का जेनेरिक टुकड़ा विकसित करना चाहता हूँ, और मैं कोड अंत में शुरू कर रहा हूँ, इसके बजाय खुद से पूछ रहा हूँ "मुझे यह कॉल कैसा लगेगा देखने के लिए?"।
अक्सर मुझे एहसास होता है कि संग्रह जो टुपल फॉर्म एक सूची का हिस्सा बन जाता है, और सूची> पर घूरना वास्तव में सूची के इरादे को व्यक्त नहीं करता है, या यह कैसे काम करता है। मैं अक्सर इसके साथ "लाइव" करता हूं, लेकिन खुद को सूची में हेरफेर करना चाहता हूं, और एक मूल्य बदलना चाहता हूं - जिस बिंदु पर, मैं जरूरी नहीं कि इसके लिए एक नया टपल बनाना चाहता हूं, इस प्रकार मुझे अपना खुद का वर्ग या संरचना बनाने की आवश्यकता है इसे धारण करने के लिए, इसलिए मैं हेरफेर कोड जोड़ सकता हूं।
बेशक, वहाँ हमेशा विस्तार के तरीके हैं - लेकिन अक्सर आप सामान्य कार्यान्वयन के लिए उस अतिरिक्त कोड का विस्तार नहीं करना चाहते हैं।
कई बार मैं एक टुपल के रूप में डेटा व्यक्त करना चाहता हूं, और टुपल्स उपलब्ध नहीं थे। (VS2008) जिस स्थिति में मैंने सिर्फ अपना टपल क्लास बनाया है - और मैं इसे थ्रेड सेफ (अपरिवर्तनीय) नहीं बनाता।
इसलिए मुझे लगता है कि मुझे लगता है कि ट्यूपल्स एक प्रकार का नाम खोने के खर्च पर आलसी प्रोग्रामिंग कर रहे हैं जो इसका उद्देश्य है। अन्य खर्च यह है कि आपको टपल के हस्ताक्षर की घोषणा करनी होगी जहां भी इसे एक पैरामीटर के रूप में उपयोग किया जाता है। कई तरीकों के बाद जो फूला हुआ दिखना शुरू होता है, आपको लग सकता है जैसे मैं करता हूं, कि यह एक वर्ग बनाने के लायक है, क्योंकि यह विधि हस्ताक्षर को साफ करता है।
जिस कक्षा में आप पहले से ही काम कर रहे हैं, उसके एक सार्वजनिक सदस्य के रूप में मैं क्लास शुरू करना शुरू कर देता हूँ। लेकिन जिस क्षण यह मूल्यों के संग्रह से आगे निकलता है, यह उसकी खुद की फ़ाइल हो जाती है, और मैं इसे क्लास से बाहर कर देता हूँ।
तो पूर्वव्यापी में, मेरा मानना है कि मैं ट्यूपल्स का उपयोग करता हूं जब मैं बंद नहीं करना चाहता हूं और एक कक्षा लिखता हूं, और अभी जो मैं अभी लिख रहा हूं उसके बारे में सोचना चाहता हूं। इसका मतलब है कि पाठ के हस्ताक्षर आधे घंटे में काफी बदल सकते हैं, जबकि मुझे पता है कि मुझे इस पद्धति के लिए कौन से डेटा की आवश्यकता है, और यह कैसे वापस आ रहा है, जो कभी भी मूल्यों पर लौटता है।
अगर मुझे कोड को रीफैक्टर करने का मौका मिलता है, तो अक्सर मैं इसमें टपल की जगह पर सवाल उठाऊंगा।