تصنيف الأنماط.
تختلف أنماط التصميم باختلاف تعقيدها، ومستوى تفاصيلها، ومدى إمكانية تطبيقها على النظام بأكمله الذي يتم تصميمه. ومن التشبيهات المفيدة هنا إنشاء الطرق: يمكنك جعل التقاطع أكثر أماناً إما عن طريق تركيب بعض إشارات المرور أو بناء تقاطع كامل متعدد المستويات مع ممرات تحت الأرض للمشاة.
غالباً ما تسمى الأنماط الأكثر أساسية ومنخفضة المستوى بالاصطلاحات (idioms). وعادة ما تنطبق على لغة برمجة واحدة فقط.
أما الأنماط الأكثر شمولاً وعالية المستوى فهي الأنماط المعمارية (architectural patterns). يمكن للمطورين تنفيذ هذه الأنماط في أي لغة تقريباً. وبخلاف الأنماط الأخرى، يمكن استخدامها لتصميم بنية تطبيق بأكمله.
بالإضافة إلى ذلك، يمكن تصنيف جميع الأنماط حسب نيتها (intent) أو الغرض منها. يغطي هذا الدليل ثلاث مجموعات رئيسية من الأنماط:
-
توفر الأنماط الإنشائية (Creational patterns) آليات لإنشاء الكائنات تزيد من المرونة وإعادة استخدام الكود الحالي.
-
تشرح الأنماط الهيكلية (Structural patterns) كيفية تجميع الكائنات والفئات في هياكل أكبر، مع الحفاظ على مرونة وكفاءة هذه الهياكل.
-
تهتم الأنماط السلوكية (Behavioral patterns) بالتواصل الفعال وتوزيع المسؤوليات بين الكائنات.