الدرس 20: المشروع الختامي الثاني — التوسيع عبر الوراثة
الفندق حقّق نجاحًا كبيرًا — والآن يصل متطلَّب جديد: الكلاب تحتاج إلى نزهات، والقطط تحتاج إلى صناديق فضلات. بدلًا من إعادة كتابة النظام، نوسّعه: Dog و Cat يرثان من Pet، ويبقى الفندق بأكمله يعمل دون تغيير سطر واحد. هذه هي المهارة الحقيقية في العمل — تعديل نموذج قائم بأمان. ختام الدورة!
لا يحتاج الفندق إلى معرفة من هو كلب ومن هو قطة — فهو يسأل كل نزيل "ما هي تعليماتك؟" ويجيب كلٌّ بطريقته الخاصة. مكتب استقبال واحد، ونزلاء من كل الأنواع.
- توسيع النموذج
- إضافة قدرات إلى نظام قائم عبر أصناف ابنة جديدة — دون المساس بكود يعمل بالفعل.
- مفتوح للتوسيع، مغلق للتعديل
- مبدأ تصميم: الكود الجيد ينمو بإضافة أصناف جديدة، لا بتعديل الأصناف القائمة.