Рефакторинг — перепроектирование алгоритмов для облегчения понимания работы программы. В его основе лежит последовательность мелких правок, которые легко отследить и проверить их корректность. Этот процесс не меняет структуру программы и внешний вид, но код становится компактнее, проще и понятнее, и в дальнейшем с ним легче работать.
Рефакторинг применяется для решения следующих задач:
● добавление новой функции, которая плохо работает при имеющемся коде;
● исправление ошибки, причины появления которой не очень понятны;
● преодоление трудностей в командной разработке из-за сложной логики программы.
Программный код со временем наполняется бесполезной информацией, которую можно убрать, дублируется, дополняется избыточными временными переменными или несгруппированными данными. Рефакторинг позволяет очистить его от этих ненужных вещей.
Рефакторинг производится с помощью разных методов, например, выделение класса или интерфейса, генерализации типа, подъема, спуска, переименования или перемещения метода, введения параметра и др.