Удаление сеттера
Также известен как: Remove Setting Method
Проблема
Значение поля должно быть установлено только в момент создания и больше никогда не меняться.
Решение
Удалите методы, устанавливающие значение этого поля.
До
После
Причины рефакторинга
Вы хотите сделать значение поля неизменяемым.
Порядок рефакторинга
- Значение поля должно меняться только в конструкторе. Если конструктор не содержит параметра для установки значения, нужно его добавить.
- Найдите все вызовы сеттера.
- Если вызов сеттера стоит сразу после вызова конструктора текущего класса, переместите его аргумент в вызов конструктора и удалите сеттер.
- Вызовы сеттера в конструкторе замените на прямой доступ к полю.
- Удалите сеттер.