Refatoração

Quando deixamos de cuidar de nossa casa, a poeira se acumula, a pia fica cheia de louça suja, as lixeiras ficam entupidas e aquilo que se costumava chamar de lar se transforma em um lugar pouco agradável. Para evitar que isso ocorra, investimos tempo frequentemente para varrer, lavar a louça, arrumar a cama, retirar o lixo, entre outras atividades. Isso nos ajuda a ter mais conforto e permite que utilizemos a nossa casa para o que desejarmos, como por exemplo, convidar amigos para assistir a um jogo conosco.

Sem refatoração x com refatoração.

Assim como a nossa casa, sistemas também se deterioram quando não investimos continuamente na limpeza e na organização dos mesmos. A estrutura de qualquer sistema tende a se degradar ao longo do tempo, à medida em que novas funcionalidades são inseridas, alterações são feitas, erros são corrigidos e mais código é introduzido. Para evitar que a aplicação se transforme em uma casa suja, desorganizada e difícil de manter, equipes XP utilizam a prática de refatoração. Elas alteram pequenas partes do sistema, frequentemente, sempre que encontram uma oportunidade para melhorar o código, tornando-o mais limpo, mais claro e mais fácil de ser compreendido. Tais alterações não mudam o comportamento das funcionalidades, apenas melhoram a estrutura do código. Agindo assim de forma sistemática e com freqüência, as equipes investem para que o software se mantenha sempre fácil de alterar, gerando a velocidade de desenvolvimento que os clientes de projetos XP costumam vivenciar e apreciar.

Veja Também

Refactoring.com
Database Refactoring
Artigos relacionados na Agile Alliance
Refactoring - Wikipedia
Refactoring to Patterns

Autoria

Texto de Vinícius Manhães Teles.
Ilustrações de Leandro Mello.

Publicado em 02/10/2006.

Licenciado como Creative Commons Atribuição.