بالطبع أخي مفيد فهو لم يُنشأ لغير فائدة فمسألة تقسيم العمل إلى طبقات مفيدة جدا في فصل المهام وتسهيل تطويرها وتنقيحها وصيانتها وتقسيم العمل بين المطورين
ولا يشترط التقيد بالثلاث طبقات أو مستويات التي نشأت في البداية وهي طبقة العرض (واجهات المستخدم) أو طبقة منطق العمل وطبقة الولوج إلى المعطيات
فهذا هو النمط القياسي ولكن يمكن زيادة الطبقات كما نراه جيدا أو حسب طبيعة مشروعنا
ولو دققنا النظر سنجد أن بعض الأنماط تعتمد على الطبقات أو المستويات بتصنيف مختلف
فمثلا MVC و MVVM فهما نمط طبقي ونموذج برمجي بطبقات ولكن تصنيفها مختلف عن القياسي
أنا مثلا صممت مشروعي بأربع مستويات و كل مستوى فيه عدة طبقات حتى وصلت بمجموعها إلى 7 طبقات تقريبا
وحاولت الاجتهاد أن تستقل الطبقات عن بعضها البعض تماما وصلة الوسط بينهم هو منهج واحد Submit يمرر بارمتر خاص ويعيده نفسه
وهذا البارمتر عبارة عن فئة برمجتها تعمل عمل صندوق العجائب وأسميتها مخزن المعطيات DataStore بحيث تستطيع إدراج ما تريد من المعطيات بما فيها الطلب وتمرره إلى أي وحدة في أي طبقة بحيث ينفذ المطلوب ويحمل النتائج في نفس الفئة و الجهة المرسلة تقوم باستخراج النتائج بعد أن يعود البارمتر.
بهذا استطعت تجاوز تضمين كل طبقة في طبقة أخرى كمرجع وأصبح بإمكاني حشر أي طبقة أو إزالة أي طبقة أو نقل أي طبقة من مستوى لمستوى دون أن يؤثر على الأخرى
النظام شبيه جدا بمبدأ الطلب Http Request الذي يصدر من العميل إلى السيرفر ثم يعود بالنتائج من خلال Http Responce
الخلاصة لا أتخيل عملي كيف سيكون شكله لولا اعتماد نظام الطبقات
التعليقات