Refactoring to Patterns

Refactoring to Patterns is the title of a book by Joshua Kerievsky, taking the mathematical analogy of refactoring as a transformation of the shape of code which does not alter its meaning, but which changes its affordances for further engagement.

In software, refactoring may change the way that code is expressed, in ways that change how easily it is to break into modules, or to add additional behavior.

In test-driven development, refactoring is part of the Circle of Life, red, green, refactor.

Outside of software, "refactoring to patterns" suggests that there are different, useful ways to present knowledge and understanding which are characterized by moving facts, thoughts, and assertions into a useful or harmonious shape, in the way that refactoring code is intended to do.