أساليب الفشل

إذا كنت تقضي الكثير من الوقت في تصحيح الأخطاء، فذلك غالباً لأنك تستخدم استراتيجية تطوير غير فعالة. هذه هي أكثر الأساليب الفاشلة التي أراها غالباً (وأقع ضحية لها أحياناً):
التطوير غير التصاعدي (Non-incremental development): إذا كتبت أكثر من بضعة أسطر من الشفرة بدون ترجمتها واختبارها، فأنت تبحث عن المتاعب. سألت أحد الطلاب ذات مرة عن وظيفته، فأجاب، "تمام! لقد كتبتها بالكامل. بقي أن أصحح الأخطاء الموجودة فيها فقط."
الارتباط بالشفرة السيئة (Attachment to bad code): إذا كتبت أكثر من بضعة أسطر من الشفرة بدون أن تجمعها وتختبرها، فقد لا تتمكن من تنقيحها أبداً. أحياناً يكون الحل الوحيد هو (التقط أنفاسك!) حذف الشفرة السيئة والبدء من جديد (باستخدام طريقة تصاعدية). لكن المبتدئين غالباً ما يرتبطون عاطفياً بالشفرة التي كتبوها، حتى لو لم تكن تعمل. الطريق الوحيدة للخروج من هذا الفخ هي أن تجعل قلبك قاسياً.
البرمجة عشوائية المجرى (Random-walk programming): أحياناً أعمل مع طلاب يبدو أنهم يبرمجون عشوائياً. يغيرون شيئاً ما، يشغلون البرنامج، يحصلون على خطأ، يغيرون شيئاً ما، يشغلون البرنامج، الخ. المشكلة هنا هي عدم وجود علاقة ظاهرة بين خرج البرنامج وبين التغييرات التي يجرونها.
إذا حصلت على رسالة خطأ، خذ الوقت لقراءتها. عموماً، عليك أخذ الوقت الكافي للتفكير.
الخضوع للمجمع (Compiler submission): رسائل الخطأ مفيدة، لكنها ليست صحيحة دائماً. مثلاً، إذا قالت الرسالة، "أتوقع فاصلة منقوطة في السطر 13 _Semi-colon expected on line 13 "، فهذا يعني وجود خطأ نحوي بالقرب من السطر 13، لكن وضع فاصلة منقوطة على السطر 13 ليس الحل بالضرورة. لا ترضخ لرغبات المجمّع.
يقدم القسم التالي المزيد من