यह मुझे चकित करता है कि, इस दिन और उम्र में, ऐसे उत्पाद जिनका उपयोग उनकी बेल्ट के तहत वर्षों से होता है, पेशेवरों की टीमों द्वारा निर्मित, आज भी - उपयोगकर्ता को उपयोगी त्रुटि संदेश प्रदान करने में विफल हैं। कुछ मामलों में, अतिरिक्त जानकारी के सिर्फ एक छोटे से टुकड़े को जोड़ने से उपयोगकर्ता के घंटों की परेशानी को बचाया जा सकता है।
एक प्रोग्राम जो एक त्रुटि उत्पन्न करता है, इसे एक कारण के लिए उत्पन्न करता है। इसके पास उपयोगकर्ता को सूचित करने के लिए इसके निपटान में सब कुछ है जितना कुछ हो सकता है, क्यों कुछ विफल रहा। और फिर भी ऐसा लगता है कि उपयोगकर्ता को सहायता करने के लिए जानकारी प्रदान करना कम प्राथमिकता है। मुझे लगता है कि यह बहुत बड़ी असफलता है।
एक उदाहरण SQL सर्वर से है। जब आप कोशिश करते हैं और उपयोग में आने वाले डेटाबेस को पुनर्स्थापित करते हैं, तो यह आपको सही नहीं होने देगा। SQL सर्वर जानता है कि कौन सी प्रक्रियाएं और एप्लिकेशन इसे एक्सेस कर रहे हैं। यह उस प्रक्रिया (तों) के बारे में जानकारी शामिल नहीं कर सकता है जो डेटाबेस का उपयोग कर रहे हैं? मुझे पता है कि हर कोई Applicatio_Name
अपने कनेक्शन स्ट्रिंग पर एक विशेषता नहीं देता है , लेकिन यहां तक कि सवाल में मशीन के बारे में एक संकेत भी सहायक हो सकता है।
एक अन्य उम्मीदवार, SQL सर्वर (और mySQL) भी प्यारा string or binary data would be truncated
त्रुटि संदेश और समकक्ष है। बहुत बार, एसक्यूएल बयान की एक साधारण गड़बड़ी जो उत्पन्न हुई थी और तालिका दिखाती है कि कौन सा कॉलम अपराधी है। यह हमेशा ऐसा नहीं होता है, और यदि डेटाबेस इंजन त्रुटि पर उठाया जाता है, तो यह हमें उस समय क्यों नहीं बचा सकता है और हमें केवल यह बताता है कि यह कौन सा शापित स्तंभ था? इस उदाहरण पर, आप तर्क दे सकते हैं कि इसकी जाँच करने के लिए एक प्रदर्शन हिट हो सकता है और यह लेखक को प्रभावित करेगा। ठीक है, मैं खरीद लूंगा। कैसे के बारे में, एक बार जब डेटाबेस इंजन को पता चलता है कि कोई त्रुटि है, तो यह एक त्वरित तुलना करता है, इस तथ्य के बाद, उन मूल्यों के बीच जो संग्रहित होने जा रहे थे, बनाम कॉलम की लंबाई। फिर उस उपयोगकर्ता को प्रदर्शित करें।
ASP.NET की डरावनी तालिका एडेप्टर भी दोषी हैं। क्वेरीज़ को निष्पादित किया जा सकता है और किसी को यह कहते हुए एक त्रुटि संदेश दिया जा सकता है कि कहीं न कहीं एक बाधा का उल्लंघन किया जा रहा है। उसके लिए धन्यवाद। डेटाबेस के खिलाफ मेरे डेटा मॉडल की तुलना करने का समय, क्योंकि डेवलपर्स बहुत रोशन हैं यहां तक कि एक पंक्ति संख्या, या उदाहरण डेटा प्रदान करने के लिए। (रिकॉर्ड के लिए, मैं इस डेटा का उपयोग विधि का उपयोग करना चाहते कभी नहीं पसंद से , यह सिर्फ एक परियोजना मैं विरासत में मिली है!)।
जब भी मैं अपने C # या C ++ कोड से एक अपवाद को फेंकता हूं, तो मुझे उपयोगकर्ता के हाथ में मौजूद हर चीज मुहैया करा देता है। निर्णय इसे फेंकने के लिए किया गया है, इसलिए मैं जितनी अधिक जानकारी दे सकता हूं, उतना बेहतर होगा। मेरे फ़ंक्शन ने अपवाद क्यों फेंक दिया? में क्या पारित किया गया था और क्या उम्मीद थी? एक अपवाद संदेश के शरीर में कुछ सार्थक डालने में मुझे अभी थोड़ा समय लगता है। नरक, यह कुछ भी लेकिन मदद करता है मुझे , जबकि मैं विकसित क्योंकि मैं जानता हूँ कि मेरे कोड चीजें हैं जो सार्थक हैं फेंकता है।
कोई यह तर्क दे सकता है कि जटिल अपवाद संदेशों को उपयोगकर्ता को प्रदर्शित नहीं किया जाना चाहिए। जबकि मैं इससे असहमत हूं, यह एक तर्क है जिसे आसानी से आपके निर्माण के आधार पर एक अलग स्तर की क्रियाशीलता के द्वारा आकर्षित किया जा सकता है। फिर भी, ASP.NET और SQL सर्वर के उपयोगकर्ता आपके विशिष्ट उपयोगकर्ता नहीं हैं, और वे वर्बोसिटी और यम्मी जानकारी से भरे कुछ पसंद करेंगे क्योंकि वे अपनी समस्याओं को तेज़ी से ट्रैक कर सकते हैं।
डेवलपर्स को क्यों लगता है कि यह ठीक है, इस दिन और उम्र में, जब कोई त्रुटि होती है तो नंगे न्यूनतम राशि प्रदान करने के लिए?
2011 लोग है, आने पर ।