LOC संभवतः सबसे अधिक उपयोग की जाने वाली मेट्रिक्स में से एक है, और परिणामस्वरूप कोड गुणवत्ता के अधिक बेकार उपायों में से एक है, और प्रोग्रामिंग प्रयास का एक और भी अधिक बेकार माप है।
हां, यह मेरे लिए एक साहसिक कथन है, और नहीं, मैं आपको अपनी बात साबित करने के लिए पढ़ाई की ओर इशारा नहीं कर सकता। हालाँकि, मैं कड़ी मेहनत के साथ यह अनुभव कर सकता हूं कि जब आप इस बारे में चिंता करना शुरू करते हैं कि आपने कितना कोड लिखा है, तो आप शायद गलत समस्याओं के बारे में चिंता कर रहे हैं।
आपको सबसे पहले अपने आप से यह पूछने की आवश्यकता है कि आप क्या मापना या साबित करना चाह रहे हैं, और क्या यह प्रमाण केवल ब्याज से बाहर है, या एक व्यापक गुणवत्ता सुधार का समर्थन करने के लिए और जहाँ आपको अपनी टीम से खरीदने के लिए इस जानकारी का उपयोग करने की आवश्यकता है। / प्रबंधन इसके बारे में कुछ करने के लिए।
जिन चीजों के लिए मैं एलओसी का उपयोग करता हूं उनमें से एक थोड़ा सा चेक है। अगर मैं खुद को बहुत अधिक कोड लिखता हूं, तो मुझे एलओसी प्रति विधि, या एलओसी प्रति वर्ग के बजाय एलओसी पर अधिक रुचि हो जाती है। ये माप ऐसे संकेतक हो सकते हैं जिन्हें आप आगे करना चाहते हैं यदि आप थोड़ा ओसीडी महसूस कर रहे हैं कि आपका कोड कितना अच्छा होना चाहिए। बहुत बड़ी कक्षाओं को कुछ छोटी कक्षाओं में शामिल करने की आवश्यकता हो सकती है, और लंबी बहु-पंक्ति विधियों को कई तरीकों, अन्य वर्गों में विभाजित करने की आवश्यकता हो सकती है, या कुछ पुनरावृत्ति का संकेत भी दे सकती है जिन्हें हटाया जा सकता है। ध्यान दें मैंने "शब्द" का इस्तेमाल कई बार वहां किया।
वास्तविकता यह है कि एलओसी केवल एक संभावित संकेतक प्रदान करता है, और कोई वास्तविक गारंटी नहीं है कि आपके कोड को बदलने की आवश्यकता हो सकती है। यह पूछने के लिए वास्तविक प्रश्न यह है कि क्या कोड आवश्यकतानुसार और अपेक्षित रूप से व्यवहार करता है। यदि ऐसा है, तो आपका अगला प्रश्न यह है कि क्या आप कोड को आसानी से बनाए रख पाएंगे या नहीं, और क्या आपके पास भविष्य में आपके रखरखाव के ओवरहेड्स को कम करने के लिए वर्किंग कोड में बदलाव करने के लिए या तो अभी या भविष्य में समय होगा।
अक्सर, बहुत सारे कोड का मतलब है कि आपके पास बाद में बनाए रखने के लिए अधिक होगा, लेकिन कभी-कभी भी अच्छी तरह से फैक्टर कोड को कोड की सैकड़ों लाइनों तक फैला सकते हैं, और हां, आप कभी-कभी खुद को एक दिन में कोड की सैकड़ों लाइनें लिख सकते हैं। हालांकि अनुभव मुझे बताता है कि अगर मैं हर दिन नए कोड की सैकड़ों पंक्तियों का एक आउटपुट बना रहा हूं, तो अक्सर यह जोखिम होता है कि कोड में से अधिकांश को अनुचित तरीके से काट दिया गया है और कहीं और से पेस्ट किया गया है, और यह अपने आप में समस्याओं का संकेत हो सकता है दोहराव और रखरखाव, लेकिन फिर से इसकी कोई गारंटी नहीं है, इसलिए मैं इस बात पर निर्भर करता हूं कि मेरा अनुभव और वृत्ति मुझे इस आधार पर बताती है कि हाथ में काम कैसे पूरा हुआ।
आपके प्रश्न IMHO में उत्पन्न दुविधा से बचने का सबसे अच्छा तरीका यह है कि आप LOC के बारे में भूल जाएं, और हर समय रिफ्लेक्टर करें। अपना कोड टेस्ट पहले लिखें, फेल करने के लिए लागू करें, पास करने के लिए रिफलेक्टर, फिर देखें कि वहां क्या रिफैक्ट किया जा सकता है और फिर कोड को बेहतर बनाने के लिए। आप यह जानकर कार्य छोड़ देंगे कि आपने अपना काम पहले ही डबल-चेक कर लिया है, और आप भविष्य में दूसरे का अनुमान लगाने के बारे में चिंतित नहीं होंगे। वास्तविक रूप से बोलते हुए, यदि आप एक परीक्षण-प्रथम दृष्टिकोण का उपयोग करते हैं जैसा कि मैंने वर्णन किया है, तो आपके पूर्ण कोड पर किसी भी LOC / दिन माप का वास्तव में मतलब होगा कि आपने मापी गई राशि का 3-5 गुना लिखा है, उस प्रयास के साथ आपके चल रहे रिफैक्टरिंग द्वारा सफलतापूर्वक छिपा हुआ है। प्रयासों।