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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.04.2012, 13:28
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 1  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
По умолчанию Двойная модель, перекрестный запрос без диспетчиризации, структура контрола

Такая вот длинная тема
Парочка новых вопросов по МВС )
1. Если вид хочет держать несколько моделей, его конструктор выглядет так
Код AS3:
public function View(model1,model2,...modelN)
?
2. Нужна ли модель...
Собственно структура приложения :
Controller - > getData , model - > setData ( or not ) , view.updateByController(someData)
Тоесть вопрос звучит следующий : приходя данные с сервера в контрол, в 80% случаев это временные данные, которые не нужно записывать в модель, поэтому из контрола сразу запускаем метод вьюхи передавая туда данные.
Так вот вопрос, если в 80% случаев в модель ниче не пишем, нужна ли она вообще, если эти 20% можно сохранять в самом вью, передавая данные из контрола?
3. Так же интересует ситуация
Код AS3:
Controller :
model.data = getData;
view.update(model.data or getData)
Ведь в таком случае, можно отказаться от диспетчеризации модели совсем? Тоесть хочется узнать принципиальную разницу, и как лучше делать.
4. Хотелось бы узнать как вы пишите структуру со множеством вьюх и контролов. Я так пологаю :
Создается общий коонтрол : в нем создается общий вид и общая модель ( причем последнии 2 не обязательны ) , в нем так же создаются мини контролы, мини виды. В каждом мини контроле, возможны еще мини види и миниконтролы, все так ?
__________________
Марк Tween

Старый 12.04.2012, 16:27
artcraft вне форума Посмотреть профиль Отправить личное сообщение для artcraft Посетить домашнюю страницу artcraft Найти все сообщения от artcraft
  № 2  
Ответить с цитированием
artcraft
 
Аватар для artcraft

блогер
Регистрация: Aug 2005
Адрес: www.artcraft.cz
Сообщений: 1,967
Записей в блоге: 6
Отправить сообщение для artcraft с помощью ICQ
IMHO

1. если модели две то это будет уже не MVC
если уж очень хочется две модели то можно соорудить вложенную модель
2. вся прелесть MVC в том что view заменимый, по сути приложение должно продолжать нормально функционировать даже если, в данный момент, у него нету вью совсем, или наоборот есть больше чем один вид.
3. в классическом MVC, контроллер не должен управлять видом напрямую.
контроллер управляет моделью, модель оповещает вид, вид отражает состояние модели и дёргает контроллер когда пользователь что-то делает
4. в качестве примера может быть флекс фреймворк, каждый компонент это mvc, и при этом некоторые компоненты состоят из других компонентов, например скроллер содержит несколько кнопок

Добавлено через 13 минут
вот тут очень хорошо всё расписано про MVC
__________________
Хороший отдых - половина работы.


Последний раз редактировалось artcraft; 12.04.2012 в 16:42.
Старый 12.04.2012, 18:10
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 3  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
1. если модели две то это будет уже не MVC
Это кто такое сказал? Мвс - это парадигма, а не четкое указание. Вид может работать со множеством моделей управляемых контроллером = это уж точно, а вот как оно организуется это вопрос другой, я предложил свой вариант, вот интересно, так делают или нет.
Цитата:
2. вся прелесть MVC в том что view заменимый, по сути приложение должно продолжать нормально функционировать даже если, в данный момент, у него нету вью совсем, или наоборот есть больше чем один вид.
Опять нет. Как может быть приложение без вида? Может да - на java сервере например. Но если приложение основывается на виде, флеш - это вид, а не логика в чистом виде.

Цитата:
3. в классическом MVC, контроллер не должен управлять видом напрямую.
см. п.1. Нету класического и не класического МВС
4. Понятно собственно , так я и думаю.
__________________
Марк Tween

Старый 12.04.2012, 18:14
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
in4core,
Цитата:
1. если модели две то это будет уже не MVC
Поддерживаю. Вложенные модели — да. Две базовых модели — нет.
Цитата:
2. вся прелесть MVC в том что view заменимый, по сути приложение должно продолжать нормально функционировать даже если, в данный момент, у него нету вью совсем, или наоборот есть больше чем один вид.
Истинная правда. MVC специально отделяет всю логику от отображения.
Цитата:
3. в классическом MVC, контроллер не должен управлять видом напрямую.
Тоже верно. Однако люди как правило стараются адаптировать MVC под себя, внося в него всякие всякости.
__________________
тут я

