إطار عمل mvc

إطار MVC باختصار

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

فهم إطار عمل MVC

تم تطوير إطار عمل MVC استجابة للطبيعة المتغيرة لتطوير الويب.

تقليديا ، كانت المشاريع تتضمن ببساطة تحميل ملفات CSS و HTML و JavaScript ثابتة على خادم HTTP.

ولكن مع تزايد شعبية البرامج كخدمة (SaaS) ، تم دمج التطبيقات التي كانت مخصصة لسطح المكتب في المتصفحات.

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

يشجع إطار عمل MVC المطورين على كتابة كود JavaScript أكثر تنظيماً من خلاله صمم أنماط - رسم. 

من البدايات المتواضعة في واجهات المستخدم الرسومية لسطح المكتب ، أصبح إطار العمل شائعًا في تطوير تطبيقات الويب والجوال.

يمكن أن يدعم إطار عمل MVC تفاعل المستخدم العالي واتصال الخادم في الوقت الفعلي برمز يمكن صيانته واختباره.

المكونات الثلاثة لإطار MVC

الهدف من إطار عمل MVC هو المساعدة في هيكلة قاعدة الكود وفصل اهتمامات التطبيق إلى ثلاثة مكونات:

مشاهدة

أو عرض البيانات التي تم جمعها من نموذج البيانات في شكل مخططات أو جداول أو رسوم بيانية.

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

الموديل

أو البيانات التي يستخدمها البرنامج.

غالبًا ما يكون هذا في شكل قاعدة بيانات ولكن يمكن أن يمثل أيضًا كائنًا أو رمزًا أو شخصية لعبة فيديو.

مراقب

جزء من التطبيق يتعامل مع تفاعل المستخدم في شكل مدخلات الماوس ولوحة المفاتيح.

تقبل وحدة التحكم المدخلات من العروض والنماذج لتقديم تحديث مطابق.

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

يتم بعد ذلك تحديث العرض ليعكس التغيير في سمة التحمل أثناء اللعب.

متى يجب استخدام إطار عمل MVC؟

كما ذكرنا ، يجب استخدام إطار عمل MVC لأي تطبيق حيث تكافح JavaScript للقيام بالأعباء الثقيلة من جانب العميل. 

إذا كان عمل يريد إنشاء تطبيق مع التركيز على جانب الخادم ، فمن المحتمل أن يكون إطار عمل MVC غير مناسب.

ومع ذلك ، يمكن أن تساعد معايير معينة المطورين على تحديد ما إذا كان الإطار مناسبًا لمشروعهم.

تشمل هذه المعايير التطبيقات التي:

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

كنقطة مرجعية ، ضع في اعتبارك أن العديد من تطبيقات الويب الشائعة مثل محرر مستندات Google و Gmail و Spotify تستوفي جميع المعايير المذكورة أعلاه.

أمثلة على إطار عمل MVC

فيما يلي مثال على كيفية تنفيذ إطار عمل MVC في تطبيق واقعي باستخدام PHP.

التطبيق المعني هو محول العملات الذي سيحول العملة المختارة - في هذه الحالة اليورو - إلى عدة عملة أخرى ويظهر القيم الخاصة بكل منها. 

مع وضع ذلك في الاعتبار ، دعنا نناقش كل مكون من المكونات الثلاثة أدناه.

نموذج

للبدء ، من المهم حل المشكلة الأساسية لإجراء تحويل العملة. تم إنشاء فئة “CurrencyConverter” البسيطة التي تخزن أسعار صرف مختلفة بالنسبة لليورو للدولار الأسترالي والجنيه الإسترليني والدولار الأمريكي.

يخزن الفصل أيضًا مبلغًا محددًا من العملة وهو في هذه الحالة 100 يورو. هذه القاعدة القيمة لا يمكن الوصول إليه مباشرة ، ولكن يمكن مع ذلك استخدامه لتحويل 100 يورو إلى المبلغ المعادل للعملات الثلاث الأخرى.

إذا أراد مستخدم التطبيق تحويل 100 دولار أسترالي إلى يورو أو جنيه إسترليني أو دولار أمريكي ، على سبيل المثال ، فيمكن إنشاء فئة أخرى. لاحظ أن المحول يعمل دون معرفة كيفية استخدامه أو البنية التي سيتم دمجه فيها.

