Извлечения класса (Extract Class)
Один класс работает за двоих.
Создать еще один класс и перенести в него часть полей и методов.
На практике классы, которые вначале имеют хорошую структуру и четко определенные ответственности, постепенно разрастаются с помощью добавления в них новых полей и методов, и становятся очень большими и запутанными. Тогда приходит время их поделить. Для этого надо выбрать, что оставить в старом классе, а что перенести в новый. Хорошим признаком для переноса являетсято, что группа полей и методов просто просится быть перенесенной в другой класс, а также если какая-то часть данных обычно изменяется вместе, либо зависит друг от друга.
Один из случаев, когда применяется этот рефакторинг – когда класс будет наследоваться. При этом могут наследоваться не все члены, либо одни и те же члены наследуются по разному.
Комментарии