|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
1) Обычно конкретное, если модель сложносочиненная;
2) Вьюшка шлёт конкретное событие PLAY_CLICK; 3) Событие таймера слушает модель, в себе содержит время в timestamp, например, при изменении шлёт событие. Вьювер ловит и через форматтер выводит время. |
|
|||||
Цитата:
1. таймер в контроллере. По таймеру контроллер пихает в модель неформатированное время. Модель говорит что ее изменили. Вьюха форматирует время так как ей надо. 2. опять же таймер в контроллере. Контроллер пихает Форматированное время в модель. Вюшка просто берет готовую строку и отображает. Первый вариант правильнее, так как одно и то же самое системное время(число) можно показать по-разному. А это как раз дело вьюхи.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Dukobpa3, а я сую таймер прямо в модель, как правило он статический и вещает на все экземпляры моделей.
Нагружать контроллер этой ерундой не вижу смысла, не говоря уже о том, что у меня нет какого-то специального контроллера модели, который занимается её изменением. |
|
|||||
Мой MVC не совсем академический, так как модель как правило выполняет роль БД, а вся логика в контроллере, и частично во вью (но разделение логики контроллера и вью четкое: контроллер решает те вопросы в которых требуется изменение модели, а так же коммуникации с другими контроллерами, а вью сугубо то что нужно менять визуально).
Хотя в случае конкретно с таймерами - то в контроллере потому, что на одном таймере как правило висит не только запись в модель текущего времени, а еще пару-тройку действий, к модели не относящихся. Добавлено через 6 минут А то что статический то да, но вот к примеру в текущем проекте у нас есть синглтон с данными пользователя. Там пара: модель + контроллер. Соответственно контроллер запускает таймер, а модель хранит в себе неформатированное время. Плюс это время периодически синхронизируется с сервером. А все вьюхи уже берут эту цифру и показывают кому как надо.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
FD Team
|
прикольная тема, осилил-таки наконц полностью, хоть и не за один присест. Много идей интересных.
etc, я так понял, что в твоих проектах может быть несколко триад, в том числе и вложенные. Кто занимается добавлением вьюшек в дисплей лист? Контроллер? Если да, то как ты определяешь, куда контроллер должен добывить свою вью, ведь очень часто ее надо засунуть не просто в документ класс, а в какой-то определенный контейнер, о котором контроллер нечего не знает, а знает только более старшая вьюха. |
|
|||||
Если можно я отвечу, хоть вопрос и не ко мне)) Так же под шумок возможно кто-то укажет и на мои ошибки в понимании данного вопроса
В общем, кроме дерева триад/контроллеров/моделей есть еще и дерево хостов. Каждый контроллер имеет свой хост (дисплейОбжектКонтейнер) В который он добавляет свою вьюху. Этот хост к этому контроллеру пристегивает родительский контроллер(в моем случае сразу в конструкторе). Соответственно структура остается четкой и древовидной без всякого рода мешанины и одноуровневых пулов. Хотя есть вариант реализации и слегка иной, в частности он используется в роботлегс, советую посмотреть. Там все контроллеры на одном уровне и все вьюхи. В момент использования просто берется то или иное из общего пула и вуаля. С самим фреймворком общался сугубо в ознакомительных целях потому тонкостей не знаю, но в целом вроде так.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Цитата:
|
|
|||||
Дерево растет из мейна. Мейн - это хост мейн контроллера. Ну и дальше аналогия с дисплейлистом идет. Хосты друг в друга добавляются согласно места в дереве.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Создаёт — это и есть new с addChild. Контроллер построением интерфейса не занимается.
Если это компонент (окно, например), то связыванием контроллера с компонентом занимается какой-нибудь менеджер компонентов. Или же контроллер компонента им же самим и создаётся. |
Часовой пояс GMT +4, время: 20:36. |
|
« Предыдущая тема | Следующая тема » |
|
|