إطار عمل 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 مكونًا تشغيليًا رئيسيًا للمنظمات الرقمية الحديثة ، مبنية على البرامج والخوارزميات.
بدأت Agile كطريقة تطوير خفيفة الوزن مقارنةً بتطوير البرمجيات ذات الوزن الثقيل ، وهو النموذج الأساسي للعقود السابقة من تطوير البرمجيات. بحلول عام 2001 ، وُلد البيان الخاص بتطوير البرمجيات الرشيقة كمجموعة من المبادئ التي حددت النموذج الجديد لتطوير البرمجيات كتكرار مستمر. هذا من شأنه أن يؤثر أيضًا على طريقة العمل عمل.
مشروع رشيق إدارة (APM) هو ملف إستراتيجية يقسم المشاريع الكبيرة إلى مهام أصغر وأكثر قابلية للإدارة. في منهجية APM ، يتم إكمال كل مشروع في أقسام صغيرة - يشار إليها غالبًا باسم التكرارات. يتم إكمال كل تكرار وفقًا لدورة حياة المشروع ، بدءًا من المرحلة الأولية صمم والتقدم نحو الاختبار ثم ضمان الجودة.
النمذجة الرشيقة (AM) هي منهجية لنمذجة وتوثيق الأنظمة القائمة على البرامج. النمذجة الرشيقة أمر بالغ الأهمية للتسليم السريع والمستمر للبرنامج. إنها مجموعة من القيم والمبادئ والممارسات التي توجه نمذجة البرمجيات الفعالة وخفيفة الوزن.
Agile Business Analysis (AgileBA) هي شهادة في شكل توجيه وتدريب لـ عمل محللين يسعون للعمل في بيئات رشيقة. لدعم هذا التحول ، تساعد AgileBA أيضًا عمل يربط المحلل مشاريع Agile بمنظمة أوسع مهمة or إستراتيجية. للتأكد من أن المحللين لديهم المهارات والخبرات اللازمة ، تم تطوير شهادة AgileBA.
الأعمال نموذجابتكار يدور حول زيادة نجاح منظمة بالمنتجات والتقنيات الحالية من خلال صياغة مقنعة اقتراح قيمة قادرة على دفع جديد نموذج الأعمال لتوسيع نطاق العملاء وخلق ميزة تنافسية دائمة. ويبدأ كل شيء من خلال إتقان العملاء الرئيسيين.
هذه عملية تتطلب حلقة تغذية مرتدة مستمرة لتطوير منتج ذي قيمة وبناء منتج قابل للتطبيق عملنموذج. مستمر ابتكار هي عقلية يتم فيها تصميم المنتجات والخدمات وتقديمها لضبطها حول مشكلة العملاء وليس الحل التقني لمؤسسيها.
A صمم Sprint هي عملية مثبتة لمدة خمسة أيام تكون فيها حرجة عمل يتم الرد على الأسئلة بشكل سريع صمم والنماذج الأولية ، مع التركيز على المستخدم النهائي. أ صمم يبدأ العدو بالتحدي الأسبوعي الذي يجب أن ينتهي بنموذج أولي ، واختباره في النهاية ، وبالتالي تم تعلم الدرس ليتم تكراره.
حدد تيم براون ، الرئيس التنفيذي لـ IDEO صمم التفكير على أنه "نهج محوره الإنسان ابتكار التي تستمد من مجموعة أدوات المصمم لدمج احتياجات الناس وإمكانيات التكنولوجيا ومتطلبات عمل نجاح." لذلك ، فإن الرغبة والجدوى والجدوى متوازنة لحل المشكلات الحرجة.
يشير DevOps إلى سلسلة من الممارسات التي يتم إجراؤها لأداء عمليات تطوير البرامج المؤتمتة. إنه اقتران لمصطلح "تطوير" و "عمليات" للتأكيد على كيفية تكامل الوظائف عبر فرق تكنولوجيا المعلومات. تعزز إستراتيجيات DevOps بناء المنتجات واختبارها ونشرها بسلاسة. ويهدف إلى سد الفجوة بين فرق التطوير والعمليات لتبسيط التطوير تمامًا.
يعد اكتشاف المنتج جزءًا مهمًا من المنهجيات الرشيقة ، حيث يتمثل هدفها في ضمان بناء المنتجات التي يحبها العملاء. يتضمن اكتشاف المنتج التعلم من خلال مجموعة من الأساليب ، بما في ذلك صمم التفكير والبدء الخالي من الهدر واختبار A / B على سبيل المثال لا الحصر. Dual Track Agile هي منهجية رشيقة تحتوي على مسارين منفصلين: مسار "الاكتشاف" ومسار "التسليم".
التطوير المدفوع بالميزات هو عملية برمجية براغماتية تتمحور حول العميل والهندسة المعمارية. التطوير المدفوع بالميزات (FDD) هو تطوير برمجيات رشيقة نموذج الذي ينظم سير العمل وفقًا للميزات التي يجب تطويرها بعد ذلك.
تم تطوير برمجة eXtreme في أواخر التسعينيات من قبل كين بيك ورون جيفريز وورد كننغهام. خلال هذا الوقت ، كان الثلاثي يعملون على نظام التعويض الشامل لشركة كرايسلر (C1990) للمساعدة في إدارة نظام كشوف مرتبات الشركة. برمجة eXtreme (XP) هي منهجية لتطوير البرمجيات. إنه مصمم لتحسين جودة البرامج وقدرة البرامج على التكيف مع احتياجات العملاء المتغيرة.
تم التفكير في منهجية Agile في المقام الأول لتطوير البرمجيات (وغيرها عمل كما تبنته التخصصات). التفكير الخالي من الهدر هو أسلوب لتحسين العملية حيث تعطي الفرق الأولوية لـ القيمة تدفقات لتحسينه بشكل مستمر. تنظر كلتا المنهجيتين إلى العميل باعتباره المحرك الرئيسي للتحسين وتقليل الفاقد. كلا المنهجيتين تنظر إلى التحسين على أنه شيء مستمر.
الشركة الناشئة هي شركة ذات تقنية عالية عمل التي تحاول إنشاء ملف نموذج الأعمال في الصناعات التي تعتمد على التكنولوجيا. عادة ما تتبع الشركة الناشئة منهجية بسيطة ، حيث تكون مستمرة ابتكار، مدفوعة بحلقات فيروسية مدمجة هي القاعدة. هكذا يقود نمو والبناء آثار الشبكة نتيجة لهذا إستراتيجية.
كانبان هو إطار للتصنيع الخالي من الهدر طورته تويوتا لأول مرة في أواخر الأربعينيات. إطار عمل كانبان هو وسيلة لتصور العمل وهو يتحرك من خلال تحديد الاختناقات المحتملة. يقوم بذلك من خلال عملية تسمى التصنيع في الوقت المناسب (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.
Gennaro هو منشئ FourWeekMBAالتي وصلت إلى حوالي أربعة ملايين رجل أعمال ، من المديرين التنفيذيين والمستثمرين والمحللين ومديري المنتجات ورواد الأعمال الرقمية الطموحين في عام 2022 وحده | وهو أيضًا مدير المبيعات لتوسيع نطاق التكنولوجيا الفائقة في صناعة الذكاء الاصطناعي | في عام 2012 ، حصل جينارو على ماجستير في إدارة الأعمال الدولية مع التركيز على تمويل الشركات واستراتيجية الأعمال.