Сокрытие метода
Проблема
Метод не используется другими классами либо используется только внутри своей иерархии классов.
Решение
Сделайте метод приватным или защищённым.
Причины рефакторинга
Очень часто потребность в сокрытии методов получения и установки значений возникает в связи с разработкой более богатого интерфейса, предоставляющего дополнительное поведение. Особенно это проявляется в случае, когда вы начинали с класса в котором не было никаких методов, кроме геттеров и сеттеров.
По мере встраивания в класс нового поведения может обнаружиться, что в открытых геттерах и сеттерах более нет надобности, и тогда можно их скрыть. А после этого, если использовать только прямой доступ к полю, его методы доступа можно вообще удалить.
Достоинства
-
Сокрытие методов упрощает эволюционные изменения в вашем коде. Изменяя приватный метод, вам нужно будет заботиться только о том, чтобы не сломать текущий класс, так как этот метод не может быть использован где-то ещё.
-
Делая методы приватными, вы подчёркиваете важность публичного интерфейса класса, другими словами, тех методов, которые остались публичными.
Порядок рефакторинга
-
Регулярно делайте попытки найти методы, которые можно сделать приватными. Статический анализ кода и хорошее покрытие unit-тестами может очень помочь в этом.
-
Делайте каждый метод настолько приватным, насколько это возможно.