Недавно я завершил личный проект, и один из методов, который я использовал для разлома интерфейса, заключался в том, чтобы иметь один основной контроллер просмотра модели, который обрабатывал большую часть основной логики заявление. Тогда, по большей части, было много общих элементов управления, которые позволяют использовать Slider и текстовое поле, которые были связаны вместе с одним значением float. Они сами будут составлять еще один (Model View Controller), с которым взаимодействует родительский контроллер представления модели. Хотя общение все равно было бы вниз по холму, а не самооткрывающейся петле.Контроллер просмотра модели внутри контроллера просмотра модели
В общем, контроллер будет взаимодействовать с контроллером ползунка и текстового поля, которые были связаны вместе. Но оба они не имели прямого доступа друг к другу, поэтому, когда событие произошло для контроллера поля Text и слайдера, оно будет обрабатываться родительским контроллером, который будет обрабатывать большую часть логического потока программы, а затем до контроллер ползунка и текстовое поле.
Это великолепно работало и получило массу отличных отзывов от пользователей, которые использовали приложение, и любили гибкие способности, которые он приносил с помощью очень логичных переустанавливающих элементов управления, которые им не нужно было думать.
Хотя разработчик во мне задает вопросы о прагматизме и чистоте дизайна. Конструкция системы была сверху городской подход, который я взял из этого Adobe после броска:
Adobe, общие алгоритмы http://www.youtube.com/watch?v=4moyKUHApq4
, и вообще использование использованием MVC в качестве объектов внутри объектов отражается это вместо одной глобальной Контроллер MVC.
И предложения, которые я мог бы улучшить в следующем проекте, или я должен использовать этот же подход еще раз?
Спасибо, я даже не знал, что существовало до сих пор. Я даже прочитал книгу шаблонов дизайна, и она не упомянула об этом. – Chad