Название: Правильная ли архитектура? Отправлено: Кусай от Январь 30, 2011, 13:52 (http://i066.radikal.ru/1101/a2/9660e6c2fb9c.jpg)
Собственно, model - описание модели. Имеет методы, через которые получает команды от контроллера и методы, которые передают нужную информацию для отрисовки. Controller - ловит нажатия клавиш/мышь и срабатывания таймера, и изменяет состояние модели View - с помощью геторов модели получает нужную информацию и рисует. В main() создается экземпляр модели; главное окно, перехватывающее нажатия клавиш и мышь; создается таймер. main() подключает к себе контроллер, отображение и автоматически саму модель. для контроллера и отображения он передает указатели на данные. Широкие стрелки - от того ЧТО подключается, к тому К ЧЕМУ подключается. Модель адекватна? Название: Re: Правильная ли архитектура? Отправлено: Denjs от Январь 30, 2011, 14:23 вы UML (http://ru.wikipedia.org/wiki/UML)в принципе не любите, да? ;D
Цитировать Модель адекватна? Адекватна... чему? некое описание модели я вижу. Задачу, сферу применения - нет. Для ориентира/примера - момимо шаблонов проектирования (http://ru.wikipedia.org/wiki/%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD%D1%8B_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F) и описания MVC в той-же википедии (http://ru.wikipedia.org/wiki/MVC), почитайте Assistant о том как например в QT реализована Модель + (Вид+Контроллер). (например где то там говорилось что "Вид"+"Контроллер" в Qt "сведены вместе"...) не уверен, но похоже начать можно со статьи Ассистанта "Model/View Programming (http://doc.trolltech.com/4.7/model-view-programming.html)". Название: Re: Правильная ли архитектура? Отправлено: Igors от Январь 30, 2011, 14:46 Не очень верится что Controller никак не зависит от View - нажатия клавиш и мыша обычно имеют смысл в контексте UI (а не сами по себе)
Название: Re: Правильная ли архитектура? Отправлено: Denjs от Январь 30, 2011, 15:00 почему бы и нет? ))) зависит же от задачи.
В QT это так (контроллер+вид = вместе. ) а вот для другой области - скажем веб-сервисы или не десктопное гуи-приложение - то у нас вполне себе могут быть разные функции и классы для получения некого отображения (например "отчет" - как некий "срез" какой-либо многомерной модели с цифрами) и функции/классы модификации модели. Все же зависит от задачи, которую аффтор до сих пор не рассказал. впрочем ладно... умолкаю пока аффтор не появится.... Название: Re: Правильная ли архитектура? Отправлено: Igors от Январь 30, 2011, 19:38 а вот для другой области - скажем веб-сервисы или не десктопное гуи-приложение - то у нас вполне себе могут быть разные функции и классы для получения некого отображения (например "отчет" - как некий "срез" какой-либо многомерной модели с цифрами) и функции/классы модификации модели. Согласен, но это случай довольно редкийЕще вопрос(ик) - а как View узнает что ему надо обновиться/перерисоваться? По таймеру - ну вряд ли. Желание четко разделить модель/UI похвально, но то "в теории" |