سؤال

المطور الأدوات و البرامج عادة لا تقدم الحل اقتراحات في رسائل الخطأ.هذا منطقي المجمعين لأنه من المفترض أن أقول بالضبط ما حدث من خطأ.

هناك "لينت" أدوات تقديم اقتراحات ، ولكن AFAIK, قليل من المطورين استخدام أدوات الوبر بانتظام أو حتى على الإطلاق.

هناك مجموعة كبيرة من مطوري البرمجيات الموجهة ذلك أن يكون "اقترح الحل(ق)" جزء رسائل الخطأ.هذه هي واحدة من الميزات الرائعة التي ايديس مثل الكسوف يكون.لكن البرامج مثل تطبيق ويب أطر قياسية/شعبية المكتبات ، إلخ.لا يكون هذا ميزة مفيدة.

هذا شيء هو مجرد نقص في المستخدم-تصميم ودية (واحد يمكن أن نعتبر هذا غير ضروري بالنظر إلى أن جوجل هو جيد جدا) أو أن هناك سبب وجيه لذلك ؟ هل أي المجمعين ، أطر الأنظمة التي تستخدمها تقديم رسائل خطأ مع الحل اقتراحات ، إذا لا شيء, لم لا ؟

هل كانت مفيدة؟

المحلول

الشيء الأساسي أريد من مترجم أو خطأ وقت التشغيل هو السياق أين حدث و أين كان يسمى من حين فشلت.

أعتقد أن معظم الحديث المجمعين و أوقات التشغيل (Java, روبي, Go) وظيفة لائقة مع أرقام الأسطر و تتبعات المكدس يمكنك العثور على معظم الحشرات.حتى جافا سكريبت خيارات الحصول على جيد, بالتأكيد يدق حسن البالغ من العمر "تنبيه()" نهج التصحيح.

أليس عادلة بما فيه الكفاية لترك اقترح حلول ايديس?

ولكن أنا أوافق على أنني لم أر أطر/المكتبات التي كانت ضئيلة جدا مع رسائل الخطأ ، و "NullPointerException في خط 264" في عمق بعض طرف ثالث المكتبة حيث ليس لديك التعليمات البرمجية المصدر يقول لك قريبة جدا من لا شيء.

إذا كان هذا هو المشكلة ، أعتقد أنه في المقام الأول يقتصر على طرف ثالث المكتبات.إن "سبب وجيه" يفترض أنها وضعت في عجلة من امرنا ما هو وقت الفراغ ، وأنها لم يضع معنى رسائل الخطأ عالية جدا على قائمة الأولويات.

نصائح أخرى

ماذا تريد أن ترى ؟

Error: Null Pointer Exception (suggested solution: Set the object to something).

أعني, انها ليست خطأ من الكتاب العمل على تثقيف لكم.أنا أفضل بسيط رسائل الخطأ التي تشير إلى المشكلة بالضبط, حتى أنا نفسي يمكن تحديد ما هو الذي يسبب هذه المرة.بالنسبة لي, هذا بالتأكيد خطوط في مجال 3rd الطرف الأدوات ؛ ربما المجمعين قد تقدم سياق لهم على التحليل ولكن ليس شيء أود أن أجد حقا قيمة.

إنه من الصعب على حل خطأ التي قدمت.هناك الكثير من الاحتمالات و @حريري أشار بعض فقط لا يمكن تشخيص.

تحذيرات هي مختلفة الوحش.في كثير من الحالات الحديثة المجمعين استخدام هذه أن أقول "أنا أعتقد أنك قصدت X عندما قال Y ؛ قد ترغب في التحقق من ذلك."

لغة البرمجة لديه الفرصة ليكون في نهاية المطاف في المرونة في حيث واجهة المستخدم.يمكنك جعل جهاز الكمبيوتر تفعل أي شيء تريده.الوجه الآخر للعملة هو أن إذا كنت من النوع بقدر حرف واحد خاطئ قد يكون فكرة على طول محور خطأ الخاص بك ، أو أين.

