|
|
|||||
.
|
Вероятно, я не до конца понял суть вопроса.
|
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Понятно.
Лично у меня достаточно часто дизайн уже собран и мне приходится доставать SimpleButton по getChildByName. У меня нет возможности привести SimpleButton к CustomSimpleButton (во всяком случае не создавая обёрток и прочего, что в 9 из 10 случаев излишне), поэтому Dictionary для меня панацея.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Это не проблема )
Просто я же говорю, в 9 из 10 случаев SimpleButton справляется лучше некуда. Незачем жирафу когти растить )
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Цитата:
Или один я, идиот, так делаю, а есть какой-то более прозрачный и "правильный" способ? |
|
|||||
.
|
Цитата:
private var _buttonIndex: uint; function обработчик(event:Event):void { if (event.eventPhase !== EventPhase.AT_TARGET) return; const button:InteractiveObject = event.target as SimpleButton; if (button.tabIndex == 0) button.tabIndex = ++this._buttonIndex; trace( button.tabIndex /* as внутрифизический_id */ ); } private var _buttonIndex: uint; function обработчик(event:Event):void { if (event.eventPhase !== EventPhase.AT_TARGET) return; const button:DisplayObject = event.target as SimpleButton; if (button.name.indexOf('instance') != -1) button.name = uint(++this._buttonIndex).toString(33); trace( button.name /* as внутрифизический_id */ ); } Последний раз редактировалось dimarik; 02.03.2011 в 00:10. |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Димка, вот я программирование в 12 лет полюбил именно за то, что здесь можно придумать 40 разных способов реализовать задачу, один краше другого. Всякие геометрии, физики и прочее мне не нравились своей "сухостью". Ну нашли мы длину катета, ну и что? А вот когда начал серьезно увлекаться программированием появилась любовь и к геометрии, и к матану, и к физике...
Конечно, можно обходиться без Dictionary в любой ситуации. Можно даже обходится без if/switch, делая всё тернарным ?. Но стоит ли? В твоём примере tabIndex может использоваться по назначению. К тому же он паблик. Что же это, кто-то используя мой класс и поменяв таб-индекс у кнопки поломает всю мою программу? Или мне перекрывать getChildByName, getChildAt, останавливать распространение Event.ADDED и всё такое? Похожая ситуация и с name. Только названия мы даём более-менее осмысленные, нести какие-то метафизические свойства в нём как-то не очень. Проще говоря, я нашел как минимум одно: здоровая инкапсуляция с отсутствием "лишних" сущностей. А какие у тебя против? Добавлено через 5 минут P.S. вспомнил тут. Когда не умел делать наследования и всё такое, стояла задача передать число в обработчик. Были мысли воспользовать transfom#Matrix#a,b... — типа когда меняются всё равно ничего не происходит (я не обновлял, просто менял), а число прилетает. Вот из этой же серии.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Ни разу в жизни не использовал Dictionary, кроме тестовых программ, для теста его же самого.
Не горжусь и не стыжусь =)
__________________
Сам себе репортер |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Я ни в коем случае не пропагандирую его использование =)
Я пропагандирую отказ от плясок с бубном с целью показать, что в принципе и без него можно. Может, дело вкуса.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Цитата:
Добавлено через 3 минуты По сабжу, по-моему я как то предвзято стал относиться к использованию Dictionary после тестов подобных вашим.
__________________
Сам себе репортер |
Часовой пояс GMT +4, время: 05:32. |
|
« Предыдущая тема | Следующая тема » |
|
|