04.12.2018. Лекция №13. Рефакторинг (ч.2).
Перемещение функций между объектами
.
- Перемещение метода (Move method).
- Перемещение поля (Move field).
- Извлечение класса (Extract class).
- Встраивание класса (Inline class).
- Сокрытие делегирования (Hide delegate).
- Удаление посредника (Remove middle man).
Организация данных
.
- Замена простого поля объектом (Replace data value with object).
- Замена поля-массива объектом (Replace array with object).
- Замена однонаправленной связи двунаправленной (Change unidirectional association to bidirectional).
- Замена двунаправленной связи однонаправленной (Change bidirectional association to unidirectional).
- Замена магического числа символьной константой (Replace magic number with symbolic constant).
- Инкапсуляция поля (Encapsulate field).
- Инкапсуляция коллекции (Encapsulate collection).
Упрощение условных выражений
.
- Разбиение условного оператора (Decompose conditional).
- Объединение условных операторов (Consolidate conditional expression).
- Объединение дублирующихся фрагментов в условных операторах (Consolidate duplicate conditional fragments).
- Замена вложенных условных операторов граничным оператором (Replace nested conditional with guard clauses).
Действия