Книга: Экстремальное программирование. Разработка через тестирование

Параметр метода в параметр конструктора (Method Parameter to Constructor Parameter)

Параметр метода в параметр конструктора (Method Parameter to Constructor Parameter)

Как переместить параметр из метода или методов в конструктор?

Как

1. Добавьте параметр в конструктор.

2. Добавьте в класс переменную экземпляра с тем же именем, что и параметр.

3. Установите значение переменной в конструкторе.

4. Одну за другой преобразуйте ссылки parameter в ссылки this.parameter.

5. Когда в коде не останется ни одной ссылки на параметр, удалите параметр из метода.

6. После этого удалите ненужный теперь префикс this.

7. Присвойте переменной подходящее имя.

Зачем

Если вы передаете один и тот же параметр нескольким разным методам одного и того же объекта, вы можете упростить API, передав параметр только один раз (устранив дублирование). Напротив, если вы обнаружили, что некоторая переменная экземпляра используется только в одном методе объекта, вы можете выполнить обратный рефакторинг.

27 Fowler, Martin. Refactoring: Improving the Design of Existing Code. Boston: Addison-Wesley, 1999. Русское издание: Фаулер. М. Рефакторинг: улучшение существующего кода. СПб.: Символ-Плюс, 2003

Оглавление книги


Генерация: 1.393. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз