एक सामान्य नियम के रूप में, मैं कन्स्ट्रक्टर-आधारित निर्भरता इंजेक्शन का उपयोग करना चाहता हूं, लेकिन हाल ही में मैं एक कक्षा पर काम कर रहा था जो 4 अन्य वर्गों पर निर्भर था। चूंकि लंबी तर्क सूचियां पढ़ने में मुश्किल होती हैं, इसलिए मैंने 4-एन्टर कन्स्ट्रक्टर को 4 सेटर्स के साथ बदल दिया।एक कोड गंध "बहुत अधिक निर्भरता" है?
जब मैंने एक सहयोगी को इसका उल्लेख किया, तो उसने तर्क दिया कि यह स्वयं कोड गंध है। उन्होंने सुझाव दिया कि मैं इस वर्ग को "तोड़ दूंगा"।
कक्षा स्वयं अपेक्षाकृत कम है; यह काम के बड़े हिस्से को करने के लिए कई सहयोगियों का उपयोग करना होता है। इसमें एक छोटी (~ 12 लाइनें, व्हाइटस्पेस समेत) विधि होती है जो 4 सहयोगियों को कॉल करती है। क्या आप इस बात से सहमत हैं या असहमत हैं कि यह एक कोड गंध है? क्या कोई उद्देश्य उपाय है जिसका उपयोग मैं यह निर्धारित करने के लिए कर सकता हूं कि कितनी निर्भरता "बहुत अधिक" है? यह चक्रीय जटिलता, एकजुटता, युग्मन इत्यादि जैसे मीट्रिक से कैसे संबंधित है?