16386295843722872
recent
أخبار ساخنة

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

الخط
عندما تفكر في كلمة مصنع, اول شئ يخطر على بالك حينها هو ان المصنع هو المكان الذي تُصنّع فيه الأشياء أي انه هو المكان الذي تنتج فيه الاغراض. حيث أنه يتم انتاج هذه الأغراض في المصنع بحسب المطلوب.

على سبيل المثال, لنعتبر بأنك قمت بطلب سياره. المصنع سيقوم بتصنيع السياره لك بعلى حسب الطلبات التى ستطلبها منه

البرمجة مثل العالم الحقيقي. حيث أن برمجة المصنع  هي برمجه مسؤولة عن إنشاء أغراض وإيصالها على حسب الطلب التى تقوم به وفقا لمتحولات الدخل الموجودة فيها.


هالك ثلاثة انواع مختلفة لنمط المصنع:

  1. نمط المصنع البسيط:  يسمح للواجهات interfaces بإنشاء أغراض دون عرض كيفية إنشاء الغرض للزبون.
  2. -نمط وظيفة المصنع او Factory Method : يسمح للواجهات بإنشاء أغراض مع السماح للصفوف الأبناء بتحديد أي الصفوف التي يمكن إنشاؤها.
  3. نمط المصنع المجرد :  وهو مختلف عن النمطين السابقين. المصنع المجرد هو واجهة لإنشاء أغراض مترابطة دون الحاجة لتحديد صفوف هذه الأغراض. يمكننا القول بأنها تزود الغرض بمصنع آخر الذي بدوره يكون هو المسؤول عن صنع هذه الأغراض. 

دعونا نتخيل أنه لدينا صف سيارات , هذا الصف هو المسؤول عن إنشاء عربة بكل الخصائص والطرق المضمنة فيه. بأبسط الطرق ماعليك سوى أن تقوم بإنشاء الغرض كالتالي :



لاحقا وبعد مرور القليل من الوقت, تتغير المعطيات ويتقدم البرنامج حيث أنه بدل صف واحد للسيارات قد ينتج لدنيا عدة صفوف , صف لكل نوع من السيارات. وقد نحتاج للمرور بكافة الأماكن التي انشئنا فيها الأغراض وتعديلها للصف الجديد الذي هو نوع السياره

الحل الأمثل هو عدم إنشاء الأغراض بالطريقة السابقة, وإنما استخدام نمط المصنع للتكفل بإنشاء الاغراض بالطريقة المناسبة.

في القسم السابق تحدثنا عن إنشاء أغراض لصف السيارات بإستخدام المصطلح new. ومن ثم واجهنا مشكلة تعدد الصفوف حسب نوع السياره متل Sedan, SUV إلخ..


لحل المشكلة بالشكل الأمثل قررنا أنه يجب استخدام نمط المصنع لحمل مسؤولية إنشاء الأغراض مهما اختلف شكلها, ومن ثم إستدعاء الميثود الساكنة في المصنع لإنشاء الأغراض.



في الكود السابق , هنالك ميثود ساكنة Static واحدة مسؤولة عن إستدعاء الصف المناسب وإنشاء الغرض حسب النوع المدخل للمتحول. الآن كل مانحتاجه هي صفوف متزامنة لأنواع السيارات:



حتى الآن لدينا هذه الصفوف والميثود الخاصة بنمط تصميم المصنع . كل مانحتاجه هو التدريب على كيفية طلب الميثود وإنشاء أغراض جديدة حتى نكون جاهزين . على سبيل المثال:


إضافة صفوف جديدة هو أمر سهل جدا ولايحتاج اي تغيير في نمط المصنع, كل ماعليك هو إنشاء الصف المناسب وهو جاهز للإستخدام:


عند التفكير بأسلوب أنماط التصاميم, تعتبر فكرة إنشاء أغراض بإستخدام كلمة new فكرة سيئة جداَ. اما نمط المصنع يحل هذه المشكلة بكونه مكان مركزي لإنشاء الأغراض المطلوبة.
ليست هناك تعليقات
إرسال تعليق

إرسال تعليق

نموذج الاتصال
الاسمبريد إلكترونيرسالة