MVC-Model View Controller

 
▪️يقوم بتقسيم البرنامج المطلوب إلى ثلاث أجزاء مُنفصلة، وذلك بغية فصل التمثيل الداخلي للمعلومات عن طريق الطُرق التي تُطرح بها المعلومات أو تُقبل من المُستخدم
🔻هذه الأجزاء هي:
👈🏻المُكون المركزي
▪️النموذج Model
•يتكون من بيانات التطبيق
•قواعد العمل
•المنطق والوظائف (functions)
🔹️عرض النموذج قد يكون على شكل إخراج لتمثيل المعلومات
مثل:
👈🏻المُخططات Charts
👈🏻الرسوم التخطيطية diagrams
🔹️من الممكن استخدام عروض مُتعدده لنفس المعلومات
مثل:
👈🏻 شريط الرسم البياني للإدارة bar chart for management
👈🏻طريقة العرض الجدولي الخاصة بالمحاسبين a tabular view for accountants
🔻بالإضافة إلى تقسيم التطبيق إلى ثلاث أنواع من المُكونات، يقوم المُتحكم أيضاً بتحديد التفاعلات بين هذه المُكونات.
🔹️وحدة التحكم Controller
👈🏻يستطيع إرسال أوامر للنموذج ليقوم بتحديث حالته (مثل: تحرير وثيقة).
👈🏻يستطيع أيضاً إرسال أوامر للعروض المرتبطة به لتقوم بتغير طريقة تمثيلها للنموذج
🔹️النموذج Model
👈🏻 يقوم بإخطار العروض ووحدات التحكم المرتبطين به عندما يكون هُناك تغير في حالته
👈🏻هذا الإخطار يُساعد العروض على إنتاج تحديث للمُخرجات
👈🏻ويُساعد المُتحكم لتغير مجموعة الأوامر المُتاحة. وفي بعض الحالات "وحدة التحكم بعرض النموذج" تكون عملية سلبية ،ولذلك يجب على المُكونات الأخرى أن تقوم هي بإستطلاع النموذج عن التحديثات بدلاً من أن يتم إخطارها.
🔹️العرض View
👈🏻 يقوم بطلب المعلومات من النموذج
👈🏻يستخدم تلك المعلومات لتوليد تمثيل للمُخرجات إلى المُستخدم.