quarta-feira, 14 de abril de 2010

Um Momento para a Qualidade

Por que não reservar um momento para refletir nas soluções? Se usarmos alguns minutos do dia refletindo no que estamos fazendo, não impactaremos o cronograma de forma decisiva. E o ganho obtido pode, simplesmente, anular o tempo gasto.


Quando estivermos desenvolvendo um método e, percebemos que aquele trecho de código deveria estar em outro método ou em outra classe, vamos beber um café e parar para refletir. Dependendo do domínio que temos sobre a situação, podemos tomar essa decisão em cinco minutos.

Se temos pouco domínio daquela situação específica, podemos precisar de mais tempo. Entretanto, o aprendizado não se perde. É provável que em outra situação semelhante, a solução refinada seja uma das opções, logo no primeiro momento.

Existem refatorações demoradas. Estas precisam de uma análise melhor do tempo necessário e até da  real necessidade naquele momento.

Estou me referindo às refatorações simples, quando percebemos que algo não está legal. Estas refatorações custam muito pouco se observarmos o ganho proporcionado. O problema é que, as vezes, ignoramos aquela voz que diz: cara, algo está errado. E, normalmente, as pessoas tendem a dar razão a máxima: "Está funcionando, não mexe!"

Se estivermos desenvolvendo orientado a testes, já temos um teste para esta refatoração, caso a melhor solução seja apenas um novo método privado na classe. Caso a solução envolva outras classes, escrevemos novos testes para os novos métodos destas classes. Podemos repensar soluções com frequência, pois temos uma ótima margem de segurança.

Refinamento da solução sempre que possível, e com segurança. Quem não gostaria de um cenário assim?

Nenhum comentário:

Postar um comentário