ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में, एक विधि की अधिकतम लंबाई पर निश्चित रूप से कोई सटीक नियम नहीं है, लेकिन मैंने अभी भी इन दो उद्धरणों को कुछ हद तक एक दूसरे के विरोधाभासी पाया है, इसलिए मैं यह सुनना चाहता हूं कि आप क्या सोचते हैं।
में स्वच्छ कोड: फुर्तीली सॉफ्टवेयर शिल्प कौशल की एक पुस्तिका , रॉबर्ट मार्टिन कहते हैं:
कार्यों का पहला नियम यह है कि वे छोटे होने चाहिए। कार्यों का दूसरा नियम यह है कि वे उससे छोटे होने चाहिए। फ़ंक्शंस 100 लाइनें लंबी नहीं होनी चाहिए। फ़ंक्शंस शायद ही कभी 20 लाइनें लंबी होनी चाहिए।
और वह केंट बेक से देखे गए जावा कोड से एक उदाहरण देता है:
उनके कार्यक्रम में हर समारोह सिर्फ दो, या तीन, या चार लाइनों लंबा था। प्रत्येक पारदर्शी रूप से स्पष्ट था। प्रत्येक ने एक कहानी सुनाई। और प्रत्येक ने आपको सम्मोहक क्रम में अगले तक पहुँचाया। आपके कार्य कितने कम होने चाहिए!
यह बहुत अच्छा लगता है, लेकिन दूसरी ओर, कोड कम्प्लीट में , स्टीव मैककॉनेल कुछ अलग कहता है:
नियमित रूप से 100-200 लाइनों तक व्यवस्थित रूप से बढ़ने की अनुमति दी जानी चाहिए, सबूत के दशकों का कहना है कि इस तरह की लंबाई की दिनचर्या कोई और अधिक त्रुटि प्रवण तब छोटी दिनचर्या।
और वह एक अध्ययन का संदर्भ देता है जो कहता है कि 65 लाइनें या लंबी लाइनें विकसित करने के लिए सस्ती हैं।
इसलिए जब मामले के बारे में अलग-अलग राय दी जाती है, तो क्या आपके लिए एक कार्यात्मक सबसे अच्छा अभ्यास है?
switch
100 case
शर्तों वाला एक बयान 10 स्तरों के if
बयानों के एक दूसरे के भीतर निहित होने से अधिक बनाए रखने योग्य है ।