Mudanças entre as edições de "Manual do Desenvolvedor"
De Grupo Acert
Linha 141: | Linha 141: | ||
O objetivo do construtor é inicializar um objeto. Se o método puder ser acessado por uma subclasse, poderá ser feito um override, gerando um resultado não esperado. | O objetivo do construtor é inicializar um objeto. Se o método puder ser acessado por uma subclasse, poderá ser feito um override, gerando um resultado não esperado. | ||
+ | |||
+ | == Encapsulamento e Controle de Acesso == | ||
+ | |||
+ | === Evite a utlização de métodos synchronized === | ||
+ | |||
+ | A utilização de métodos synchronized deve ser evitado. Sua utilização é restrita e deve ser sinalizado com o responsável pela arquitetura. Se tiver que ser utilizado, deve ser evitada a utilização destes métodos em loops. | ||
+ | |||
+ | === Utilizar padrão “peso mosca” para instanciamento de objetos em variáveis de instância === | ||
+ | |||
+ | Sempre que possível utilizar o padrão peso mosca para instanciamento de variáveis de instância que armazenam objetos principalmente. Isto facilita a manutenção, detecção de erros e possíveis evoluções no sistema. | ||
+ | |||
+ | Exemplo | ||
+ | |||
+ | public class Documento{ | ||
+ | private Documento documento; | ||
+ | public Documento getDocumento(){ | ||
+ | if(documento==null){ | ||
+ | documento = new DocumentoTipo(); | ||
+ | } | ||
+ | return documento; | ||
+ | } |