Показать сообщение отдельно
Старый 27.06.2011, 07:20
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 14  
Ответить с цитированием
goodguy
Banned

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Смысл не в скорости, т.как по скорости нужно оптимизировать, когда это критично. Смысл в том, что когда вы компилируете X.Y - компилятор проверит, и выдаст ошибку, если у объекта X нет свойства Y. А когда вы X[Y] - это называется reflection - т.е. вы используете возможность среды выполнения найти по заданному строковому ключу свойство объекта. Естесственно, это будет не надежно (т.как вы можете сделать ошибку в имени свойства, т.как кто-то может после компиляции переиначить таблицу символов - место в котором среда выполнения будет искать соответствие ключа и свойства), ну и понятное дело, будет медленнее, т.как, даже не смотря на то, что флешевый компилятор - не оптимизирующий, при создании имен во время компиляции он может использовать более или менее жесткие правила. Менее жесткие правила требуют впоследствие от среды выполнения больше работы для нахождения свойства.
Странно. У меня компилятор не выдает никаких ошибок, даже если я пытаюсь ему подсунуть свойство, отсутствующее в объекте. И если попытаться оттрейсить такое свойство, просто выдаст null, и не более.