Autumn SALE

Удаление сеттера

Также известен как: Remove Setting Method

Проблема

Значение поля должно быть установлено только в момент создания и больше никогда не меняться.

Решение

Удалите методы, устанавливающие значение этого поля.

До
Remove Setting Method - Before
После
Remove Setting Method - After

Причины рефакторинга

Вы хотите сделать значение поля неизменяемым.

Порядок рефакторинга

  1. Значение поля должно меняться только в конструкторе. Если конструктор не содержит параметра для установки значения, нужно его добавить.
  2. Найдите все вызовы сеттера.
    • Если вызов сеттера стоит сразу после вызова конструктора текущего класса, переместите его аргумент в вызов конструктора и удалите сеттер.
    • Вызовы сеттера в конструкторе замените на прямой доступ к полю.
  3. Удалите сеттер.