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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 23.11.2013, 00:55
Dukobpa3 вне форума Посмотреть профиль Отправить личное сообщение для Dukobpa3 Найти все сообщения от Dukobpa3
  № 1  
Ответить с цитированием
Dukobpa3
 
Аватар для Dukobpa3

блогер
Регистрация: Oct 2010
Адрес: Киев
Сообщений: 1,678
Записей в блоге: 12
Отправить сообщение для Dukobpa3 с помощью Skype™
По умолчанию Крик души о ТДД во вью

Собственно на сервере использую, нравится. Там по сути только модель и команды, главное проследить чтоб в модель попали нужные данные, и чтоб после обработки они были правильно отформатированы. Всё.

Теперь клиент. Архитектура мвц.
Пишу максимально инкапсулировано. Ну т.е. Я люблю всякие там статик манагеры для доступа к пулу вью, моделей и прочих одноранговых плюшек, но каждый объект выдает наружу только ивенты + парочку или вообще без паблик методов.

Так вот.
Тестируем модель. Ну тут ок. Как сервер. На фход скормили данные, проследили чтоб математика правильная была, всё круто.
Следующим тестом проверяем чтоб по таким-то изменениям были такие то диспатчи. Асинхронные тесты в помощь, но в целом не сложно.

Теперь контроллер.
Всё немного сложнее. В модель мы кормили данные, в контроллер же скамливаем какую-то мок-вью, через нее диспатчим, следим чтоб контроллер как-то реагировал. Усложняется тем что реакция контроллера выражается в вызове паблик метода модели. Т.е. ему нужно мок-вью, которая умеет спамить клики + мок модель, которая умеет слушать коллбеки. Но ладно, разобрались.

Теперь беремся за вью и тут опа.
Во-первых рендер инкапсулирован, запускается по событию из модели.
Т.е. рендер как-то кошерно проверить не получится. Только с моками, но это будет не точный тест.
Во вторых рендер занимает время, если с анимациями и прочим. И еще и зачастую вконце анимации должен полететь какой-то ивент.
Получается два асинхронных теста в одном, а это уже даже не то что контроллер с одним, это целая шляпа.

//**************************************
Короче пыжусь вот я со вьюхами но никак ни к чему не пришел внятному. В хаксе более менее проканывает, потому что там после компиляции все приваты становятся пабликами, так что могу чуть ли не насквозь всё смотреть.

В ас3 и инкапсуляцию нарушать неохота, но и танцевать вокруг событий с двух сторон как-то слишком сложно получается.

//**************************************
Вот и интересно как кто чего в этом плане делает.
__________________
Кто к нам с чем для чего - тот у нас того от того.

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

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

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


 


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


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