segunda-feira, 18 de agosto de 2008

Um pequeno exemplo de otimização de código

Essa eu peguei em vários pontos de um sistema Java que eu trabalho aqui na IBM. Eu estava comparando a utilização de algumas classes para servir de exemplo para algo que preciso implementar e vi muito disso:
...
for ( int j = 0; j < t.getRowCount(); j++ )
{
...

Ao fazer o loop, os programadores utilizam a instrução t.getRowCount(); a cada iteração! Imagine se você passa por esse loop um milhao de vezes, então, um milhão de vezes você irá no objeto "t" e vai perguntar para ele: "Amigão, quantas linhas você tem?". Certamente isso vai dar trabalho para nosso processador.

Tá certo, concordo que é algo muito simples, mas imagine que esta prática é adotada em todo nosso sistema? E nosso sistema é realmente gigante... agora, some tudo! consideravelmente teremos quebra de desempenho!

Como resolver? Simmmmmmmmmmples:
...

int size = t.gerRowCount().
for ( int j = 0; j < size; j++ )
{
...

Simples e funcional!

Enjoy!

Nenhum comentário:

Postar um comentário