Chapter 2. Inverses

When we refactor, we're trying to respond to the forces affecting code. Sometimes what was a good change today no longer looks so good tomorrow, and we find ourselves reversing a refactoring.

Interlude I2.1

Table I-3 presents a list of refactorings. Next to each refactoring, write the name of the refactoring that undoes its effects. (The refactoring and its inverse will both be on the list.)

▪ See Appendix C for solution.

Table I.3. Refactorings and Their Inverses



Add Parameter


Change Bidirectional Association to Unidirectional


Change Reference to Value


Change Unidirectional Association to Bidirectional


Change Value to Reference


Collapse Hierarchy


Extract Class


Extract Method


Extract Subclass


Hide Delegate


Inline ...

Get Refactoring Workbook now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.