| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Оптимизация программ |
| Автор: batigoal 15.3.2005, 11:53 | ||
| Я помню, что "один топик - один вопрос", но все же: 1. Что входит в понятие оптимизации программы? 2. Как это делается (не на уровне байткода)? Я слышал, что многие компиляторы (не джавовские) выполняют некоторые оптимизирующие действия, например, в коде:
самостоятельно вынесут "int i;" за пределы цикла. Делает ли что-нибудь подобное javac? |
| Автор: Domestic Cat 15.3.2005, 12:02 | ||
| http://forum.vingrad.ru/index.php?showtopic=35700&hl=%EE%EF%F2%E8%EC%E8%E7%E0%F6%E8%FF http://forum.vingrad.ru/index.php?showtopic=24799&st=0
Делает. И JIT делает. |
| Автор: batigoal 15.3.2005, 12:48 |
| Пардон, не заметил этих тем. Полезно. |
| Автор: batigoal 15.3.2005, 16:02 |
| Пойду исправлять Vector'ы на ArrayList'ы. |
| Автор: NotGonnaGetUs 16.3.2005, 12:20 | ||||||||
Прочитал что там написано и сходил по ссылкам. Интересно, это
действительно работало в java1.1 эффективнее, чем это
? Второй вариант работает в 5,5 раз быстрее в client mode, а сервер mode совсем конец света
Короче говоря, надо с юмором относится к некоторым рекомендациям. Таким как выше приведённая, "String.equalsIgnoreCase() быстрее String.equals()" и т.д. |
| Автор: Domestic Cat 17.3.2005, 06:55 | ||
Я в это не вникал, если честно. Все эти оптимизации хороши там где надо, в частности в играх; в обычных приложениях лучше писать красивый код. Так, я бы try-catch не пользовал в любом случае, т.к. он там ни к селу, ни к городу. equals пользовал бы наиболее подходящий. Хотя про equals - лажа, достаточно в сорец глянуть. |