Tuesday, May 30, 2006

Dicas de Performance Java 5

Aqui vai algumas dicas para performance, mais especificamente no Java 5:

Fazer comparação ignorando maiúsculas e minúsculas...
ao invés de Code:
s1.toUpperCase().equals(s2);
usamos Code:
s1.equalsIgnoreCase(s2);
nesta versão não é necessário criar uma nova string (toUpperCase) disperdiçando CPU.


A mesma regra vale para:
ao invés de Code:
new Integer(s).intValue();
usamos Code:
Integer.parseInt(s);
(isso vale para os outros wrappers de primitivos)


Adicionando conteúdo a uma StringBuilder
ao invés de Code:
stringBuilder.append(s.substring(x,y));
usamos Code:
stringBuilder.append(s,x,y);
além de mais bonito, ecomiza recursos passando a responsabilidade da separação de conteúdo para o StringBuilder, que por si só já é bem otimizado.


Imagine uma situação aonde temos uma lista já pronta e carregada, e queremos torna-la imutável.
ao invés de de criarmos uma implementação de collection (no caso arrayList) e tratarmos os métodos lançando excessão...
usamos Code:
Collections.unmodifiableList(minhaLista);
dessa forma colocamos uma wrapper sobre nosso objeto, evitando criação de "mutretas" e código complexo. Essa técnica de Wrapper é muito interessante, e pode ser usada em várias situações, como para código thread-safe por exemplo.

É sempre importante a leitura do JavaDoc. As dicas de performance são sempre bem definidas.

No comments: