Strategy
Artículo
oferta(int)
oferta(int)
EnSubasta
Subastado
ofertas()
precio()
nuevaoferta(int)
comprador()
plazo()
sigleton
•
•
•
•
•
•
Cambio el constructor a privado.
Hago que la clase no pueda ser
heredada.
Agrego una variable estática del
mismo tipo de la clase donde esta
contenida. (instancia)
Agrego un método estático que
retorne la variable estática.
(GetInstance)
No creo el objeto hasta que sea
necesario (Lazy Creation)
Agrego el código necesario para
no crear dos instancias en
distintos thread.
ClaseUnica
-instancia : ClaseUnica
-ClaseUnica()
+ObtenerInstancia() : ClaseUnica
+Operacion1()
if (instancia==null)
if (instancia==null)
instancia = new
ClaseUnica();
{
return instancia;
Mutex mutex = new Mutex();
mutex.WaitOne();
if(instancia==null)
instancia = new ClaseUnica();
mutex.Close();
}
return instancia;
Descargar

presentacion PatronesII