|
|
|||||
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
|
У меня тогда наверное уже совсем наивный вопрос. А когда вообще уместно использование констант экземпляров и уместно ли? Получается, что если возникает необходимость что-нибудь "отлить в граните" даже для использования экземпляром, то проще и правильнее создать константу на уровне класса как статическую. Или нет?
|
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Публичных? Ни разу не встречал, ибо это бессмыслица.
Константа это то, что задается один раз. Соответственно, она не может быть разной у разных экземпляров, так как объявляется в теле Класса. Тогда какой смысл хранить ее в экземплярах, если она не может быть индивидуальной "экземпляровской"?
__________________
Reality.getBounds(this); |
|
|||||
Цитата:
Ещё есть устверждение, что обращение к константам проиходит быстрее, чем к переменным. Я встречал такое на некоторых форумах, особенно по JS, где есть куча любителей использовать const вместо var или let там где это вообще возможно. Но как по мне, так это довольно сомнительное утверждение, и лично я использую константы всегда только как статики. А если бы в as3 были enum'ы, то использовал бы их
__________________
Ко мне можно и нужно обращаться на ты) |
|
|||||
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
|
Wolsh, caseyryan, спасибо. Исчерпывающе.
Добавлено через 1 минуту Вот именно эта мысль и стала причиной озвученного изначально вопроса. |
|
|||||
Lorem ipsum
|
Цитата:
__________________
Поймай яблоко 2! |
|
|||||
Регистрация: Oct 2015
Сообщений: 32
|
Кроме того, статики выносят отдельным классом для логического объединения однотипных объектов.
Пример: в классе MouseEvent собраны события CLICK, MOUSE_OVER и тд. Затем этот класс группируется в пакет events с аналогичными классами: KeyboardEvents, TextEvent.. помимо специфичных методов и свойств, у каждого из них общий признак - хранение событийных констант. Иначе, если хранить константы CLICK, MOUSE_OVER в классе Mouse, что логически приходит на ум, тогда мы смешиваем котлеты и мухи. Так как класс Mouse задуман для манипуляций курсором мыши, его вынесли в пакет ui, события отделяются в свою логическую группу. Вся эта детализация приходит с возрастанием сложности проекта и построение "правильной" структуры, тоже не простая штука.. |
Часовой пояс GMT +4, время: 09:57. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|