نظم أقل مرونة تقدم المزيد من الفرص لتقديم حلول للمشاكل.إذا كنت من النوع (a b c) إلى اللثغة مترجم و لا أعرف ما هو ، إنه قريب جدا من العديد من صالح أسطر من التعليمات البرمجية التي لا يمكن بالضبط تشير إلى إصلاح واحد.إذا أخطأت "تحديد الشعبة" في بداية برنامج COBOL, فإنه من السهل نسبيا بالنسبة مترجم إلى المكان الخطأ و تساعدك على الخروج.معظم اللغات الأخرى التي تقع بين هذين النقيضين.

المبرمجين تميل إلى التحرك ، على مدى حياتهم المهنية ، من أقل قوة وأكثر تنظيما اللغات في أكثر قوة ومرونة اللغات.(على الأقل هذا ما رأيته يحدث من قبل جافا سكريبت أصبحت ساخنة مبتدئ اللغة.) وهذا يعني الانضباط يحسن إلى النقطة حيث أنها قادرة على استخدام الأدوات التي تقدم السلطة على حساب يقال ما يجب القيام به.البيئات لقد استعملت هذا يمكن أن تقول لي ماذا الإصلاح ، تميل إلى أن تكون من الذين يكرهون استخدام.

إنه لا يختلف عن أي فن آخر.انظر الموسيقيين أو الرسامين أو الدفاع عن النفس الفنانين أو الممثلين أو الكتاب أو الطهاة أو حتى الناس تعلم التحدث باللغة الإسبانية:عندما هم الشباب والخبرة, أنهم وضعت في النظام حيث هناك الكثير من الهيكل ، وإذا كانت بخطأ شخص يمكن بسهولة الصحيح لهم.كما أنها تصبح أكثر مهارة ، فإنها تحتاج وتريد أقل من الدعم.عندما أصبحت الخبراء أنفسهم, أنهم بحاجة إلى أي دعم على الإطلاق ، لكن الوجه الآخر للعملة هو أنه لا يمكن بسهولة ما هو صواب أو خطأ.إذا كان ابنك الألوان خارج الخطوط ، يمكنك شرح المشكلة ، ولكن إذا كان بيكاسو أو بولوك يجعل سيئة brushstroke, ماذا ستقول ؟ أو إذا فيليب الزجاج يضع ملاحظة في أي مكان أو بروس لي يتحول جسده بعيدا جدا في لكمة ؟ و الذين يريدون العمل في شكل من اشكال الفن التي هي محدودة جدا بحيث تدنيس الأشياء ليست ممكنة ؟ COBOL المجمعين لا تزال موجودة إذا كان أي شخص يريد حقا لهم ، ولكن أكثر الناس يدفعون المال من أجل فظيعة اللوحات من بارع اللون-من قبل-عدد الطبعات.

أكثر مباشرة ، هناك موقع ، ErrorHelp (ني علة.gd), التي تمكنك من كتابة رسالة خطأ والحصول على نتيجة و هو أكبر من ذلك ولكن لا أحد يستخدمه.لقد حاولت.إلا إذا كنت في سياق حيث لا يوجد سوى جواب واحد ممكن, مشكلة بسيطة-المصادفة أن اقترح حل القاموس لا يعمل ، وبالتالي فإنه من الفشل الذريع في المجال الإبداعي.

معظم IDE الخاصة بهم المجمعين.وهذا يسمح لهم القيام الجزئي تجميع رمز refactorings و العديد من الحيل الأخرى.أجد رسائل الخطأ واقتراحات مفيدة جدا.فقط لأن المترجم لا يحتج على سطر الأوامر, لا يعني أنه غير مترجم.

النص البديل http://www.theeggeadventure.com/wikimedia/images/1/1f/Eclipse-error.png

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top