recall

← recall

seam (Feathers) concept

Feathers's central concept for legacy work: a seam is any point where you can substitute behavior without modifying the surrounding code — dependency injection, virtual functions, link-time substitution, preprocessor flags.

Feathers's central concept for legacy work: a seam is any point where you can substitute behavior without modifying the surrounding code — dependency injection, virtual functions, link-time substitution, preprocessor flags. Finding seams is how you write tests for code that was written without testability in mind. Without seams, refactoring legacy is brick-by-brick; with seams, you can isolate and test.

see also

topics: legacy-code, refactoring, engineering-judgment

references: