मुझे लगता है कि वास्तव में संबोधित करने के लिए दो चीजें हैं, और मैं वास्तव में उन पर अलग से विचार करूंगा क्योंकि उन्हें एक ही तरीके से संपर्क नहीं किया जा सकता है, हालांकि मुझे दोनों महत्वपूर्ण लगते हैं।
- तकनीकी पहलू: जिसका उद्देश्य जोखिम भरा या बीमार कोड से बचने का है (भले ही संकलक / दुभाषिया द्वारा स्वीकार किया गया हो)
- प्रस्तुति का पहलू: जो पाठकों को कार्यक्रम को स्पष्ट करने के साथ ही चिंता करता है
तकनीकी पहलू I कोडिंग मानक के योग्य है , जैसा कि हर्ब सटर और आंद्रेई अलेक्जेंड्रेस्कु अपने सी ++ कोडिंग मानकों के साथ करते हैं । प्रस्तुति मैं कोडिंग स्टाइल के योग्य है , जिसमें नामकरण सम्मेलन, इंडेंटेशन, आदि शामिल हैं ...
कोडिंग मानक
क्योंकि यह विशुद्ध रूप से तकनीकी है, एक कोडिंग मानक ज्यादातर उद्देश्य हो सकता है। जैसे कि हर नियम को एक कारण से समर्थन किया जाना चाहिए। पुस्तक में मैंने प्रत्येक आइटम का उल्लेख किया है:
- एक शीर्षक, सरल और बात तक
- एक सारांश, जो शीर्षक की व्याख्या करता है
- एक चर्चा, जो अन्यथा करने के मुद्दे को चित्रित करती है और इस प्रकार औचित्य बताती है
- वैकल्पिक कुछ उदाहरण, क्योंकि एक अच्छा उदाहरण एक हजार शब्दों के लायक है
- वैकल्पिक अपवादों की एक सूची जिसके लिए यह नियम लागू नहीं किया जा सकता है, कभी-कभी काम के साथ
- संदर्भों की एक सूची (अन्य पुस्तकें, वेबसाइट) जिन्होंने इस बिंदु पर चर्चा की है
औचित्य और अपवाद बहुत महत्वपूर्ण हैं, क्योंकि वे क्यों और कब का सारांश देते हैं।
शीर्षक पर्याप्त स्पष्ट होगा कि समीक्षाओं के दौरान किसी को काम करने के लिए केवल शीर्षकों (चीट शीट) की सूची की आवश्यकता होती है। और जाहिर है, एक के लिए बाहर देखने के लिए आसान बनाने के लिए श्रेणी के अनुसार आइटम समूह।
सटर और अलेक्जेंड्रेस्कु केवल सौ वस्तुओं की एक सूची रखने में कामयाब रहे, भले ही सी ++ को बाल माना जाता है);
कोडिंग स्टाइल
यह भाग आम तौर पर कम उद्देश्य वाला होता है (और यह व्यक्तिपरक हो सकता है)। यहां इरादा स्थिरता की गारंटी देने का है, क्योंकि इससे रखरखाव और नए काम करने वालों को मदद मिलती है।
आप एक पवित्र-युद्ध में प्रवेश नहीं करना चाहते हैं जिसके बारे में इंडेंटेशन या ब्रेस स्टाइल बेहतर है, इसके लिए फ़ोरम हैं: इसलिए इस श्रेणी में आप सर्वसम्मति से बहुमत से वोट करते हैं> नेता (ओं) द्वारा मनमाना निर्णय।
प्रारूपण के उदाहरण के लिए, कलात्मक शैली के विकल्पों की सूची देखें । आदर्श रूप से, नियम स्पष्ट और पर्याप्त होना चाहिए कि एक प्रोग्राम कोड को फिर से लिख सके (हालांकि यह संभावना नहीं है कि आप कभी भी कोड एक होंगे;);
नामकरण सम्मेलन के लिए, मैं वर्ग / प्रकार को आसानी से चर / विशेषताओं से अलग करने की कोशिश करूंगा।
यह इस श्रेणी में भी है कि मैं "उपायों" को वर्गीकृत करता हूं:
- छोटी से लंबी विधियों को प्राथमिकता दें: आमतौर पर इस बात पर सहमत होना मुश्किल है कि लंबा क्या है
- इंडेंटेशन को कम करने के लिए जल्दी वापसी / जारी / तोड़ना पसंद करें
विविध?
और अंतिम शब्द के रूप में, एक आइटम है जो शायद ही कभी होता है, यदि कभी कोडिंग मानकों में चर्चा की जाती है, शायद इसलिए कि यह प्रत्येक एप्लिकेशन के लिए विशेष है: कोड संगठन। वास्तुशिल्प मुद्दा शायद सबसे उत्कृष्ट मुद्दा है, प्रारंभिक डिजाइन पर पेंच और आप इसे अब से वर्षों से ग्रस्त हो जाएंगे। आपको शायद मूल फ़ाइल हैंडलिंग के लिए एक खंड जोड़ना चाहिए: सार्वजनिक / निजी हेडर, निर्भरता प्रबंधन, चिंता का पृथक्करण, अन्य प्रणालियों या पुस्तकालयों के साथ इंटरफेस ...
लेकिन वे कुछ भी नहीं हैं अगर वे वास्तव में लागू और लागू नहीं होते हैं ।
किसी भी उल्लंघन को कोड समीक्षाओं के दौरान लाया जाना चाहिए, और उल्लंघन के बकाया होने पर कोई भी कोड समीक्षा ठीक नहीं होनी चाहिए:
- नियम से मिलान करने के लिए कोड को ठीक करें
- नियम को ठीक करें ताकि कोड अब बाहर खड़ा न हो
जाहिर है, एक नियम को बदलने का मतलब है नेताओं से "आगे बढ़ना"।