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