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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.08.2013, 22:35
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 141  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
KumoKairo Спасибо за разъяснения! Тогда вопрос для закрепления темы -
Контроллер имеет ссылки и на модель и на вью.
Контроллер напрямую меняет модель.
Модель по изменению диспатчит вью.
Вью диспатчит контроллеру.
Контроллер не касается вью.
Модель не касается контроллера.
Где мои ошибки?

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

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Контроллер может менять вью, контроллер может напрямую менять модель.
Но модель должна быть максимально инкапсулирована от контроллера. Т.е контроллер к примеру имеет доступ только к одному паблик методу модели fillData() - он может его дернуть и модель сама себя обновит оттуда откуда сама знает.
Контроллер может при необьходимости что-то напрямую дернуть во вью, хотя бы те же show()|hide() - но такое влияние контроллера на вью нужно свести к минимуму,если не искоренить полностью.

В остальном да, всё верно. К тому что ты описал нужно стремиться, на практике не всегда аж так идеально получается, но таки да - это и есть идеальная картинка.
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 09.08.2013, 22:44
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 143  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
это и есть идеальная картинка.
Аллилуйя!!)

Добавлено через 3 минуты
Dukobpa3 Дело в том,что Ваши слова, слова Wolsh и многие страницы тем о этом патарне я интерпретирую так, как написал выше. Но остальных я в упор не понимаю.

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

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
Цитата:
Аллилуйя!!)
Важно чтоб ты понимал что значит "напрямую меняет модель".
Да, контроллер имеет доступ к паблик методам модели. Но их должен быть минимум.
Напрямую меняет модель это не: model.counter += 1. Это model.parseDataFromServer(data). А модель уже сама распарсит и сама разберется что в этом месте надо сделать counter += 1, а вот здесь dispathEvent(ModelEvent.CHANGE)

Добавлено через 1 минуту
Это и будет называться "логика в модели". Все цифры в модели. Контролер не понимает откуда берется +=1 или -=1. Контроллер просто знает что "поступили новые данные, модель должна обновиться."
__________________
Кто к нам с чем для чего - тот у нас того от того.

Старый 09.08.2013, 22:55
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 145  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
Важно чтоб ты понимал что значит "напрямую меняет модель".
Мне кажется, что для ограничения контроллера, как нельзя лучше подходят интерфейсы.
Цитата:
но такое влияние контроллера на вью нужно свести к минимуму,если не искоренить полностью.
Вот я так и понял все прочтённое.

Добавлено через 38 секунд
Мне вообще очень понравились интерфейсы.

Старый 09.08.2013, 22:57
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 146  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Контроллер передает Модели пожелания пользователя))) Не "положи этот Бэнтли в корзину", а "юзер хочет положить этот Бэнтли в корзину". А может ли юзер себе это позволить, и — окажется ли в корзине еще один Бэнтли — это уж модель сама решит.

p.S. Котейка, а зачем модель диспатчит что-то для Вью через контроллер? Без него никак что ли?
__________________
Reality.getBounds(this);

Старый 09.08.2013, 22:59
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 147  
Ответить с цитированием
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
И я не в коем случаи не хочу, чтобы Babylon подумал, что его слова о реже использовать я принил как лженауку. Нет, он мне кажется просто грубо выражается и описывает то, что как по словам цитированными мной в этой теме - интерфейсы начинают использовать на право и на лева.
Но это такое искушение)

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

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

Старый 09.08.2013, 23:01
Babylon вне форума Посмотреть профиль Отправить личное сообщение для Babylon Посетить домашнюю страницу Babylon Найти все сообщения от Babylon
  № 149  
Ответить с цитированием
Babylon
[+1 25.10.13]
[+4 18.03.14]
 
Аватар для Babylon

Регистрация: Jan 2006
Адрес: Москва, Зеленоград
Сообщений: 653
Отправить сообщение для Babylon с помощью ICQ
Котейка, Уолш и так мелко разжевал. У Вас мельче не получится.

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

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

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

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

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


 


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


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