المنظر

نظرًا لأن المستخدم سيدخل مبلغًا من العملة التي يرغب في تحويلها ، فسيتطلب التطبيق مربع إدخال وزر إرسال لإجراء الحساب. 

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

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

قابليتها للاستخدام

لا يعد مربع الإدخال الذي يحتوي على عملة واحدة وزر "تحويل" مفيدًا للغاية - خاصة إذا كان المستخدم يريد رؤية سعر الصرف لعملات متعددة. نظرًا لأن قابلية الاستخدام هي أحد المبادئ الأساسية لإطار عمل MVC ، يمكن إعادة استخدام العرض عدة مرات لإظهار عملات إضافية.

الآن ، لدى المطور أربعة مربعات إدخال وأربعة أزرار. يتم تمييز كل صندوق بـ AUD و GBP و USD و EUR.

المتحكم

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

يكتب المطور التعليمات البرمجية التي تستخدم أسماء حقول النموذج التي قاموا بإنشائها مسبقًا في طريقة العرض. أصبحت وحدة التحكم قابلة للاختبار وقابلة لإعادة الاستخدام باستخدام مصفوفة يتم تمريرها كوسيطة. بمعنى آخر ، يتم إنشاء وحدة التحكم مرة واحدة واستخدامها بواسطة طرق العرض الأربعة.

في الختام ، يكتب المطور رمزًا لتهيئة التطبيق. يمكّن هذا المستخدم من إجراء تحويل العملة عن طريق إدخال ملف القيمة لأي من العملات الأربع والنقر على "تحويل".

الوجبات الرئيسية

  • إطار MVC هو برنامج صمم نمط يشتمل على ثلاثة مكونات أساسية: عرض ، نموذج، وجهاز التحكم. يتعامل كل مكون مع جانب تطوير معين للتطبيق.
  • يتم استخدام إطار عمل MVC في التطبيقات الكبيرة والمعقدة حيث لا يمكن أن توفر JavaScript من جانب العميل أساسًا لكود ثابت عالي الجودة.
  • لتحديد ما إذا كان إطار عمل MVC مناسبًا للبناء الخاص بهم ، يمكن للشركات الرجوع إلى قائمة المعايير المشتركة لتطبيقات الويب الشائعة مثل محرر مستندات Google و Spotify.

أطر العمل المرنة ذات الصلة

AIOps

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

منهجية رشيقة

منهجية رشيقة
بدأت Agile كطريقة تطوير خفيفة الوزن مقارنةً بتطوير البرمجيات ذات الوزن الثقيل ، وهو النموذج الأساسي للعقود السابقة من تطوير البرمجيات. بحلول عام 2001 ، وُلد البيان الخاص بتطوير البرمجيات الرشيقة كمجموعة من المبادئ التي حددت النموذج الجديد لتطوير البرمجيات كتكرار مستمر. هذا من شأنه أن يؤثر أيضًا على طريقة العمل عمل.

إدارة المشاريع رشيقة

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

النمذجة الرشيقة

النمذجة الرشيقة
النمذجة الرشيقة (AM) هي منهجية لنمذجة وتوثيق الأنظمة القائمة على البرامج. النمذجة الرشيقة أمر بالغ الأهمية للتسليم السريع والمستمر للبرنامج. إنها مجموعة من القيم والمبادئ والممارسات التي توجه نمذجة البرمجيات الفعالة وخفيفة الوزن.

تحليل الأعمال الرشيقة

تحليل الأعمال الرشيقة
Agile Business Analysis (AgileBA) هي شهادة في شكل توجيه وتدريب لـ عمل محللين يسعون للعمل في بيئات رشيقة. لدعم هذا التحول ، تساعد AgileBA أيضًا عمل يربط المحلل مشاريع Agile بمنظمة أوسع مهمة or إستراتيجية. للتأكد من أن المحللين لديهم المهارات والخبرات اللازمة ، تم تطوير شهادة AgileBA.

ابتكار نموذج الأعمال

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

الابتكار المستمر

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

تصميم سبرينت

تصميم سبرينت
A صمم Sprint هي عملية مثبتة لمدة خمسة أيام تكون فيها حرجة عمل يتم الرد على الأسئلة بشكل سريع صمم والنماذج الأولية ، مع التركيز على المستخدم النهائي. أ صمم يبدأ العدو بالتحدي الأسبوعي الذي يجب أن ينتهي بنموذج أولي ، واختباره في النهاية ، وبالتالي تم تعلم الدرس ليتم تكراره.

