Page 72 - 4787
P. 72
Риунос 8.1.- Виділення логіки предметної області в окремі класи предметної
області
У мові Smalltalk80 для побудови інтерфейсу користувача застосовують
три класи модель-вид-котролер (Model/View/Controller - MVC). MVC
складається з трьох видів. Модель – це об’єкт додатка. Вид - екранне
зображення. Контролер описує, як інтерфейс реагує на керуючу дію
користувача. МVC відділяє вид від моделі, встановлюючи між ними протокол
взаємодії типу ,,підписка-повідомлення’’. Вид повинен гарантувати, що
зовнішнє представлення відображає стан моделі. При кожній зміні внутрішніх
даних модель повідомляє усі залежні від неї види, в результаті чого вид
оновлює себе. Такий підхід дозволяє приєднати до однієї моделі декілька
видів, забезпечуючи тим самим різноманітні представлення. Можна створювати
новий вид не переписуючи модель.
Ця ідея послужила фундаментом зв'язку між графічним інтерфейсом
користувача (GUI) і об'єктами предметної області в Smalltalkk80.
В основі MVC лежить поділ коду користувача інтерфейсу (Подання, що
називався раніше view, а зараз частіше presentation) і логіки предметної області
(моделі - model). Класи представлення містять тільки ту логіку, яка потрібна
71