![]() |
Добавление пользовательских свойств не наследуясь
Например я создаю экземпляр Sprite.
Код:
var s:Sprite = new Sprite();Код:
s.test = new Object();Идея в том что мне нужно хранить кое-какое значение в экземпляре, но не хочу для этого создавать подкласс. Это не сложно, но такая ситуация встречается довольно часто, не хочется чтобы накапливались мелкие файлы подклассов. |
Нет, не можете. Sprite не является динамическим классом. Но вы можете написать наследника Sprite и объявить его динамическим.
|
Вместо Sprite можно использовать MovieClip.
Однако динамикой увлекаться опасно. |
Ясно, спасибо.
|
Если не знаешь ООП, лучше выучи, в жизни пригодиться....Как я прочел в одной умной книге "К сожалению, основы объектно-ориентированных языков остаются за рамками этой книги, поэтому те, кто считает, что ООП — это Организация Освобождения Палестины, могут на этом этапе почитать дополнительную литературу" :)
|
А из какой ноты следует что я не знаю ООП?
|
Цитата:
|
2Mr. Fixit:
значит большое количество мелких подклассов это хорошо структурированный код? |
да :)
Все присутсвует, и все видно, и не надо гадать при просмотре кода через пару месяцев. И это, можно примерчик вашего "мелкого" класса? |
Порождение мелких подклассов это как раз очень плохая практика.
|
Я выслушал ваше мнение, но могли бы вы, всетаки, привести пример вашого мелкого класса?
|
у меня таких и нет =)
|
Цитата:
|
Потому что это очевидно =) Немного конечно не в тему, поднятую автором, но могу предложить почитать пример как правильно и красиво можно избавиться от порождения ненужных классов http://yarovoy.com/2007/08/30/prototype_design_pattern/
|
Лушче использывать мелкие классы, но разумно(это ессно).
Цитата:
Я, лично рассматриваю проблему под разными углами. Имхо, подход через шаблон Прототип мне не нравится. |
Прототип особенно хорош в играх когда множество "врагов" или "препятствий" описано одним классом, а не множеством однотипных. Что касается необходимости в мелких классах она есть, те же dto например, но речь шла изначально о другой проблеме - о нежелании создания множества мелких подклассов ради наделения их какими-то дополнительными свойствами. И в этой ситуации порождение такого множества и есть плохая практика.
|
Цитата:
|
Цитата:
|
и?
Конечно круто начать нести какой-то спам, чем прийти совместно к более правильному решению, но дело ваше :D Кста пример: Код:
... |
Цитата:
Цитата:
|
Ы) Ну я в процессе нашего диалога пришел к более правильному подходу в рамках данной задачи, да опровергнул и я рад, что прогрессирую)
А че? :cool: :D |
Просто именно к этому и я пытался подвести нашу дискуссию
|
Ну вы постарались, спасибо. :drinks:
|
Да, типа такого, чтобы добавить поле test к Sprite:
Код:
package objects |
| Часовой пояс GMT +4, время: 12:29. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.