Нестыковки в рефакторинге
Рефакторинг - проведение изменений в структуре программы, для улучшения или облегчения восприятия, без изменения поведения.
То есть работу по преобразованию приходиться делать "без изменения поведения".
А причина рефакторинга в том что он производиться для нового. То есть чтобы добавить, в запущенную систему, новую функциональность.
Шуточная нестыковка: То есть Рефакторинг производиться без изменения поведения, но для изменения поведения в будущем.
Ещё нестыковка: Рефакторинг бывает с изменением поведения.
Поясню. Если рефакторинг производиться с целью оптимизации, то функциональное поведение не меняется, а вот параметры поведения меняются, то есть незначительно меняется поведение программы.
Ещё одна шуточная нестыковка: Рефакторинг - рефакторинги
Поясню. Рефакторинг состоит из небольших простых шагов - рефакторинга, которые производятся без изменения поведения.
Еще одна шуточная нестыковка: Рефакторинг - это и просто и сложно.
Поясню. Рефакторинг может пониматься как "Чистка кода!". Но если понимать что рефакторинг это "технология приведения кода в порядок, в более эффективном и управляемом стиле". Автор книги - Мартин Фаулер, сказал, что когда начал относится к рефакторингу серьезно, стал работать эффективнее, чем прежде.
Ещё одна: Рефакторинг не меняет "ни чего" для пользователя.
Тут просто неизменяемое видимое поведение программы.