عرّف النجاح أولاً
قبل التصميم، وقبل بناء سطرٍ واحد، اكتب الاختبارات — أو على الأقل معايير القبول. بهذا يُعرَّف «الصحيح» قبل أن تبدأ، لا أن يُتنازَع عليه بعد ذلك.
ماذا يعني الاختبار أولاً
تصف السلوك الذي تتوقّعه على هيئة فحوص، ثم لا تبني نحوه إلا بعد ذلك.
- صِف السلوك المتوقّع على هيئة فحوصٍ أولاً — دوّن كيف تبدو النتيجة الصحيحة.
- ابنِ حتى تنجح الفحوص — يكتمل العمل حين تتحوّل إلى الأخضر.
- الفحوص هي تعريف الاكتمال — لا شعورٌ ولا عرضٌ توضيحي.
هدفٌ من أجل الوكيل
الاختبار أولاً قويٌّ بوجهٍ خاص حين يتولّى وكيلُ برمجةٍ عملية البناء. سلّمه الاختبارات التي عليه تحقيقها، فيتغيّر أمران دفعةً واحدة.
TDD في حلقةٍ واحدة
التطوير المُوجَّه بالاختبارات حلقةٌ صغيرة تكرّرها، سلوكاً واحداً في كل مرة.
- اكتب اختباراً فاشلاً — اذكر ما ينبغي أن يكون صحيحاً؛ يفشل لأن لا شيء يحقّقه بعد.
- اجعله ينجح — ابنِ أصغر شيءٍ يحوّله إلى الأخضر.
- نظّف — رتّب الشيفرة الآن وقد صار اختبارٌ يحميها.
- كرّر — انتقل إلى السلوك التالي وأعد الكرّة.
لمحةٌ عن الوحدة 8
ابقِ هذه الفكرة في ذهنك — فهي تعود. التطوير المُوجَّه بالتقييم هو انضباط الاختبار أولاً ذاته، مطبَّقاً على مخرجات ذكاءٍ اصطناعي لا يمكن التنبّؤ بها.
طبّقها
كيف تنفّذها: لميزةٍ أساسية واحدة من مشروعك الختامي، اكتب اختبار القبول أولاً — «بمعطى X، توقّع Y» — ثم لا تبنِ إلا حتى ينجح.
- متتبّع المهام الأسبوعية بالذكاء الاصطناعي — اكتب «هذه الرسالة تُحلَّل إلى هذه المهمة» كاختبارٍ قبل بناء المُحلِّل؛ ثم يصبح تقييماً في الوحدة 8.
- موقع العلامة الشخصية — اكتب الفحص «لكل مشروعٍ رابط مصدر» أولاً، ثم وَلِّد لتحقيقه.
ما الذي تعلّمته
عرّف «الاكتمال» على هيئة فحوص قبل أن تبني؛ سلّم تلك الفحوص إلى وكيلك هدفاً ومُتحقِّقاً آلياً؛ اعمل بحلقة TDD الصغيرة — واعلم أن هذا بذرة التطوير المُوجَّه بالتقييم في الوحدة 8.