TOC

This article is currently in the process of being translated into Arabic (~99% done).

Introduction:

What is MVC?

ام. في. سي (MVC) هي إختصار لـ (Model-View_Controller) حيث كلمة Model تعني البيانات، وكلمة View تعني عملية عرض البيانات، وكلمة Controller تعني عملية التنسيق بين البيانات وعرض البيانات، وهذا الترتيب هو نموذج متكرر تم تطويره في سنة 1970 عندما كانت (واجهات عرض البيانات الصورية) لا تزال في مراحلها المبكرة. الغرض من هذا النموذج هو تسهيل تطوير التطبيقات عن طريق فصل التطبيق الى الأجواء الثلاثة الأتية:

البيانات "Model"

هنا يتم تخزين منطق العمل والمعطيات. في تطبيق ويب معياري، يمثل هذا القسم من التطبيق جدول في قاعدة البيانات مثلاً أو أي غرض آخر يمكن لتطبيقك التعامل معه.

العرض "View"

طبقة "View" تمثل عملية العرض البصري لبياناتك. في تطبيق ويب معياري، تمثل هذه الطبقة صفحة الويب التي تظهر تلك البيانات سواء كانت استمارة إدخال للبيانات أو خرج لها أو كلا الحالتين. طبعاً طبقة العرض ليست مضطرة لعرض جميع محتوى البيانات، ويمكن لطبقة "Model" واحدة أن تمتلك عدة واجهات عرض.

المتحكم "Controller"

يجب على المتحكم "Controller" معالجة جميع علاقات الاتصال بين طبقتي العرض والبيانات. في موقع ويب معياري، توابع المتحكم ووظائفة يتم تفعيلها من قبل المستخدم عند تحميل الصفحة مثلاً أو عند ضغط زر معين. عندها يقوم المتحكم بتعديل البيانات إن لزم ومن ثم يعيد عرضاً "View" (أو ينفذ عملاً) إن لزم أيضاً.

انطلاقة MVC

بعد أن تم إصدارها في السبعينيات، لم يحظى نمط MVC بالاهتمام الكافي خلال الثلاثين عاماً الأوائل. لم تركز لغات الويب المبكرة مثل Perl، PHP، ASP Classic على النماذج التصميمة، وحتى مع إصدار ASP.NET لم يكن MVC جزءاً مدمجاً به. كان بإمكانك بالطبع أن تطبق تقنيات MVC في مشروعك، لكن لم تكن تشجعها أي بيئة تطوير برمجية.

بعد ذلك، تم إصدار "Ruby" على بيئة Rails في عام 2004، والتي تمتلك بيئة تطوير ويب معتمدة على لغة Ruby مع إلهام هائل من نمط MVC. آمن العديد من الناس حينها بأن ذلك أعاد التركيز على MVC؛ وبعد ذلك بفترة قصيرة، تم إصدار العديد من بيئات PHP المتركزة حول نمط MVC. كل ما سبق جعل من نمط MVC شعبياً جداً، الأمر الذي جعل في الغالب شركة Microsoft تقرر أنشاء تنفيذ له في بيئة .NET خاصتها، بما يضم أدوات دعم هائلة في بيئة Visual Studio IDE. تم إصدار ASP.NET MVC في 2007، لكن لم تصدر أول نسخة منتهية منها قبل 2009.

في الفصل القادم، سوف نتعمق قليلاً في ماهية ASP.NET MVC وكيف يتم مقارنتها مع بدائلها، مثل ASP.NET WebForms.

This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!