Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.11.2010, 23:13
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 11  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Цитата:
Сообщение от dimarik Посмотреть сообщение
Подписываю представление(я) на события создания дочерних моделей в родительских моделях. Можно подписаться к общему узлу, имеющим в своих ветках нужных родителей. Событие добавления/удаления доставляется к этому узлу баблингом.
А как представление узнает какое представление создать к новоиспеченной модели? Элементарным перебором?

Цитата:
Да, своя реализация, с помощью EventDispatcher'а. Почти своя, если учесть что DOM адоб реализовал только для дисплей-листа. Мой велосипед - конгломерат модернизации идей BloodHound'а и исследования поведения нативного EventDispatcher. Эта штука просто реализует GoF паттерн Composite. Хочу разродится в скором времени статейкой в своем бложике по этому поводу.
Отказался от дисплайобджектов в моделях? Будет интересно пощупать. У меня всегда были проблемы с реализации композита гофовского )

Старый 10.11.2010, 23:34
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 12  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
А как представление узнает какое представление создать к новоиспеченной модели? Элементарным перебором?
Достаточно того, что родительское представление ожидает появление новой дочерней модельки от узловой модельки. Пример - витрина магазина. Набор дочерних представлений товара. Новое представление появляется/удаляется по мере добавления/удаления моделей в родительский узел. Представления имеют один тип, который принимает один тип модельки.

Сложнее хотите? Давайте применим AbstractFactory. По типу модели выдадим тип представления. Полный консенсус. )
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 10.11.2010, 23:59
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 13  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
А, в этом плане. Просто у меня в голове идеальный-план-MVC в этом роде такой:
Любая модель имеет свойство renderable, и если оно есть и добавляется в другую модель - сразу же к ней цепляется нужное представление. И либо модель сама знает, как её визуализироваться (т.е. имеем ссылку типа Class на Class представление), либо получать имя класса модели и лепить из неё представление. Фабрика, короче, как ты и сказал.
Думаю вот что-то такое и описать в MVC part 2...

Старый 11.11.2010, 01:12
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 14  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Предлагаю реализацию (самовыражение модели) оставить на выбор представления. Мы просто не сможем (да и не нужно) предусмотреть всех вариантов во что будет визуализирована (аудиовизирована, тактилориризорована, запаховизирована, вкусовизирована) модель.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 11.11.2010, 01:17
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 15  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
А всех и ненадо. По идее модели наследуются от некоторой абстрактной, BaseModel в которой есть функционал для бабблинга. Туда же можно заложить и какой-то объект ViewerInformation, в котором хранится вся-вся информация, как конкретно эту модель нужно представить в стандартном случае (коих будет 9 из 10), а для нестандартных - в тот же объект ещё что-то добавить.

В итоге получается монстрюга с 40 ногами, которые торчат из ушей. Зачем - я ещё не придумал. )

Старый 11.11.2010, 01:48
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 16  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
По идее модели наследуются от некоторой абстрактной, BaseModel в которой есть функционал для бабблинга.
По моей (по GoF, конечно) идее баблинг и дерево не привязано ни к модели, ни к дисплей-листу, ни к DOM, ни к чему либо еще. Это просто структура Composite. Расширяй (extends) от неё во что душа пожелает.

Цитата:
Туда же можно заложить и какой-то объект ViewerInformation, в котором хранится вся-вся информация, как конкретно эту модель нужно представить
Не согласен. Предположим, что модель - телевизионный сигнал. Модель ничего не знает о том, что...
а) есть черно-белый телевизор.
б) есть цветная ЖК панель, 200Hz кадровой, супернавороченным шумодавом и предикативной системой восстановления сигнала.

Выбери себе, как будешь кодировать сигнал отдельно для бабушки и для мажора и отправлять явные посылы между телетекстом о ViewerInformation.

Отвлекся. Мысль такая. Как представляет мир себе каждый человек - это его собственное дело. А модель, одна на всех - жизнь ).

Представление просто знает о модели ровно то, что может. Представление - это данность. Конкретный образчик мира.

Модель ничего не знает о представлении. Модель абсолютна. Но абсолютна как первый закон Ньютона ). Как поведут себя представления - ей абсолютно нейтрально.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.


Последний раз редактировалось dimarik; 11.11.2010 в 02:54.
Старый 11.11.2010, 13:10
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 17  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Цитата:
По моей (по GoF, конечно) идее баблинг и дерево не привязано ни к модели, ни к дисплей-листу, ни к DOM, ни к чему либо еще. Это просто структура Composite. Расширяй (extends) от неё во что душа пожелает.
Ну я и имел ввиду что BaseModel extends CompositeEventDispatcher
Цитата:
Не согласен.
Не совсем о том. Телевизионный сигнал показывается тем, что умеет его показывать - т.е. телевизором, ViewerInformation содержит в себе телевизионные данные. А старенький телевизор или плазма во весь экран - это уже потомки какого то TV.as, о котором нам и рассказывает ViewerInformation.

Хотя читая тебя всё больше понимаю что в жизни такое чудище применения не найдёт.

Расскажи лучше, как конкретно ты реализовываешь механизм ожидания новых моделей (3 следующие добавленные модели будут игроками, их надо визуализировать, а следующие 4 - не надо, это метаданные).

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:53.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:53.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.