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

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Котяра, мне лично их реализация не нравится. Сущностей много, смысла - мало.
Тем более, что у них есть вещи типа:
Код AS3:
public interface ICommand {
    function execute():*;
}
В моем понимании есть 2 вида действий:
1) Команда - меняет данные, не возвращает результат (ее результат - это смена данных)
2) Вычисление (Computation) - не меняет данные, возвращает результат (пробегается по данным и вычисляет то, что нужно)

И то, и другое может быть как синхронным, так и асинхронным. По крайней мере мы такой подход воплотили и он показывает себя неплохо. Хотя, конечно, это мало имеет отношения к "mvc", скорее только к "c". А as3-commons - это, на мой взгляд, очень over-engineered-штуковина
__________________
...вселенская грусть

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

Регистрация: Oct 2012
Адрес: Hamburg
Сообщений: 22
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
...Сущностей много, смысла - мало. ...
....очень over-engineered-штуковина
Я полностью с вами согласен.

Я работаю с очень большими проектами(PirateStorm), и мне трудно представить себе практическое использование для этой библиотеки...

Цитата:
Сообщение от Котяра Посмотреть сообщение
Спасибо за линк. Я именно этого просил.

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

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Цитата:
Я полностью с вами согласен.
и
Цитата:
Спасибо за линк. Я именно этого просил
Взаимоисключающие параграфы?

Я использую эту библиотеку.
Немножко допилил (вернее просто добавил в конструктор конкретных команд параметр - контекст)
по сути - это модель, но иногда удобнее просто выделить кусочек в отдельную сущность.
самый простой случай
типа context - > {xml:XML, model:Model};
Код AS3:
var context:Object = {xml:XML, model:Model}; // я использую типизированные контексты, но для примера пусть будет объект
var compositeCommand:CompositeCommand = new CompositeCommand(ComposeiteCommandKind.SEQUENCE);
 
compositeCommand.addCompleteListener(onComplete);
compositeCommand.addErrorListener(onError)
 
compositeCommand.
addCommand(new LoadXMLCommand (url, context)). // грузит xml по урлу и помещает его в context.xml
addCommand(new ParseConfigXMLCommand(context)). // парсит  context.xml и помещает его в объект context.model
addCommand(new PrepareModelCommand(model, context)). // передаёт данные из context.model в model 
//(например просто тупо копирование значений, но может быть и другое использование (сравнение, добавление)
execute();
Кроме того там есть ветвления, таски, операции и ещё куча всего и фрэймворк малосвязный, если не использовать таски, а только команды - таски и не попадут в итоговый swf.
__________________
Отряд Котовскага


Последний раз редактировалось Котяра; 01.11.2012 в 14:42.
Старый 02.11.2012, 16:42
Deril_AS3 вне форума Посмотреть профиль Отправить личное сообщение для Deril_AS3 Найти все сообщения от Deril_AS3
  № 14  
Ответить с цитированием
Deril_AS3
 
Аватар для Deril_AS3

Регистрация: Oct 2012
Адрес: Hamburg
Сообщений: 22
Цитата:
Сообщение от Котяра Посмотреть сообщение
Взаимоисключающие параграфы?


не обязательно пример должен нравится чтобы узнать полезные вещи из него.


Цитата:
Сообщение от Котяра Посмотреть сообщение
Кроме того там есть ветвления, таски, операции и ещё куча всего и фрэймворк малосвязный...
Я понимаю о чем вы говорите... но лично я люблю использовать utility/tools классы для этой работы.
Эти утилиты уже дают хороший уровень абстракции.

Добавлено через 5 часов 9 минут
Так, больше тест результатов!!!

сценарий:

- send a message;
- execute command with dependencies;

результат:
-Сколько одно действие стоит - ms/1 run
-Сколько действий вы можете сделать в 1 миллисекунду - runs/1ms


