Essa semana participei de uma discussão sobre a construção de códigos otimizados.
Qual a melhor forma de se otimizar um código para ganhar desempenho? Escrever o código durante o projeto tentando escrever um código mais eficiente possível ou simplesmente terminar um projeto e depois realizar testes para diagnosticar e otimizar?
Eu diria que a busca por códigos otimizados deve ser constante. Para fazer isso, a melhor maneira é:
- possuir processos de desenvolvimento de software bem definidos. é importante que todos os membros da equipe estejam alinhados com ela.
- possuir profissionais experientes nos projetos. Se seu projeto tiver pessoas menos experiêntes, faça um mentoring sempre que possível. Evolua a equipe, para evoluir o projeto;
- conhecer (as boas e más), praticar e disseminar as boas práticas no desenvolvimento para a equipe;
- utilizar ferramentas que façam auditoria nos códigos.
Já comece qualquer projeto com todos os recursos disponíveis para você construir códigos otimizados.
Hoje existem várias técnicas e ferramentas que podem auxiliá-lo a respeito.
Utilize ferramentas, como Maven, para centralizar suas rotinas para auditoria de código. Exemplos:
- O plugin Checkstyle pode ser usado para você verificar se os códigos estão sendo desenvolvidos seguindo os padrões da SUN. Pode ser customizado para atender seus requisitos.
- O plugin CPD / PMD te apresenta códigos duplicados.
- O plugin FindBugs te apresenta os possíveis bugs em seus códigos.
- Faça testes unitários. Veja alguns recursos que você pode usar: JUnit, DBUnit, JMock2, TestNG, JsUnit, JsMock, ….
Esses plugins podem estar contidos em sua IDE ou executados externamente. Se estiverem na IDE, em tempo de codificação, você poderá ter impactos na performance (tenha um bom PC, ok?).
Há vários outros itens que podem ser usados.
Porém, esse é o cenário perfeito, mas que nem sempre é uma verdade. Muitos projetos são vendidos e gerenciados sem prever os testes. INFELIZMENTE e sem tempo para refactoring.