المتابعون للمدونة

الخميس، 28 أغسطس 2014


البرمجة متعددة الطبقات
 


أقرأ حاليا عن MVVM (اختصار لـ Model-View-ViewModel)، وهو نمط من أنماط تقسيم مشاريع WPF إلى طبقات متعددة n-Tier شبه مستقلة عن بعضها Loosely-Coupled.. وهذا قادني إلى مكتبة الكود المسماة "Prism 5" التي تقدمها ميكروسوفت كأداة مساعدة لإنشاء مشاريع مركّبة Composite Applications تتكون من مجموعة طبقات منفصلة، وتدعم عدة أنماط برمجية من بينها MVVM.

هذا التوجه البرمجي ليس جديدا، فقد بدأ بـ:

-      النموذج التصوري في LinQ To SQL و Entity Framework.

-      مشاريع MVC (Model-View-Controller) الخاصة بـ ASP.NET.

وهذا النمط يحقق الكثير من الفوائد، منها:

-  إنشاء مشاريع ضخمة يدخل في كتابة أجزائها فريق من المبرمجين والمصممين (فهي مقسمة إلى وحدات شبه مستقلة، يمكن أن يتولى كل مبرمج مسئولية وحدة منها).

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

-      يمكن تنفيذ وحدات الاختبار Unit Tests عليها بسهولة.

سأحاول أن أقدم هذه المفاهيم في كتب WPF القادمة بإذن الله.. من لم يبدأ منكم في تعلم WPF فعليه ألا يتأخر أكثر من ذلك، فالبرمجة تتطور بسرعة كبيرة، والبرمجة الكائنية التقليدية OOP قد صعدت درجة لأعلى إلى مستوى البرمجة متعددة الطبقات n-Tier المعتمدة على بعض مفاهيم هندسة البرمجيات Software Engineering مثل: الارتباط السائب Loose Coupling وفصل المسئوليات Separation of Concerns .

لكي تكون مبرمجا مواكبا لهذا العصر، يجب أن تكون هذه الأدوات التي تستخدمها في برمجة تطبيقات سطح المكتب:

- WPF.

- Entity Framework.

- Prism و MWWM مع المشاريع الكبيرة القابلة للتطور مع السنين.

أما بالنسبة لمشاريع الويب، فإصدار ASP.NET vNext على الأبواب، وهو يدمج أحدث تقنيات برمجة الويب مثل MVC و Web API و Web Pages في إطار عمل جديد اسمه MVC 6.

 

هناك 4 تعليقات:

  1. هل هذا المبدأ MVVM مشروح في كتابكم أساسيات WPF

    ردحذف
    الردود
    1. لا.. هذا نمط برمجي وليس من أساسيات wpf

      حذف
  2. ممكن تدلوني على كتاب فيه شرح وافي عن mvvm وشرح wpf

    ردحذف
  3. ممكن تدلوني على كتاب فيه شرح وافي عن mvvm وشرح wpf

    ردحذف

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.

صفحة الشاعر