Pessoal, desculpe por não postar nada nos últimos dias...
Tive uns problemas de saúde. (nada grave, mas precisava me cuidar...)
Ainda não estou 100%, mas dá para levar. :)
Mas voltando ao assunto do título:
Design Patterns, em computação, é uma receita de bolo de como fazer certas coisas recorrentes que aparecem no código-fonte. Por exemplo: "Como criar uma instância única para todo objeto de uma certa classe?"
Como faço isso? -- você pergunta.
Fácil, utilizando o "design pattern" chamado Singleton!
A "receita de bolo":
public class MinhaClasse {
//Declarando um objeto estático da classe
private static MinhaClasse instancia = null;
//Construtor privado !?! (somente a própria classe consegue instanciar)
private MinhaClasse() {
//Inicializando objeto
}
//Cria uma única instância para o objeto
public static MinhaClasse getInstance() {
if (instancia == null) {
instancia = new MinhaClasse();
}
return instancia;
}
}
Para todo objeto que precisar de uma instância (no caso, a mesma instância), é só usar o método getInstance:
...
MinhaClasse obj1 = MinhaClasse.getInstance();
...
MinhaClasse obj2 = MinhaClasse.getInstance();
...
Qual é a vantagem de se utilizar este "design pattern"? -- pergunta você, de novo. :P
Talvez, por economia de memória (já que existe somente uma instância) e o sistema "guarda" o último estado da instância (este último, talvez não seja uma vantagem...).
Quando eu devo usar? -- pergunta você, outra vez. :P
Geralmente em classes úteis, do tipo que não precise guardar valores (funções matemáticas, de formatação, de ordenação e outras mais).
Hum... Espero que eu não tenha complicado e sim, explicado. :P
Nenhum comentário:
Postar um comentário