Autumn SALE

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

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

Проблема

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

Решение

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

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

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

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

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

  1. Значение поля должно меняться только в конструкторе. Если конструктор не содержит параметра для установки значения, нужно его добавить.

  2. Найдите все вызовы сеттера.

    • Если вызов сеттера стоит сразу после вызова конструктора текущего класса, переместите его аргумент в вызов конструктора и удалите сеттер.

    • Вызовы сеттера в конструкторе замените на прямой доступ к полю.

  3. Удалите сеттер.