Евгений
Евгений

подскажите чем отличается оптимизация от рефакторинга

ДС
Дмитрий Сахаров

С ходу эти понятия не разделишь.. . Оптимизация всегда подразумевает некоторое улучшение и, соответственно, определенный критерий. Например, оптимизация скорости работы программы. Или оптимизация использования памяти. Снижение количества багов тоже можно рассматривать как своего рода оптимизацию.. . Разумеется, любая оптимизация требует исправления когда, его изменение. А это и есть рефакторинг, то есть какая-то переделка кода. То есть, можно сказать, что оптимизация - это частный случай рефакторинга. Верно ли обратное утверждение, что рефакторинг всегда подразумевает некоторую оптимизацию? Не знаю, наверное да. Как говорит золотое правило программирования "Работает? Ничего не трогай, ничего не меняй! ". То есть для рефакторинга должны быть веские причины. И эти причины тоже можно рассматривать как оптимизацию, например по критерию понятности кода или его приспособленности для оперативного внесения изменений и проч.

Ну, может, с натяжкой можно было бы выделить оптимизацию, которая не требует рефакторинга. Например если речь идет системе с кучей параметров, где подбором этих параметров можно добиться какого=то улучшения. Но это, наверное, крайне узкий класс - в более-менее сложных задачах настройка параметров сравнима с работой на спец. языке программирования. Поэтому, если не вдаваться в детали, то оптимизация и рефакторинг - как Партия и Ленин - близнецы-браться. Говорим "оптимизация" и занимаемся рефакторингом. И наоборот - занимаемся рефакторигом - и наш код становится лучше 🙂

Антон
Антон

Рефакторинг более широкое понятие чем оптимизация. Думаю, любую оптимизацию можно назвать рефакторингом, но не наоборот.
То есть оптимизация - это частный случай или инструмент рефакторинга.

Похожие вопросы
Подскажите по оптимизации пространства кухни :)
общий вопрос по оптимизации программ.
Вопрос касательно оптимизации сайта на HTML
Оптимизация загрузки страницы
Задача оптимизации в Exel
подскажите пожалуйста! чем отличается оптимизация от реорганизации?
Кто может помочь решить задачу оптимизации в Exel
Подскажите программы для оптимизации телефона
подскажите надо ли делать оптимизацию реестра (сжатие и дефрагментация) и для чего это надо делать?
PHP Нужна ли оптимизация и как