2012-04-18 28 views
5

मैंने सी # कोड अनुबंधों का एक अद्भुत डेमो देखा और मैं उन्हें कोड कोड में लागू करना शुरू करना चाहता हूं। काश मैं उन्हें पहले से ही अपने कोड में था। एक कहां से शुरू होता है?कोड अनुबंधों के साथ कहां से शुरू करें?

मैं डेमो से किसी भी मुद्रित सामग्री को हटाने में विफल रहा। कोई सुझाव पढ़ा?

कोड अनुबंध के साथ शुरुआत के लिए कोई सुझाव?

आपकी मदद के लिए अग्रिम धन्यवाद।

+2

http://devjourney.com/blog/code-contracts-part-1-introduction/ – albertjan

+2

सावधान रहें कि .NET Framework BCL में कोड अनुबंध एनोटेशन कुछ हद तक स्पॉटी हैं। उदाहरण के लिए, कई विधियां जो हमेशा एक गैर-शून्य वस्तु (जब तक यह फेंकता नहीं है) वापस नहीं आती हैं। यह स्थिर विश्लेषक को संतुष्ट करने के लिए आपको शून्य कोड या 'Assume' कॉल के साथ अपना कोड कूड़ा करने के लिए मजबूर करता है। – phoog

+2

@phoog जो सही है, लेकिन कोड अनुबंध टीम बीसीएल के अधिक से अधिक अनुबंधों को जोड़ने के लिए काम कर रही है, इसलिए यह लगभग हर रिलीज में सुधार कर रहा है। – Andy

उत्तर

6

मैं इस विकी से शुरू करूंगा जो Design by Contract का वर्णन करता है। फिर MS' implementation पर प्रलेखन में गोता लगाएँ। वास्तव में इसे अपने कोड में काम करने के लिए, मुझे लगता है कि आप लगभग कहीं भी शुरू कर सकते हैं, लेकिन शायद उन क्षेत्रों के साथ शुरू करें जिन पर कम से कम प्रभाव पड़ने की संभावना है। तो हो सकता है कि कुछ अनुबंध जोड़ें। यदि उचित हो तो तर्कों को सीट करने की आवश्यकता है। जब आप अधिक आरामदायक होते हैं, तो आप उन्हें इंटरफेस में जोड़ सकते हैं, लेकिन जागरूक रहें इससे चीजें उड़ सकती हैं ... लेकिन एक अच्छे तरीके से। त्रुटियों या चेतावनियों का मतलब है कि आप डीबीसी का उल्लंघन कर रहे हैं, और संभवतः Liskov Substitution Principle

5

user manualCode Contracts प्रोजेक्ट पेज पर प्रदान किया गया है, कोड अनुबंधों की उपयोगिता और संभावनाओं का एक बहुत अच्छा विवरण देता है।