متى ولماذا يجب علينا اختبار الكود البرمجي؟ عادة ما نواجه -كمبرمجين- مشاكل برمجية مختلفة، نريد الوصول لأفضل حل يمكننا من اجتياز المشكلة. عادة ما يتم تعريف الحل الجيد على أنه الحل الذي يحقق المعادلة التالية: ناتج صحيح مع استخدام موارد أقل في مقابل كفاءة أعلى. لكن التفكير البشري ربما يخطئ حتى في أفضل حالاته، فكيف نتأكد من فعالية حلولنا البرمجية بدقة وكفاءة؟ في السطور التالية سأعرض بعض الآليات والمعايير التي تعلمتها في الأسبوع الأول من الدورة التعليمية ( Algorithmic toolbox ) على منصة Coursera. لكي نقوم بتسهيل المفاهيم التالي ذكرها، سنفترض أننا نقوم بتطوير حل برمجي لمشكلة ما: لنفترض أن لدينا مصفوفة من الأرقام (الموجبة والسالبة) ماهي أكبر قيمة لحاصل ضرب أي رقمين في تلك المصفوفة؟ Input: arr = {1, 4, 3, 6, 7, 0} Output: {6,7} Input: arr = {-1, -3, -4, 2, 0, -5} Output: {-4,-5} تقوم أحد أفكار الحل على مقارنة حاصل ضرب أكبر رقم موجب × ثاني أكبر رقم موجب مع حاصل ضرب أكبر قيمة سالبة × ثاني أكبر قيمة سالبة. ونقوم بعد ذلك باعتماد حاصل الضرب الأكبر بين القيمتين. إذاً، كا...
Where technology, philosophy, and life experiences meet together.