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; | ||
| + | } | ||