أنماط برمجة الألعاب › إعادة النظر في أنماط التصميم 2 / 26 السابق التالي

أنماط التصميم من جديد

^title Design Patterns Revisited

أنماط التصميم: عناصر برمجيات كائنية التوجه قابلة لإعادة الاستخدام (Design Patterns: Elements of Reusable Object-Oriented Software) يكاد عمره عشرين عاماً بحسب ساعتي. ما لم تكن تنظر فوق كتفي، فالأرجح أن يكون أنماط التصميم قد بلغ سنّ النضج حين تقرأ هذه السطور. وبالنسبة إلى صناعة أسرع حركة كصناعة البرمجيات، فهذا تقريباً كأنه أثرٌ من عصور ما قبل التاريخ. والانتشار الدائم لهذا الكتاب يقول الكثير عن مدى خلود التصميم مقارنةً بكثير من الأطر ومنهجيات العمل.

ورغم أنني أعتقد أن أنماط التصميم ما زالذا صلةً بموضوعه، فقد تعلّمنا الكثير خلال العقدين الماضيين. وسنمرّ في هذا القسم على حفنة من النماذج الأصلية التي وثّقتها «الرباعية» (Gang of Four). وآمل أن يكون لديّ عن كل نمط ما يمكن قوله مفيد أو ممتع.

أعتقد أن بعض الأنماط مُفرطة في الاستخدام (المفرد (Singleton))، بينما آخر منها مُهمَل إلى حدٍّ ما (الأمر (Command)). وهناك اثنان أدرجتهما هنا لأنني أريد أن أستكشف صلتهما بالألعاب تحديداً (الوزن الخفيف (Flyweight) والمراقب (Observer)). وأخيراً، أحياناً أفكّر أن الأمر الممتع ببساطة هو أن ترى كيف تتشابك الأنماط داخل مجال البرمجة الأوسع (النموذج الأولي (Prototype) والحالة (State)).

الأنماط