Netbeans 7.4 प्रति विधि नियम के अनुसार "10 लाइन अधिकतम" का परिचय देता है। यह नियम कहाँ से आता है? [बन्द है]


80

NetBeans 7.4 बीटा वर्तमान में सार्वजनिक डाउनलोड के लिए उपलब्ध है, और यह डिफ़ॉल्ट रूप से एक अजीब चेतावनी नियम पेश करता है:

विधि की लंबाई 16 लाइनें (10 अनुमत)

मेरा सवाल है: क्या यह एक स्वीकृत कोड कन्वेंशन रूल है, जो किसी तरह, कहीं साबित हो सकता है? NetBeans समर्थन / देवता कहते हैं कि यह बग नहीं है, लेकिन एक बयान न दें कि वे केवल 10 लाइनों की अनुमति क्यों देते हैं, और वास्तव में इस नियम का मूल कहां है।


25
यह एक पागल नियम है कि इस तथ्य से और भी बेतुका है कि 10 लाइनों में व्हॉट्सएप शामिल है।

13
हां, हम सभी अपनी खाली लाइनों को हटा दें ... जिससे कोड में सुधार होगा :)
क्रिस लैर्मन

2
व्हॉट्सएप अब शामिल नहीं हैं। अपने NB स्थापना को पैच 1 में अपडेट करें। netbeans.org/bugzilla/show_bug.cgi?id=237620
बेन

5
जैसा कि मैंने समझा: यह हमारे लिए कोड लिखने के दौरान अपने दिमाग को बेहतर बनाने के लिए लागू करने के लिए कुछ है। यानी अगर इसे लंबा करना है, तो इसे विभाजित किया जा सकता है।
सईदबाक़र

जवाबों:


129

