Я бы оставил преждевременную оптимизацию в стороне.
«Преждевременная оптимизация - корень всего зла» - Дональд Кнут
В первую очередь вы должны пойти на ремонтопригодность. Группируйте их так, чтобы это имело больший смысл с учетом логической структуры кода (например, группировка связанных операторов вместе).
Если вы позже определите, что производительность является проблемой, попробуйте измерить что-то вроде профилировщика, чтобы увидеть узкие места. Скорее всего, это не там. Из полного кода 2:
Барри Бём сообщает, что 20 процентов
подпрограммы программы потребляют 80
процент времени его выполнения. В его
классическая статья "Эмпирическое исследование
Фортран Программы, "Дональд Кнут найден
что менее четырех процентов
Программа обычно составляет более
50 процентов времени выполнения.
Мы не должны пытаться угадать, где оптимизировать, до того, как это необходимо, поскольку большинство из нас действительно плохо угадывают, где находится эта медленная часть нашего кода. Программисты, которые оптимизируют работу, также тратят около 96% своего времени на оптимизацию кода, который не нуждается в оптимизации. Другая вещь, которую следует принять во внимание, заключается в том, что настройка кода (как в этом примере) учитывает компромисс между удобочитаемостью и удобством сопровождения для производительности:
Сосредоточение на оптимизации во время
начальное развитие умаляет
достижение других целей программы.
Разработчики погружаются в
алгоритм анализа и загадочные дебаты
что, в конце концов, не вносит большой вклад
значение для пользователя. Проблемы, такие как
правильность, сокрытие информации и
удобочитаемость становится вторичной целью,
хотя производительность легче
улучшить позже, чем эти другие
проблемы есть. Спецпредложение
работа, как правило, затрагивает менее пяти
процент кода программы. Не могли бы вы
вернитесь назад и сделайте работу
на пять процентов кода или
читабельность работы на 100 процентов?
Я не говорю, что не оптимизировать , но оптимизировать код только в конце , когда вы обладаете роскошью большого изображения и инструментами, чтобы указать вам правильное направление.
ДОПОЛНИТЕЛЬНО: Чтобы ответить на вопрос о самой производительности, хотя:
Этот ["выключающий" код] хорош для экономии времени примерно на 20 процентов:
Language Straight Time Code-Tuned Time Time Savings
C++ 2.81 2.27 19%
Java 3.97 3.12 21%
Visual Basic 2.78 2.77 <1%
Python 8.14 5.87 28%
Опасность, характерная для этого случая, заключается в том, что две петли должны поддерживаться параллельно.
[...] вы должны помнить об изменении кода в обоих местах, что раздражает
вы и головная боль от обслуживания тех, кто работает с кодом.
Этот пример также иллюстрирует ключевую проблему в настройке кода: влияние любого конкретного
настройка кода не предсказуема. Настройка кода принесла значительные улучшения в
три из четырех языков, но не в Visual Basic. Для выполнения этого конкретного
Оптимизация в этой конкретной версии Visual Basic будет производить меньше ремонтопригодных
код без какого-либо увеличения производительности. Общий урок заключается в том, что вы должны
измерить эффект каждой конкретной оптимизации, чтобы быть уверенным в ее эффекте - нет
исключения.
Отметьте этот другой вопрос здесь на SO. И это из первого издания Code Complete.