![]() |
|
||||||||||
|
|||||
|
try вообще лучше не использовать там, где можно обойтись без него.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Цитата:
? Коды возврата, C-style?Ну и скриншот из второго поста, как бы говорит что это не тот случай, когда можно обойтись . Хотя я до сегодняшнего дня даже и не знал, что flash.media::Sound/play может выбросить исключение. |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 890
|
а я иногда использую исключение, когда надо быстро выйти из n-вложенной ф-ии (не в смысле, что она определена в другой, а та в третьей и т.д., а в том, что одна вызывает другую, та третью и т.д.) и на нужном уровне перехватываю исключение.
__________________
скриптограф |
|
|||||
|
Цитата:
![]() |
|
|||||
|
Try нужно использовать, но к месту. Например, насколько я помню, была такая ситуация, что нужно сохранение > 100КБ в шаредОбжект сделать.
Выяснить, установил ли пользователь размер шареда в настройках флеша на >100Kb можно было только через трай\кетч, при этом в трае был so.flush(), а в кетче вызывалось окно System.showSettings(1);.. Как то так примерно В остальных случаях try почти бесполезен, как правило |
|
|||||
|
Цитата:
orcpochta, то что вы сказали называется стек. То что вы делаете - называется хрень, RTE созданы для ошибок, а не для штатных ситуаций. Если вы предполагаете, что у вас в штатной ситуации должно вызваться RTE - у вас явно проблемы с архитектурой. С вами и вашим кодом с такими подходами я бы работать не захотел.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Еще раз, flash.media::Sound/play может выбросить исключение, не могу представить как это получилось, но факт. Стало быть обернуть play в try/catch и есть то самое использование к месту. Я полагаю, что когда вы писали свой первый пост в этом топике, то просто не знали об этом, впрочем, я вот тоже не знал. Остальные play обернуты по причине того, что звуки в игре ассоциированы со строками, т.е. что-то в духе SoundManager.plya(sound_name), а собственно flash.media::Sound создается посредством getDefinition, который может выбросить исключение в случае ошибочного sound_name. Так что делать заключения о том хороший кодер или плохой кодер на основании минимальной информации на форуме делают вас не очень хорошим HR
. Последняя фраза шутка, если что.Добавлено через 3 минуты Цитата:
.Добавлено через 12 минут Цитата:
Напишите простой тест производительности, откроете для себя много нового . |
|
|||||
|
Цитата:
Цитата:
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 890
|
Psycho Tiger, smrad, я не соглашусь с вами.
На живом примере: есть лабиринт, который надо обойти, событие "выход найден" возникает раз за несколько сот-тысяч "шагов" в зависимости от размера лабиринта, при этом надо обязательно вернуться на несколько уровней выше, чтобы продолжить стандартные схемы движения, но уже в направлении выхода. Если бы не возможность выбросить ошибку, мне бы пришлось в каждом надметоде определятьне вернул ли вложенный ниже метод нечто, сигнализирующее, что лабиринт найден. В итоге в зависимости от глубины вложенности мы имеем n дополнительных проверок, помноженных на несколько сот-тысяч шагов. Ну и зачем мне это надо?
__________________
скриптограф |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:19. |
|
|
« Предыдущая тема | Следующая тема » |
|
|