प्रोग्रामर को खराब कोड लिखने से कैसे रोकें

छवि
एक बार एक गैर-बेवकूफ लेख में, एक गैर-बेवकूफ हैब्राइज़र ने एक गैर-बेवकूफ विचार बताया। इसका सार यह था कि उनकी कंपनी ने एक प्रणाली स्थापित की, जो प्रोग्रामर द्वारा लिखे गए कोड को रिपॉजिटरी में जोड़ने की कोशिश के समय नियंत्रित करती है और उस कोड को अस्वीकार करती है जो कुछ मानदंडों के अनुसार नहीं होता है। मुझे यह विचार पसंद आया। मैंने (3 और लोगों ने) लेखक को एक विचार विकसित करने और इसके बारे में एक लेख लिखने के लिए कहा, लेकिन यह कभी सामने नहीं आया। और मैंने खुद इसका पता लगाने का फैसला किया।

प्रस्तावना


शुरुआत में मैं समझाऊंगा कि मुझे इस विचार से इतना मोह क्यों था। अपनी सभी सादगी के साथ, यह फायदे का एक पूरा गुच्छा देता है:


कार्यान्वयन


मैंने पहले से ही सोचा था कि मुझे अपनी बाइक को बाड़ देना होगा। कुछ भी नहीं। हमारे सामने सबकुछ पहले से ही चोरी है।
मिलिए SVNStyleCop से

पेशेवरों : 5 मिनट में स्थापना, स्थिर संचालन, विन्यास लचीलापन।
विपक्ष : केवल Windows और केवल C # (शायद अन्य भाषाओं और प्लेटफार्मों के लिए समाधान हैं, लेकिन चूंकि Windows और C # केवल मेरा विकल्प है, मैंने आगे खुदाई नहीं की)।

स्थापना

1. संग्रह डाउनलोड करें और इसे उस कंप्यूटर पर कहीं भी अनपैक करें जहां आपके पास एसवीएन सर्वर स्थापित है।
2. हम फ़ाइल SVNStyleCop.exe.config को सही करते हैं, इसमें svnlook.exe उपयोगिता का पथ लिखते हैं (यह SVN सर्वर के फ़ोल्डर में स्थित है)।
3. हम फ़ाइल SVNStyleCop.exe.config को सही करते हैं, इसमें लिखते हैं कि किन फ़ाइलों का विश्लेषण किया जाएगा। मैंने अभी लिखा है
< pathPatterns >
< clear />
< add value =".*\.cs$" />
</ pathPatterns >


4. हम SVNSettings.StyleCop फ़ाइल डालते हैं, पहले StyleCop उपयोगिता (कार्यक्रम ज्ञात है, मैं विस्तार से वर्णन नहीं करूंगा) कंपनी के कोड लेखन समझौतों के आधार पर SVNStyleCop में। यदि आपके पास ऐसे समझौते नहीं हैं, तो किसी को भी स्वीकार न करें। शर्म करो और पश्चाताप करो! बैठो और करो। आप इसे स्वयं नहीं कर सकते - कुछ स्मार्ट लोगों की कोशिश करें।
5. हुक को पूर्व-प्रतिबद्ध घटना पर सेट करें। SVN सर्वर विजुअल SVN में, यह SVNStyleCop डिलीवरी से "Pre प्रतिबद्ध हुक" सेक्शन में प्री-कमेटी.cmd फाइल की सामग्री को डालकर रिपॉजिटरी के संदर्भ मेनू से किया जाता है (इस फाइल में मान्य रास्तों को लिखना न भूलें!)।
6. हम कुछ मूर्खता करते हैं जो नियमों का उल्लंघन करते हैं, कुछ ऐसा करने की कोशिश करते हैं और देखते हैं


वोइला, यह काम करता है!

निष्कर्ष


वस्तुतः, यह बात इसके बिना बेहतर है। सब कुछ जो मैंने लेख की शुरुआत में लिखा था, वास्तव में समय, तंत्रिकाओं को बचाने और थोड़ा बेहतर गुणवत्ता कोड प्राप्त करने में मदद कर सकता है। बेशक, यहां वर्णित प्रणाली सभी परेशानियों के लिए रामबाण नहीं है, और कोड में यह अभी भी हो सकता है:


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

Source: https://habr.com/ru/post/In111463/


All Articles