मैंने पढ़ा है और अब निम्न सवालों और गहराई से लेख और कई अन्य लोगों पर चर्चा की और अतीत में:कोशिश-पकड़ कथन के साथ मुझे किस प्रकार के कोड ब्लॉक संलग्न करना चाहिए?
Main method code entirely inside try/catch: Is it bad practice?
मैं इस लेख के कोडिंग मानक कर देगा मेरे संगठन में अपवाद हैंडलिंग! यहाँ http://www.codeproject.com/Articles/9538/Exception-Handling-Best-Practices-in-NET
What is the Best practice for try catch blocks to create clean code?
Best practices for exception management in Java or C# : एवरी अच्छा एक लेकिन मुझे जवाब नहीं था कि मैं इस बयान :( आप हर संभव जगह में प्रत्येक और हर अपवाद को पकड़ने की कोशिश नहीं करनी चाहिए पसंद नहीं आया।
Should multiple Try/Catch blocks in a method be combined
मैं एक समस्या है जब मैं कोशिश पकड़ बयान के साथ कोड के कुछ ब्लॉक संलग्न करने का फैसला करने की जरूरत है, मुझे पता है कि कोड संलग्न किया जाना चाहिए वें है ई दोषपूर्ण कोड, और मुझे यह जांचना चाहिए कि मैं क्या देख सकता हूं, लेकिन उदाहरण के लिए: मुझे कुछ टेक्स्ट फ़ाइल में एक पंक्ति लिखनी है, मुझे यह जांचना चाहिए कि फ़ाइल मौजूद है या नहीं, और यदि मुझे इसके बारे में लिखने की अनुमति है, तो क्या मुझे जांचें कि डिस्क पर कोई स्थान है या डिस्क लिखने योग्य है, और यदि मैंने स्पेस की जांच की है, तो क्या होगा यदि फ़ाइल लिखते समय कुछ हुआ (कुछ अन्य ऐप या धागे ने अंतरिक्ष का उपयोग किया, या हटाने योग्य ड्राइव हटा दी गई है?), क्या यह सबसे अच्छा अभ्यास है यदि मैंने उन चीजों की जांच की और IOException और SecurityException और अन्य संभावित अपवादों को संभाला, या मुझे केवल प्रयास किए बिना जांच करनी चाहिए?
एक और उदाहरण: मैं डाटाबेस तक पहुंचने के लिए एंटीटीफ्रेमवर्क का उपयोग कर रहा हूं, कुछ एक्सेस करते समय डेटाबेस से संपर्क कर सकते हैं, मुझे पता है कि अगर बंद हो तो मुझे कनेक्शन की जांच करनी चाहिए और इसे खोलने का प्रयास करना चाहिए, लेकिन कई और कई चीजें विफल हो सकती हैं इस कथन में, डेटाबेस एक हटाने योग्य ड्राइव पर हो सकता है, पढ़ने के दौरान इस ड्राइव को हटाया जा सकता है, डीबीएमएस की सेवा किसी भी कारण से रुक सकती है, कोई स्पेस अपवाद नहीं फेंक दिया जा सकता है, डेटाबेस की योजना बदलने के बाद बदल सकती है कुछ **** कारणों के लिए अपना कोड निष्पादित करें, मैं अपने कोड को असफल होने से कैसे रोक सकता हूं, क्या मैं बस हर चीज की जांच कर सकता हूं जिसे मैं देख सकता हूं, और आगे बढ़ सकता हूं? या मुझे अपवाद के लिए प्रयास करने का प्रयास करना चाहिए, भले ही मैंने उन्हें जांच लिया हो?
मुझे अपने उत्तरों के संदर्भ दें कृपया, सामान्य उत्तर नहीं!
संपादित
और यकीन है कि यह पढ़ें: http://msdn.microsoft.com/en-us/library/seyhszts.aspx
अगर आप नीचे मतदान करते हैं तो कृपया एक टिप्पणी करें! –
आप केवल देखभाल करते हैं कि अगर आप कोड में इसे सही करने के लिए काम कर सकते हैं, या काम करने के इच्छुक हैं तो यह विफल क्यों हुआ। अन्यथा आप केवल अपवाद लॉग और लॉगौती कर सकते हैं। अधिकांश ऐप्स को आपके द्वारा प्रस्तावित मजबूती के प्रकार की आवश्यकता नहीं होती है, कुछ करते हैं। – PatFromCanada