Заключительные размышления

Это был простой пример, но я надеюсь, что он дал вам почувствовать, как проходит рефакторинг. Я использовал несколько рефакторингов, включая Extract Method (110), Move Method (142) и Replace Conditional with Polymorphysm (255). Все они направлены на лучшее распределение ответственности и упрощение поддержки кода. Это выглядит совершенно по-другому в сравнении с процедурным подходом.

Наиболее важный урок этого примера -- это ритм рефакторинга: тестирование, небольшое изменение, тестирование, небольшое изменение, тестирование, небольшое изменение. Такоий ритм позволяет проводить рефакторинг быстро и не вносить ошибок.

Если вы продвинулись так далеко вместе со мной, вы должны понимать, что такое рефакторинг. Теперь мы можем обратиться к принципам и теории (хотя бы ненадолго).


В начало | предыдущая