Seu código é fácil de alterar? Você recebe feedback quase instantâneo quando o altera? Você o entende? Se a resposta a alguma dessas perguntas for ?não?, você tem um código legado e ele está consumindo tempo e dinheiro de seus esforços de desenvolvimento.
Neste livro, Michael C. Feathers oferece estratégias completas para um trabalho mais eficaz com bases de código legadas grandes e não testadas. Partindo do material que criou para seus famosos seminários na Object Mentor, o autor apresenta todas as técnicas que usou para ajudar centenas de desenvolvedores, gerentes técnicos e testadores a manter seus sistemas legados sob controle.
Tópicos abordados:
- Mecânica de alteração de softwares: inclusão de recursos, correção de bugs, melhoria do design, otimização do desempenho
- Passagem do código por um framework de testes
- Criação de testes que protejam contra a introdução de novos problemas
- Técnicas que podem ser usadas com qualquer linguagem ou plataforma ? com exemplos em Java, C++, C e C#
- Identificação precisa de onde devem ser feitas alterações no código
- Manipulação de sistemas legados não orientados a objetos
- Manipulação de aplicativos que pareçam não ter estrutura
Neste livro, Michael C. Feathers oferece estratégias completas para um trabalho mais eficaz com bases de código legadas grandes e não testadas. Partindo do material que criou para seus famosos seminários na Object Mentor, o autor apresenta todas as técnicas que usou para ajudar centenas de desenvolvedores, gerentes técnicos e testadores a manter seus sistemas legados sob controle.
Tópicos abordados:
- Mecânica de alteração de softwares: inclusão de recursos, correção de bugs, melhoria do design, otimização do desempenho
- Passagem do código por um framework de testes
- Criação de testes que protejam contra a introdução de novos problemas
- Técnicas que podem ser usadas com qualquer linguagem ou plataforma ? com exemplos em Java, C++, C e C#
- Identificação precisa de onde devem ser feitas alterações no código
- Manipulação de sistemas legados não orientados a objetos
- Manipulação de aplicativos que pareçam não ter estrutura