O documento discute refatoração de código. Refatoração é o processo de modificar um sistema de software para melhorar a estrutura interna do código sem alterar seu comportamento externo. O documento descreve vários tipos de problemas de código ("mau cheiro") que podem ser resolvidos através de refatorações como extrair métodos, remover duplicação de código e consolidar hierarquias de classes.