عندما تكون وظيفة غير متوقعة خطأ ، أو مجرد تصميم ضعيف

StackOverflow https://stackoverflow.com/questions/4300074

  •  29-09-2019
  •  | 
  •  

سؤال

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

على سبيل المثال ، نظام التجارة الإلكترونية المفتوح المصدر المعروف (إذا نظرت إلى سجل إجابتي ، فسوف تضع أي واحد!) يوفر وظائف لزيادات الكمية حيث يمكن للمسؤول تحديد مضاعف الوحدات التي يجب إضافتها إلى العربة ( على سبيل المثال ، يجب أن يكون 5 ، 10 ، 15 ، 20 ، إلخ). تتم كتابة الرمز بحيث يتم تطبيق هذه الحدود فقط عندما يكون النظام في وضع "إدارة الأسهم" (أي مستويات المخزون تنخفض مع كل طلب). الآن ، من الموقف الصحيح تمامًا أن يرغب مالك المتجر في بيع منتجاته بزيادات محددة ، ولكن لا تدير مستويات الأسهم. يتجاهل الرمز التكوين بصمت (لا توجد ملاحظات إلى المسؤول) ولا توجد وثائق لمتطلبات إدارة الأسهم التي سيتم تشغيلها.

هذا الخلل؟ أو مجرد تصميم/وثائق سيئة.

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

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

المحلول

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

نصائح أخرى

هل هناك مواصفات تحدد ما إذا كانت إحدى الطرق أم أخرى صحيحة؟ إذا كان هناك مواصفات ، فهذا خطأ.

إذا لم يكن هناك مواصفات ، فربما يكون الوثائق السيئة.

هل يمكن أن تحدث الأخطاء عندما يتجاهل الرمز التكوين بصمت؟ ثم إنه خطأ.

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