Мысли о оптимизации

Оптимизация софта штука важная и полезная. При этом для массового софта подход «время на оптимизаию стоит дороже чем новый процессор» неверен — когда пользователей сотни тысяч, стоимость их потраченного впустую на ожидания времени таки дороже. Но иногда оптимизация просто вредна.

Очень часто оптимизация делается ценой читабельности кода, удобства его поддержки, а также надежности.

И это категорически неправильно! Есть работа, которую должен делать компилятор. И всякие низкоуровневые оптимизации можно и нужно делать либо в отдельных библиотеках (с параллельной реализацией «читабельного» и «оптимизированного» варианта), либо в компиляторе.

Еще хуже, когда оптимизация делается за счет безопасности. Два самых ярких примера, которые принесли в IT много кошмарных проблем — треды и ASCIIZ строки. Причем последние — это была оптимизация для процессоров, которые уже по крайней мере пару десятилетий не используются. А большинство проблем в безопасности у UNIX-like систем появилось из-за них.

Самая важная оптимизация в настоящее время — оптимизация структур данных и архитектуры. Все остальное требует вдумчивого анализа последствий.

Запись опубликована в рубрике Новости. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Оставьте эти два поля как есть:

Защищено Invisible Defender. Показывать 403 для 283 480 плохих парней.