أهم الأسئلة الشائعة حول MVC.

مما لا شك فيه أن بناء المشروع يتطلب مجهود كبير من المبرمج ونظراً لكثرة الأليات المستخدمة لبنائه انتقيت هذا الموضوع لأنه الطريقة ذات الشعبية و الأكثر رواجاً لتوضيحها : ماذا يعني الـ MVC ؟ وماهيته ؟ وماطريقة عمله ؟ سوف اجيب على هذه الاسئلة في موضوعنا كما سنوضح أهم مميزات هذه الطريقة وعيوبها .

السؤال الأول :ماذا يعني الـ MVC ؟ 

هو اختصار لـ Model – View – Controller .

السؤال الثاني :ماهية الـ MVC ؟ 

بعيداً عن الكلام النظري سأشرح هذا المفهوم بطريقة مبسطة وسأقول لك ياعزيزي أن هذا المفهوم يتعلق بطريقة بنائك للمشروع إذ يقوم على تقسيم مشروعك إلى ثلاث أقسام رئيسية مهمة في مشروعك ومرتبطة مع بعضها البعض .

السؤال الثالث :ماطريقة عمله ؟

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

أولاً : View – العرض :

وهي الـ interface ونستطيع القول أيضاً presentation العرض ، وهي الواجهة النهائية للمشروع التي تظهر للمستخدم ليستطيع التفاعل مع مشروعك ، وبالطبع كما نعلم أن خلف هذه الشاشة المستخدم النهائي لا يعلم ما الذي يحدث من عمليات .

ثانياً : Controller – وحدة التحكم : 

وهي عبارة عن واجهة تقع بين Model و View وهي المسؤولة عن الاستجابة ، وتكمن مهمتها في التحكم والتفاعل مع مدخلات المستخدم في View والتحقق من صحة المدخلات واستقبال جميع طلبات المستخدم requests سواء كانت جلب بيانات أو تعديل وغيرها ، وتقوم من الناحية التالية بالتفاعل مع Model لتلبية طلبات المستخدم .

ثالثاً : Model – النموذج : 

يتمثل هذا القسم من البيانات الداخلية للمشروع وقواعد البيانات ، أي تحديث يطلبه المستخدم عن طريق View يقوم Controller باستقبال الأمر وتوجيهه إلى الـ Model لعمل التنسيقات المطلوبة من جلب البيانات أو تحديثها .

 

صورة توضيحية لعمل MVC :

 

دعنا نصيغ حديثنا هذا على شكل سيناريو لتتضح الصورة أكثر لك :

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

Model : هي عملية تحديث البيانات .

View : وهي البطاقة الجديدة التي تم اصدارها .

Controller :  هو الموظف الذي قام باستقبال طلبك .

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

 

مزايا MVC : 

١- عملية تطوير سريعة ، بما أن هي عبارة عن ثلاث أقسام فيمكن لأكثر من مطور العمل على كل قسم على حدا .

٢- توفير طرق عرض متعددة .

٣ – التعديل على Model   لا يؤثر على بقية الأجزاء .

٤- يقوم MVC  بارجاع البيانات بدون اي تنسيق فنستطيع اعادة استخدامها مع واجهات أخرى .

عيوب MVC : 

كون أن هذه الطريقة تعتبر شائعة ومميزة جداً إلا آنها لا تخلو من بعض العيوب :

١-  التعقيد بدرجة عالية .

٢- لقد ذكرنا أن من أحد المميزات أنه يستطيع المطورين العمل بشكل متوازي مع بعضهم وتطوير كل قسم على حدا ولكن من هذه الميزة يخرج لنا عيب وهو يجب عليهم تطوير عملهم والحفاظ على تحديثه .

٣- تتطلب هذه التقنية أن يكون المطورين ماهرين في تقنيات متعددة .

 

من لغات البرمجة التي يمكن تصميم ودعم هذه التقنية بها هي : JAVA , PHP , ASP.NET .

 

إلى هنا ينتهي الدرس اتمنى أن اكون وفقت في الطرح ، القاكم في درس جديد إلى ذلك الحين دمتم بسلام .

اترك ردّاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

أوافق على سياسة الخصوصية*