التفكير في التصميم

التفكير في التصميم
حدد تيم براون ، الرئيس التنفيذي لـ IDEO صمم التفكير على أنه "نهج محوره الإنسان ابتكار التي تستمد من مجموعة أدوات المصمم لدمج احتياجات الناس وإمكانيات التكنولوجيا ومتطلبات عمل نجاح." لذلك ، فإن الرغبة والجدوى والجدوى متوازنة لحل المشكلات الحرجة.

DevOps

devops الهندسة
يشير DevOps إلى سلسلة من الممارسات التي يتم إجراؤها لأداء عمليات تطوير البرامج المؤتمتة. إنه اقتران لمصطلح "تطوير" و "عمليات" للتأكيد على كيفية تكامل الوظائف عبر فرق تكنولوجيا المعلومات. تعزز إستراتيجيات DevOps بناء المنتجات واختبارها ونشرها بسلاسة. ويهدف إلى سد الفجوة بين فرق التطوير والعمليات لتبسيط التطوير تمامًا.

مسار مزدوج رشيق

مزدوج المسار رشيقة
يعد اكتشاف المنتج جزءًا مهمًا من المنهجيات الرشيقة ، حيث يتمثل هدفها في ضمان بناء المنتجات التي يحبها العملاء. يتضمن اكتشاف المنتج التعلم من خلال مجموعة من الأساليب ، بما في ذلك صمم التفكير والبدء الخالي من الهدر واختبار A / B على سبيل المثال لا الحصر. Dual Track Agile هي منهجية رشيقة تحتوي على مسارين منفصلين: مسار "الاكتشاف" ومسار "التسليم".

ميزة التنمية مدفوعة

ميزة التنمية مدفوعة
التطوير المدفوع بالميزات هو عملية برمجية براغماتية تتمحور حول العميل والهندسة المعمارية. التطوير المدفوع بالميزات (FDD) هو تطوير برمجيات رشيقة نموذج الذي ينظم سير العمل وفقًا للميزات التي يجب تطويرها بعد ذلك.

أقصى الحدود برمجة وتطوير

البرمجة المتطرفة
تم تطوير برمجة eXtreme في أواخر التسعينيات من قبل كين بيك ورون جيفريز وورد كننغهام. خلال هذا الوقت ، كان الثلاثي يعملون على نظام التعويض الشامل لشركة كرايسلر (C1990) للمساعدة في إدارة نظام كشوف مرتبات الشركة. برمجة eXtreme (XP) هي منهجية لتطوير البرمجيات. إنه مصمم لتحسين جودة البرامج وقدرة البرامج على التكيف مع احتياجات العملاء المتغيرة.

Lean مقابل Agile

منهجية العجاف مقابل الرشاقة
تم التفكير في منهجية Agile في المقام الأول لتطوير البرمجيات (وغيرها عمل كما تبنته التخصصات). التفكير الخالي من الهدر هو أسلوب لتحسين العملية حيث تعطي الفرق الأولوية لـ القيمة تدفقات لتحسينه بشكل مستمر. تنظر كلتا المنهجيتين إلى العميل باعتباره المحرك الرئيسي للتحسين وتقليل الفاقد. كلا المنهجيتين تنظر إلى التحسين على أنه شيء مستمر.

العجاف بدء التشغيل

شركة مبتدئة
الشركة الناشئة هي شركة ذات تقنية عالية عمل التي تحاول إنشاء ملف نموذج الأعمال في الصناعات التي تعتمد على التكنولوجيا. عادة ما تتبع الشركة الناشئة منهجية بسيطة ، حيث تكون مستمرة ابتكار، مدفوعة بحلقات فيروسية مدمجة هي القاعدة. هكذا يقود نمو والبناء آثار الشبكة نتيجة لهذا إستراتيجية.

Kanban

kanban
كانبان هو إطار للتصنيع الخالي من الهدر طورته تويوتا لأول مرة في أواخر الأربعينيات. إطار عمل كانبان هو وسيلة لتصور العمل وهو يتحرك من خلال تحديد الاختناقات المحتملة. يقوم بذلك من خلال عملية تسمى التصنيع في الوقت المناسب (JIT) لتحسين العمليات الهندسية ، وتسريع تصنيع المنتجات ، وتحسين الانتقال إلى السوق إستراتيجية.

