-
Notifications
You must be signed in to change notification settings - Fork 1
12.Архитектурный домен. Паттерн КМС. Шаблоны для создания прикладных классов.
Архитектурный домен - обеспечивает единые механизмы и структуры для управления данными и управления всей программой, как единым целым.
Схема разделения данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента: модель, представление и контроллер — таким образом, что модификация каждого компонента может осуществляться независимо.
-
Модель(Model) предоставляет данные и реагирует на команды контроллера, изменяя своё состояние.
-
Представление(View) отвечает за отображение данных модели пользователю, реагируя на изменения модели.
-
Контроллер(Controller) интерпретирует действия пользователя, оповещая модель о необходимости изменений.
Основная цель применения этой концепции состоит в отделении бизнес-логики(модели) от её визуализации(представления, вида). За счёт такого разделения повышается возможность повторного использования кода. Наиболее полезно применение данной концепции в тех случаях, когда пользователь должен видеть те же самые данные одновременно в различных контекстах и/или с различных точек зрения. В частности, выполняются следующие задачи:
-
К одной модели можно присоединить несколько видов, при этом не затрагивая реализацию модели. Например, некоторые данные могут быть одновременно представлены в виде электронной таблицы, гистограммы и круговой диаграммы;
-
Не затрагивая реализацию видов, можно изменить реакции на действия пользователя(нажатие мышью на кнопке, ввод данных) — для этого достаточно использовать другой контроллер;
-
Ряд разработчиков специализируется только в одной из областей: либо разрабатывают графический интерфейс, либо разрабатывают бизнес-логику. Поэтому возможно добиться того, что программисты, занимающиеся разработкой бизнес-логики(модели), вообще не будут осведомлены о том, какое представление будет использоваться.