क्या मैककेबे कॉम्प्लेक्सिटी माप के लिए एक मीट्रिक अनुरूप है कि एक दिनचर्या कितना सामंजस्यपूर्ण है और यह भी कि कैसे नियमित (या कसकर) युग्मित दिनचर्या समान कोड बेस में अन्य कोड के लिए है?
क्या मैककेबे कॉम्प्लेक्सिटी माप के लिए एक मीट्रिक अनुरूप है कि एक दिनचर्या कितना सामंजस्यपूर्ण है और यह भी कि कैसे नियमित (या कसकर) युग्मित दिनचर्या समान कोड बेस में अन्य कोड के लिए है?
जवाबों:
मुझे लगता है कि आप जिस मीट्रिक की तलाश कर रहे हैं वह LCOM4 है, हालांकि यह कक्षाओं के लिए अधिक लागू होता है।
सोनार इसे यहाँ अच्छी तरह से समझाता है :
... मेट्रिक: LCOM4 (कोसेशन मेथड्स की कमी) को मापने के लिए कि कोएक्टिव क्लासेस कितने होते हैं। इस मीट्रिक की व्याख्या करना बहुत सरल है क्योंकि मूल्य 1 का मतलब है कि एक वर्ग की केवल एक ज़िम्मेदारी (अच्छी) है और मूल्य X का मतलब है कि एक वर्ग की शायद X ज़िम्मेदारियाँ (खराब) हैं और उसे फिर से सक्रिय / विभाजित किया जाना चाहिए।
यहां कोई जादू नहीं है, केवल सामान्य ज्ञान है। चलो क्लास चालक के साथ एक सरल उदाहरण लेते हैं। इस वर्ग के दो क्षेत्र हैं: कार और मस्तिष्क, और पाँच विधियाँ: ड्राइव (), goTo (), स्टॉप (), getAngry () और ड्रिंक कॉफ़ी ()। यहाँ उन घटकों के बीच निर्भरता ग्राफ है। संबंधित घटकों के तीन ब्लॉक हैं, इसलिए LCOM4 = 3, इसलिए कक्षा में तीन अलग-अलग ज़िम्मेदारियाँ हैं और एकल जिम्मेदारी दायित्व टूट जाता है।
...
यह एक महान उपकरण है, अगर आप इसका उपयोग कर सकते हैं। :)
brain.setAngry(driver)
? car.applyBreaks(driver)
?
विभिन्न कोड मीट्रिक टूल में अस्थिरता का समर्थन किया जाता है।