आप NetBeans विकल्पों में अधिकतम विधि / फ़ंक्शन लंबाई चेतावनी व्यवहार को बदल सकते हैं (यह टूल्स-> विकल्प-> संपादक में, संकेत टैब में, " चेक बॉक्स सूची में " बहुत रेखाएँ "अनुभाग के अंतर्गत )।

वहां आप अधिकतम संख्या निर्धारित कर सकते हैं, कि आप कैसे चेतावनी देना चाहते हैं, आदि।

मेरा मानना ​​है कि नियम नेटबीन्स डेवलपर्स द्वारा पेश किया गया था क्योंकि टीमों में काम करते समय, स्वचालित उपकरण जो क्यूएएस कोड फ्लैग लॉन्ग विधि घोषणाओं / फ़ंक्शन निकायों का "निरीक्षण" करने के लिए उपयोग करते हैं। दुर्भाग्य से, "कोड विश्लेषकों" द्वारा स्वचालित उपकरणों का उपयोग बढ़ रहा है, जबकि इसके पीछे के कारणों की उनकी समझ अभी भी सीमित है। मैं यह नहीं कहता कि आपके कार्य सैकड़ों पंक्तियों के लंबे होने चाहिए - यह केवल स्पष्ट गलत है, लेकिन कोडिंग कानून के रूप में एक कठिन-कोडित संख्या है - चलो!


6
सभी निष्पक्षता में, मैंने जो देखा है, हर मीट्रिक का कहना है कि फ़ंक्शन की लंबाई बढ़ने पर कोड पठनीयता कम हो जाती है। कोड कम्प्लीट 2 यहां तक ​​कहा जाता है कि
स्थिरता

1
यदि आपने अपने नेटबायन्स में मल्टीपल कोडिंग भाषाएं स्थापित की हैं, तो पहले "भाषा" रोलअप को "पीएचपी" में बदलना न भूलें।

बिल्डिंग मेंटेन करने योग्य सॉफ्टवेयर में जोस्ट विज़सर कहते हैं 15 लाइनें। लेकिन यह पूरे कोडबेस के संदर्भ में माना जाना है। 15 लाइनों से अधिक की कुछ इकाइयाँ चिंता का कारण नहीं हैं, लेकिन कई 100-लाइन इकाइयाँ होंगी।
अलोंसो डेल

25

"10 लाइनों का नियम" परीक्षण-संचालित विकास को लागू करने के साथ करना है। सिद्धांत यह है कि कोई भी विधि जिसमें दस से अधिक लाइनें होती हैं, उन्हें परीक्षण योग्य इकाइयों में बेहतर रूप से तोड़ा जा सकता है। यह सिद्धांत में निहित है, लेकिन व्यवहार में इस तरह की चेतावनी सहायक की तुलना में अधिक कष्टप्रद है।


9
"10 लाइनें नियम" यह सुनिश्चित करता है कि आप अपने दिन का बेहतर हिस्सा अपने तरीकों के लिए नए नाम सोचकर खर्च करें
इवान मारजानोविक

0

मुझे लगता है कि उस बारे में एक सम्मेलन नहीं है, और विशेष रूप से बड़ी परियोजनाओं में काम करने के लिए छोटे कार्य करना बहुत कठिन है।

मुझे लगता है कि NetBeans (या नियम) में समस्या सिर्फ एक ब्रैकेट या प्रलेखन के साथ लाइनों की गिनती है।

यह लेख उसे 5-15 पंक्तियों के साथ लिखने के कार्यों के बारे में राय देता है।


0

मैं हमेशा इस चेतावनी को अक्षम करता हूं, साथ ही कई नेस्टेड ब्लॉकों के बारे में चेतावनी भी देता हूं। मैं इस विचार को समझता हूं कि बड़ी विधियां नहीं हैं, लेकिन समय का एक बहुत व्यावहारिक नहीं है, और जैसा कि किसी और ने उल्लेख किया है कि यदि आप अपने कोड को मनमाने कार्यों में विभाजित करते हैं, तो केवल उस आईडीई को अपील करने के लिए जिसे आप स्पेगेटी कोड के साथ सभी जगह कूदते हुए समाप्त करते हैं। , refactoring बाद में भी एक बड़ी समस्या बन जाती है।

लाइन की लंबाई की चेतावनी के रूप में भी, शायद एक पंक्ति में 50 अक्षर लंबे होने से आप 1985 में बग़ल में स्क्रॉल कर सकते हैं, लेकिन आज हमारे पास बड़े मॉनिटर हैं (अब रंग में भी!)। मैंने देखा है कि लोग चर नामों को छोटा करके कोड की एक पंक्ति को बदल देते हैं ताकि यह सीमा के भीतर फिट हो जाए, कोड की एक पूरी तरह से पठनीय लाइन को एक अशोभनीय गड़बड़ में बदल दे, ताकि यह सीमा के भीतर फिट हो जाए।

व्यक्तिगत रूप से मुझे लगता है कि उन तीन नियमों ने मिलकर पठनीय / परीक्षण योग्य कोड बनाने में मदद करने की तुलना में अधिक कचरा स्पेगेटी कोड का कारण बना।


-1

मुझे लगता है कि ऐसा कोई नियम नहीं है। मैंने हमेशा सोचा था कि एक अच्छा सम्मेलन एक कक्षा में कोड की अधिक पंक्तियां नहीं होगा, जो बिना स्क्रॉल किए पढ़ सकता है। 10 लाइनें मेरे लिए बहुत ज्यादा नहीं हैं, लेकिन सामान्य तौर पर यह अवलोकन उद्देश्यों और आसान परीक्षण के लिए है ..


5
मेरे लिए, एक 1-पृष्ठ वर्ग को निश्चित रूप से कुछ करने की इच्छा नहीं होनी चाहिए। लाइनों की संख्या को सीमित करने के लिए नियम बनाना आसान है, लेकिन आपको अभी भी कहीं न कहीं अपना कोड लॉजिक लगाने की आवश्यकता है । कितने फंक्शन / क्लास जंप-इन्स और जंप-आउट किसी का दिमाग एक साथ पकड़ सकता है, इसकी भी एक सीमा है।
userfuser
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.