![]() |
почему не использовался стандартный евентдиспатчер?
и зачем вообще писать его в таком виде? чем вас не устроили обычные методы? |
а в каком виде его надо было написать? )))
стандартный евентдиспатчер никуда не делся, для внутриклассовых собшений он остается. этот класс позволяет гонять события наружу - не задумываясь о том что и кто будет с ними делать. раньше что бы что-то вызвать в JS надо было знать названия функций - теперь это вообще не обязательно JS сам подписывается, сам отписывается, сам генерит события. Это мегаудобно, и мне и яваскриптеру. |
так чем вас не устроил интерфейс IEventDispatcher ? зачем изобретать велосипед, с квадратными колёсами?
|
а при чем тут IEventDispatcher, ведь если его использовать, у меня код многократно усложнится!?
Мне хотелось бы увидеть пример... Я не говорю что мой класс идеален, но, повторюсь, альтернатив еще не видел ни с квадратными колесами ни с круглыми ) |
ALiEN_, по-моему штучка полезная.
А можете выложить исходники простенького примерчика, чтобы нагляднее было? |
да полно альтернатив :) просто найти надо :)
использование вашего класса несёт под собой несколько проблем: 1. я НЕ использую его как встроенный EventDispatcher, хотя он выполняет туже функцию. 2. нету типизации, используются динамические объекты. 3. отсутствуют слабые ссылки. прозрачность работы достигается не тем, что у вас мало кода написано, а тем что сторонний разработчик не должен изучать подозрительные махинации с вашими методами. |
BlooDHounD
ну где же? я не нашел. честно отписался вначале темы, что сначала искал, но может плохо. вобщем если поделишься альтернативой, буду благодарен. )) 1. он совсем не EventDispatcher в этом и разница. Он много шире - мостик между JS и AS событиями. EventDispatcher остается только для внутриклассовых событий, хотя можно, безусловно и использовать только мой класс и он справится на ура. 2. тут никуда не деться, ведь в JS все является объектами. И как раз только благодаря этому получилось этот класс написать. 3. Слабые ссылки? a зачем здесь слабые ссылки? в какое место их прикрутить )) где тут подозрительные маханации? )) Что под этими махинациями имеется ввиду? teebooter, сегодня выложу полноценный пример, надеюсь будет время. |
ALiEN_, прозрачно — это когда я могу написать dispatchEvent(new MyCustomEvent(MyCustomEvent.CUSTOM_EVENT)) и оно будет получено в JS.
А то что вы написали ни в какие ворота. Есть стандартная схема событий, вы зачем-то придумали свою, не вписывающуюся ни в какие стандарты. |
Цитата:
Цитата:
Цитата:
Цитата:
и по существу ... прозрачность, это когда человек не должен адаптироваться к новым инструментам. если я делаю заявку на прозрачность, то я инкапсулирую весь код внутри класса, а не пытаюсь вынести на ружу свои кривые реализация внутренней механики. |
вот вам пример моей упращённой реализации прозрачной работы с ExternalInterface,
Код:
package by.blooddy.platform.external {самое главная демонстрация этого кода, это то, что разработчик не парится про проверки на avaible и добавления колбэков. это называется прозрачная работа. лежит яваскрипт, или C# приложение, разработчику наплевать: он уверен, что класс родитель справился со своей задачей на ура. |
| Часовой пояс GMT +4, время: 00:47. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.