Модель-вид-контролер: відмінності між версіями

[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
Ccthulhu (обговорення | внесок)
Немає опису редагування
Мітки: перше редагування Візуальний редактор
Рядок 1:
[[Файл:ModelViewControllerDiagram2.svg|thumb|250px|Діаграма взаємодії між компонентами шаблону]]
'''Моде́ль-вигляд-контро́лерМоде́ль–вигляд–контро́лер''' (або '''Модель-вид-контролерМодель–'''представлення'''–контролер''', {{lang-en|Model-view-controller}}, '''MVC''') — [[Архітектурні шаблони програмного забезпечення|архітектурний шаблон]], який використовується під час проектування та розробки [[програмне забезпечення|програмного забезпечення]].
 
Цей шаблон поділяєпередбачає системуподіл системи на три взаємопов'язані частини: [[модель даних]], вигляд даних([[інтерфейс користувача]]) та [[керування|модуль керування]]. Застосовується для відокремлення даних (модельмоделі) від [[інтерфейс користувача|інтерфейсу користувача]] (вигляду) так, щоб зміни інтерфейсу користувача мінімально впливали на роботу з даними, а зміни в моделі даних могли здійснюватися без змін інтерфейсу користувача.
 
Мета шаблону — гнучкий дизайн програмного забезпечення, який повинен полегшувати подальші зміни чи розширення програм, а також надавати можливість повторного використання окремих компонентів програми. Крім того використання цього шаблону у великих системах призводить до певної впорядкованості їх структури і робить їх зрозумілішими завдяки зменшенню складності.
 
== Компоненти ==
АрхітектурнийУ шаблонрамках Модель-Вид-Контролерархітектурного шаблону модель–вигляд–контролер (MVC) поділяєпрограма програмуподіляється на три взаємопов'язані частини. У даній тріаді до обов'язків компонентукомпонент Модель (Model) входитьвідповідає за зберігання даних і забезпечення інтерфейсу до них. Вигляд (View) відповідальний за представлення цих даних користувачеві. Контролер (Controller) керує компонентами, отримує сигнали у вигляді реакції на дії користувача, і повідомляє про зміни компоненту Модель. Така внутрішня структура в цілому поділяє систему на самостійні частини і розподіляє відповідальність між різними компонентами.
 
MVC поділяє цю частину системи на три самостійні частини: введення даних, компонент обробки даних і виведення інформації. Модель, як вже було відмічено, інкапсулює ядро даних і основний функціонал з їх обробки. Також компонент Модель не залежить від процесу введення або виведення даних. Компонент виводу Вигляд може мати декілька взаємопов'язаних областей, наприклад, різні таблиці і поля форм, в яких відображається інформація. У функції Контролера входить моніторинг за подіями, що виникають в результаті дій користувача (зміна положення курсора миші, натиснення кнопки або введення даних в текстове поле).