mvcExpress testing: [DEBUG PLAYER. WIN 11,2,202,235]
Command with nothing: 0.00169 591.72
Command with 1 inject: 0.00203 492.61
Command with 2 injects: 0.00246 406.50
Command with 4 injects: 0.00314 318.47
Command with 8 injects: 0.00502 199.20
Pooled Command with nothing: 0.00133 751.88
Pooled Command with 1 inject: 0.00126 793.65
Pooled Command with 2 inject: 0.00129 775.19
Pooled Command with 4 inject: 0.00131 763.36
Pooled Command with 8 inject: 0.00132 757.58

PureMVC testing: [DEBUG PLAYER. WIN 11,2,202,235]
Command with nothing: 0.00403 248.14
Command with 1 inject: 0.00485 206.19
Command with 2 injects: 0.005 200.00
Command with 4 injects: 0.00542 184.50
Command with 8 injects: 0.007 142.86

RobotLegs testing: [DEBUG PLAYER. WIN 11,2,202,235]
Command with 0 inject: 0.013 76.92
Command with 1 inject: 0.01902 52.58
Command with 2 injects: 0.02356 42.44
Command with 4 injects: 0.03206 31.19
Command with 8 injects: 0.04979 20.08


mvcExpress очень быстро работает с command pooling!

Старый 05.11.2012, 12:37
terbooter вне форума Посмотреть профиль Отправить личное сообщение для terbooter Найти все сообщения от terbooter
  № 15  
Ответить с цитированием
terbooter

Регистрация: Oct 2006
Адрес: Novosibirsk-Kaliningrad
Сообщений: 1,278
Отправить сообщение для terbooter с помощью ICQ Отправить сообщение для terbooter с помощью Skype™
Не вытерпел активного маркетинга
Пойду пробовать mvcExpress

Старый 06.11.2012, 13:29
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 16  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
а можно узнать за счет чего в mvcExpress такая скорость достигается? понятно, что в ответ на этот вопрос можно исходники выложить, но все таки, в 2-х словах.

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

Регистрация: Oct 2012
Адрес: Hamburg
Сообщений: 22
Цитата:
Сообщение от terbooter Посмотреть сообщение
... Пойду пробовать mvcExpress
круто!

больше результатов - http://mvcexpress.org/fastest/

Цитата:
Сообщение от PainKiller Посмотреть сообщение
а можно узнать за счет чего в mvcExpress такая скорость достигается?
меньше функций, меньше классов, меньше кода.

это статистика кода для mvcExpress 1.3. (без debug кода/классов)



21 класс(1 static класс), 2.484 кода - это немного.

Цена - труднее работать с этим кодом. mvcExpress код игнорирует OOP design paterns чтобы получить большую скорость

Но я использую много unit tests. Так что все хорошо.


Последний раз редактировалось Deril_AS3; 06.11.2012 в 21:32.
Старый 07.11.2012, 12:02
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 18  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
Цитата:
mvcExpress код игнорирует OOP design paterns
то есть получается что у вас нет такой "изоляции зависимостей" как в тех же pureMVC и robotlegs? Это конечно очень большой минус.

Старый 07.11.2012, 14:36
Deril_AS3 вне форума Посмотреть профиль Отправить личное сообщение для Deril_AS3 Найти все сообщения от Deril_AS3
  № 19  
Ответить с цитированием
Deril_AS3
 
Аватар для Deril_AS3

Регистрация: Oct 2012
Адрес: Hamburg
Сообщений: 22
Цитата:
Сообщение от PainKiller Посмотреть сообщение
то есть получается что у вас нет такой "изоляции зависимостей" как в тех же pureMVC и robotlegs? Это конечно очень большой минус.

Конечно изоляции зависимостей существует, это MVC фреймворк.

Я говорил о внутреннем mvcExpress коде, и почему это работает быстрее.

Добавлено через 6 минут
Цитата:
Сообщение от Deril_AS3 Посмотреть сообщение
mvcExpress код игнорирует OOP design paterns.
...не программы написанных с mvcExpress.

Старый 07.11.2012, 16:40
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 20  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
понятно, спасибо за информацию, в любом случае плюсую :-)

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

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

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


 


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


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