ما هو MVC؟ تعرف على بنية البرنامج هذه!

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

ما هو mvc-2

MVC أو Model View Controller ، الطريقة الجديدة للتشفير

ما هو MVC؟

يرمز MVC إلى Model View Controller ، وهدفه هو أن يكون بمثابة أساس لتصميم البرامج. هندسة البرمجيات هي أدلة تسهل بناء هذه العناصر ، وتعطي نموذجًا لما ينبغي أن تكون عليه.

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

لتسهيل استخدامه ، استخدم واجهة المستخدم ، حيث إنها سهلة الفهم وتوصيل الكمبيوتر مباشرة بمستخدم الإنترنت. وبالمثل ، يمكن استخدام رمز MVC للعديد من البرامج أو المخططات.

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

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

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

ما هو MVC؟: تاريخ النموذج ، وجهات النظر وأدوات التحكم

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

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

Smalltalk-80 هي لغة برمجة نشطة ، على عكس MCV ، لا تفصل بين مفاهيمها ووظائفها. سيتم منح اتحاد MCV لمكتبة عاملة ، واختبار قواعدها.

أخيرًا ، في أواخر التسعينيات ، تم إصدار MVC كمفهوم خاص به ، حيث تم فصله عن Smalltalk-80. في أيامه الأولى ، كان MCV برنامجًا أساسيًا للغاية لم يطبق بعد ميزة فصل الكود ، بناءً على وضع الإدخال فقط.

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

وحدة تحكم عرض النموذج الهرمي (HMVC)

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

محول عرض النموذج (MVA)

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

مقدم عرض النموذج (MVP)

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

نموذج عرض النموذج (MVVM)

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

ما فائدة MVC؟

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

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

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

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

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

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

إذا كنت تحب هذا المقال ، فأنا أدعوك لقراءته "الفئات والكائنات في Java"، وهو عمل كامل للمفاهيم حول Java ، سوف يعجبك بالتأكيد.

HTML بدون MVC

قد يكون تفسير بنية هذا البرنامج غامضًا في البداية ، ومع ذلك ، فإنها تأخذ في الاعتبار شيئًا مثل عناصر HTML و CSS و PHP.

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

جعلت مشكلة HTML مهمة البرمجة مملة للغاية ، لكن بعض كتاب الأكواد كانت لديهم فكرة رائعة وهي إنشاء شيء لفصل المسؤوليات عند البرمجة: لقد أنشأوا لغة CSS. تسمح لغة CSS بتعيين وتمييز مهمة كل رمز ، وإزالة النشاط الممل المتمثل في تكرار أو تغيير رمز بأكمله.

كود السباغيتي

حالة HTML ، لا تحدث معه فقط ؛ عادة ، لإنشاء صفحات مختلفة ، فإنك تميل إلى دمج الرموز ، والتي تؤدي وظائف مختلفة. تميل الرموز إلى التجمع بحيث يتم عرض ما هو مطلوب ، وهو أمر مفيد ، ومع ذلك ، من خلال ارتكاب أدنى خطأ في بعض الرموز ، فإنه يفرض تكرار العملية برمتها.

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

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

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

هذه هي الطريقة التي يعمل بها نظام MVC ، تمثيل بسيط لكيفية حدوث العملية

مقدمة لمقدم عرض النموذج

منذ بداية المقال ، تم شرح كيفية عمله ولماذا يعمل النموذج ، ومع ذلك ، لم يتم شرح كل جزء من أجزائه على وجه التحديد: النموذج والعرض والمراقب.

الموديل

إنه المستوى الأول ويحدد موقع جميع البيانات المتعلقة بالنظام وتشغيله ، أي أنه يتعامل مع محتوى النظام والتحديثات الممكنة.

هناك أيضًا "منطق العمل" ، والذي يتكون من كيفية تخزين النظام للمعلومات وتحويلها وتغييرها من أجل تصورها.

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

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

لا فيستا

العرض هو الدرجة التي يتم فيها تمثيل المعلومات التي يرسلها النموذج للمستخدم ، مع إظهار المحتوى في واجهة بصرية. ينعكس رمز البرنامج ، والذي سيتم العمل عليه وعرضه في واجهات المستخدم.

يعمل هذا العنصر مع أكواد HTML و PHP ، لأنها أكثر الأكواد ملاءمة لإنشاء صفحة أو خادم ، إلخ. يتم إرسال هذه الرموز إلى الإخراج ، وهو التحويل الكلي للمعلومات التي يرسلها النموذج.

المتحكم

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

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

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

ما هو mvc

كيف تتفاعل المكونات؟

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

  1. يبدأ مستخدم الإنترنت في استخدام الخيارات المختلفة للدخول إلى واجهة المستخدم ، أي أنه يدخل الصفحة أو الخادم من خلال بعض التكملة.
  2. يتم استلام الطلب من قبل وحدة التحكم ، والتي ترسل الرسالة لعرضها وإلى النموذج. يتم تشغيل كل طلب من خلال معالج الحدث (رمز Java أو HTML ، والذي يعطي استجابة تعليمات برمجية خارجية).
  3. المتحكم في تلبية الطلب ، يدخل النموذج ، حيث يستخدم المعلومات ويعدل الإجراء لما يحتاجه. من أجل تنفيذ بعض الإجراءات ، يجب أن تستخدم وحدة التحكم رموزًا مغلفة مختلفة ، باختصار ، نمط أوامر.
  4.  في بعض الحالات ، ستستخدم وحدة التحكم لإنجاز المهمة الكاملة المزيد من البيانات من النموذج ، والتي يجب أن ترسلها لعرضها ، وتعمل كجسر.
  5. ترسل وحدة التحكم جميع المعلومات والترتيب الذي قدمه مستخدم الإنترنت في الأفق ، والذي يجب أن يعرض تصورًا لما هو مطلوب.
  6. يستخدم العرض ، من أجل تقديم تصور جيد ، أكبر قدر ممكن من المعلومات من النموذج ويعكس كل ما هو موجود فيه.
  7. نظرًا لأنه لا يمكن أن يحتوي النموذج على معلومات حول ما يحدث في العرض ، فإنه يستخدم نوعًا من البرامج التي تحذره من أي تغيير ، وبهذه الطريقة ، يقوم بإجراء التغيير الضروري في المعلومات أو الواجهة.
  8. تكرر الواجهة العملية اعتمادًا على كل تفاعل يقوم به مستخدم الإنترنت في عدد الإجراءات التي يقوم بها.

كيف يتم استخدامه في تطبيقات الويب؟

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

تم تكييف MVC مع اللغات الافتراضية ، مما أدى إلى أن المستويات المختلفة يمكن أن تكون منسجمة مع لغات مثل HTML أو JavaScript ، من بين أمور أخرى. تُستخدم الأطر لتكون قادرة على التوفيق بين بنية MVC ، وتشكيل واحدة خاصة بها للويب.

بنية MVC للاستجابة الظاهرية هي بنية "العميل والخادم" ، في هذا المخطط يقوم العميل بتقديم طلب ويكون الخادم هو المستلم ، والذي سيعطي نتيجة أو استجابة للطلب.

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

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

MVC وقواعد البيانات

سمحت التطورات التكنولوجية بتطوير خوادم ولغات جديدة تؤدي إلى تطوير أفضل لـ MVC ، مما يسمح بالاستجابة لتكون أقل تعقيدًا وأكثر مباشرة للمستخدم.

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

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

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


اترك تعليقك

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

*

*

  1. المسؤول عن البيانات: مدونة Actualidad
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.