2010-10-29 21 views
8

मैं एक मनमाना जवाब की तलाश में हूं, इसलिए यह एक और चर्चा हो सकती है। मैं सोच रहा हूं कि दृश्य स्टूडियो में मेरे सी # कोड पर टिप्पणी करने का सबसे अच्छा अभ्यास क्या है। फिलहाल मैं एक्सएमएल उत्पन्न करने के लिए ट्रिपल /// का उपयोग कर रहा हूं और एक सीएम या एचटीएमएल फाइल बनाने के लिए रेत महल का उपयोग कर रहा हूं।टिप्पणी कोड सी # दृश्य स्टूडियो सर्वोत्तम अभ्यास

  1. अन्य डेवलपर्स मेरी कोड का उपयोग कर रहे हैं वे प्रलेखन, दोनों Intellisence और chm पढ़ सकते हैं: लेकिन मेरी समस्या यह है कि मैं दो कारणों के लिए कोड टिप्पणियों का उपयोग है। या एचटीएमएल फ़ाइल।
  2. लेकिन मैं खुद को अनुस्मारक के रूप में टिप्पणी का उपयोग भी करता हूं। इसलिए जब मैं आधे साल बाद कुछ जटिल तरीकों से वापस आ जाता हूं तो मैं अपने विचारों को याद कर सकता हूं।

दोनों लक्ष्यों को एक-दूसरे के साथ हस्तक्षेप किए बिना कैसे पूरा किया जा सकता है, और साथ ही साथ एक त्वरित कार्य हो सकता है, बहुत सारे कोडिंग समय नहीं लेते?

उत्तर

15

सबसे अच्छा सलाह मैं तुम्हें दे सकता है:

बुरा कोड टिप्पणी न करें; इसे फिर से लिखो!

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

एक पुस्तक जिसने मुझे बेहतर कोड बनाने में बहुत मदद की है Robert Martins Clean Code था। यदि आपने इसे नहीं पढ़ा है, तो कृपया करें। और अपनी कंपनी के सभी डेवलपर्स को इसे पढ़ने दें।

शुभकामनाएं।

+1

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

+0

मैं आपसे सहमत हूं। अच्छी गुणवत्ता और अर्थशास्त्र के बीच हमेशा एक व्यापार बंद है। मैं निश्चित रूप से टिप्पणियां लिखता हूं जैसे "// TODO: इस पर प्रतिक्रिया करने के लिए मत भूलना" या "// हैक: बाद में ठीक करें" :-) बेशक यह प्रोजेक्ट के प्रकार पर निर्भर करता है, लेकिन मुझे अक्सर खुद को कोड लिखना पड़ता है कई सालों तक (अक्सर मेरे अलावा अन्य लोगों द्वारा) बनाए रखा जाना चाहिए और उस स्थिति में जब मैं इसे लिखने में अतिरिक्त देखभाल करता हूं तो यह वास्तव में लंबे समय तक भुगतान करता है। प्रोटोटाइप लिखते समय मैं बहुत कम ध्यान देता हूं। – Steven

+1

@ डीएनआरएन: अर्थशास्त्र की बात करते हुए, क्या आपने "तकनीकी ऋण" की अवधारणा के बारे में सुना है?विचार यह है कि यदि आप बाद की तारीख के लिए रिफैक्टरिंग बंद कर देते हैं, तो आप वास्तव में तकनीकी ऋण प्राप्त कर रहे हैं जिसे भविष्य में ब्याज के साथ भुगतान करना होगा। इस मामले में रुचि याद रखने का उपर है कि कोड क्या करता है। इसके बजाए, मैं एक गुणवत्ता रिफैक्टरिंग टूल की सिफारिश करता हूं, जैसे रीशेपर या कोडरश जो बेहद कुशल रीफैक्टरिंग का काम करता है। इस तरह के एक उपकरण का उपयोग करके, आप दोनों दुनिया के सर्वश्रेष्ठ ... अब अतिरिक्त समय के बिना refactor मिलता है। –

6

/// टिप्पणियों का उपयोग अपने सार्वजनिक और संरक्षित एपीआई दस्तावेज़ के लिए करें। अपने API का उपयोग कैसे किया जाना चाहिए इसका वर्णन करने के लिए <remarks> का उपयोग करें। इन टिप्पणियों के दर्शक आपके कोड का उपयोग कर अन्य डेवलपर्स हैं।

अपने कोड पर टिप्पणी करने के लिए // टिप्पणियों का उपयोग करें जब भी अकेले कोड पर्याप्त रूप से समझने के लिए पर्याप्त नहीं है कि क्या हो रहा है। इन टिप्पणियों के दर्शक भविष्य में शायद तीन महीने या आपके डेवलपर को अपना कोड बनाए रखने जा रहे हैं। आप उन टिप्पणियों को ध्वजांकित करने के लिए TODO या BUGBUG जैसी विशेष टिप्पणियों का उपयोग कर सकते हैं।

+0

मैं अपने आप को कुछ ऐसा अनुस्मारक के रूप में TODO का उपयोग करता हूं जिसे बाद में लागू किया जाना है, और इसे वास्तव में उपयोगी पाया गया है। मुझे "स्कोप व्यू" पसंद है जहां /// सार्वजनिक और संरक्षित एपीआई के लिए हैं, जो इंटेलिसिन में उपयोग किए जाते हैं। प्रलेखन फ़ाइल में अतिरिक्त जानकारी के रूप में उपयोग किया जाता है। और // बाद में इसे समीक्षा करते समय केवल कोड में देखा जाता है। – DNRN

2

मैं कक्षाओं, विधियों, आदि, और // पर 'सार्वजनिक' दस्तावेज के लिए 'निजी' टिप्पणियों के लिए या मेरे पढ़ने के लिए अनुसरण करने वाले कोडर पर 'सार्वजनिक' दस्तावेज के लिए /// दोनों टिप्पणी शैलियों को गठबंधन करता हूं।

+0

यह वही है जो मैं करता हूं। – Mizipzor

संबंधित मुद्दे