التطوير السريع للتطبيق

التطوير السريع للتطبيق
تم تقديم RAD لأول مرة من قبل المؤلف والمستشار جيمس مارتن في عام 1991. أدرك مارتن ثم استفاد من قابلية البرمجيات اللانهائية للتطويع في تصميم نماذج التطوير. التطوير السريع للتطبيقات (RAD) هو منهجية تركز على التقديم السريع من خلال التغذية الراجعة المستمرة والتكرار المتكرر.

رشيقة متدرجة

تطوير متدرج - رشيق - رقيق
يساعد Scaled Agile Lean Development (ScaleD) الشركات على اكتشاف نهج متوازن للتحول السريع وأسئلة التوسع. نهج ScALed يساعد الشركات على الاستجابة بنجاح للتغيير. مستوحى من مزيج من القيم المرنة والمرنة ، يعتمد ScALed على الممارس ويمكن إكماله من خلال أطر وممارسات رشيقة مختلفة.

نموذج سبوتيفي

سبوتيفي النموذج
نموذج Spotify هو نهج مستقل لتوسيع نطاق رشاقة ، مع التركيز على التواصل الثقافي والمساءلة والجودة. سبوتيفي نموذج تم التعرف عليه لأول مرة في عام 2012 بعد Henrik Kniberg ، وأصدر Anders Ivarsson مستندًا تقنيًا يوضح بالتفصيل كيفية اقتراب شركة البث المباشر Spotify من المرونة. لذلك ، فإن Spotify نموذج يمثل تطورًا للرشاقة.

تطوير يحركها الاختبار

تطوير يحركها الاختبار
كما يوحي الاسم ، TDD هي تقنية تعتمد على الاختبار لتقديم برامج عالية الجودة بسرعة وبشكل مستدام. إنه نهج تكراري يعتمد على فكرة أنه يجب كتابة اختبار فاشل قبل كتابة أي رمز لميزة أو وظيفة. التطوير المستند إلى الاختبار (TDD) هو نهج لتطوير البرمجيات يعتمد على دورات تطوير قصيرة جدًا.

توقيت

توقيت
Timeboxing هي تقنية بسيطة لكنها قوية لإدارة الوقت لتحسين الإنتاجية. يصف Timeboxing عملية الجدولة الاستباقية لكتلة من الوقت لإنفاقها على مهمة في المستقبل. تم وصفه لأول مرة من قبل المؤلف جيمس مارتن في كتاب حول تطوير البرمجيات الرشيقة.

سكروم

ما هو سكروم
سكرم هي منهجية شارك في إنشائها كين شوابر وجيف ساذرلاند من أجل التعاون الجماعي الفعال في المنتجات المعقدة. تم التفكير في Scrum بشكل أساسي في مشاريع تطوير البرمجيات لتقديم قدرة برمجية جديدة كل 2-4 أسابيع. إنها مجموعة فرعية من Agile تُستخدم أيضًا في إدارة المشاريع لتحسين إنتاجية الشركات الناشئة.

مكافحة أنماط سكروم

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

سكروم على نطاق واسع

سكرم على نطاق
Scrum at Scale (Scrum @ Scale) هو إطار عمل تستخدمه فرق Scrum لمعالجة المشكلات المعقدة وتقديم منتجات عالية القيمة. تم إنشاء Scrum at Scale من خلال مشروع مشترك بين Scrum Alliance و Scrum Inc. وأشرف على المشروع المشترك Jeff Sutherland ، أحد مؤسسي Scrum وأحد المؤلفين الرئيسيين لـ Agile Manifesto.

اقرأ التالي: MVP, قماش خفيف, سكروم, التفكير في التصميم, إطار عمل VTDF.

اقرأ المزيد: نماذج الأعمال

قراءة التالي: تحليل الأعمالتحليل المنافسين الابتكار المستمرمنهجية رشيقةالعجاف بدء التشغيلابتكار نموذج الأعمالإدارة المشاريع.

الأدلة الرئيسية:

دراسات الحالة الرئيسية:

نبذة عن الكاتب

انتقل إلى الأعلى
FourWeekMBA