Старый 12.04.2012, 18:15
Dukobpa3 вне форума Посмотреть профиль Отправить личное сообщение для Dukobpa3 Найти все сообщения от Dukobpa3
  № 5  
Ответить с цитированием
Dukobpa3
 
Аватар для Dukobpa3

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Цитата:
Это кто такое сказал?
Цитата:
Опять нет.
Цитата:
см. п.1. Нету класического и не класического МВС
Сам спросил, сам ответил, норм, че.
А что узнать то хотел?

И таки да, классическое МВЦ есть. Можно хотя бы вики открыть по этому поводу.
И мне глубоко пофигу на кол-во моделей у одной вьюхи, но всё-таки больше склоняюсь к тому чтобы наоборот у одной модели было несколько вьюх.
И да, часто сам отрисовываю данные не сохраняя их в модели, но в таком случае этот кусок не является парадигмой мвц, хотя вцелом и не мешает глобальной архитектуре. К примеру нафига мне в общей архитектуре учитывать всякие хинты и алерты, они могут стоять отстраненно.
__________________
Кто к нам с чем для чего - тот у нас того от того.


Последний раз редактировалось Dukobpa3; 12.04.2012 в 18:26.
Старый 12.04.2012, 18:31
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 6  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
Сам спросил, сам ответил, норм, че.


Цитата:
И таки да, классическое МВЦ есть.
Правильнее называть v.1.0 скорее) потому что этот паттерн придумал некий человек, а мы его под себя адаптируем.

Цитата:
Истинная правда. MVC специально отделяет всю логику от отображения.
Чей то ты санятка не в тему , я и не говорю, что логика должна быть в отображении. причем тут это вообще?!

Цитата:
И да, часто сам отрисовываю данные не сохраняя их в модели, но в таком случае этот кусок не является парадигмой мвц, хотя вцелом и не мешает глобальной архитектуре.
Значит я все верно понял, вполне нормальная практика.

Цитата:
Поддерживаю. Вложенные модели — да. Две базовых модели — нет.
Идейно чем отличается вложенная модель и основная от двух основных ? Все равно контроллер работает с этими моделями...пффф yao ming)
Да и зачем нужна вложенная когда можно просто сделать поля класса...

Цитата:
но всё-таки больше склоняюсь к тому чтобы наоборот у одной модели было несколько вьюх.
Так собственно я против ничего не имею, так же поддерживаю. Но ни раз было обсуждение на форуме, когда многие говорили - а если у вида много моделей?! - ( в каком контексте не важно, строчка была такой )
__________________
Марк Tween

Старый 12.04.2012, 18:33
Dukobpa3 вне форума Посмотреть профиль Отправить личное сообщение для Dukobpa3 Найти все сообщения от Dukobpa3
  № 7  
Ответить с цитированием
Dukobpa3
 
Аватар для Dukobpa3

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Цитата:
Значит я все верно понял
Ага, ок.
Выхватил одну фразу из трех ответов, которая больше всего понравилась, и молодец.
фейспалм.жпг

Добавлено через 2 минуты
Тебе сюда: Хорошее МВЦ
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 12.04.2012, 18:45
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 8  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
Чей то ты санятка не в тему , я и не говорю, что логика должна быть в отображении. причем тут это вообще?!
К тому, что приложение может работать без вьюхи.
Цитата:
Идейно чем отличается вложенная модель и основная от двух основных ?
Иерархической структурой и количеством передаваемых в конструкторы параметров.
__________________
тут я

Старый 12.04.2012, 18:46
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 9  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
То, что описывает in4core это скорее MVP, и да - это тоже MVC.
Моделей тоже может быть сколько угодно
Контроллер может управлять видами. Я так делал рендереры. Раз в кадр рендерер читает модель и если она поменялась даёт команды исошным вьюшкам перерисоваться или сам их перерисовывает. Другое дело, что рендерер является контроллером только по отношению вложенных видов, которые он рисует. Если смотреть ширее - это вид всей сцены.
__________________
Отряд Котовскага

Старый 12.04.2012, 18:48
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 10  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
То, что описывает in4core это скорее MVP
Котяра расскажи подробнее, и если тебе не сложно ответь на мои вопросы заданные в теме, я думаю ты шаришь в этом хорошо
__________________
Марк Tween

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

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

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


 


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


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