Antonio Esposito's


Prodotti tipici .NETtiani

Singleton (Pattern)

Il Singleton è uno dei pattern creazionali di programmazione più diffusi. Serve a limitare la possibilità di creare istanze di una classe, mettendone a disposizione un'unica per tutte le richieste.
Per implementarlo in una classe da noi creata, basta rendere il costruttore privato e creare un metodo statico, shared in VB, (detto getter) che potremmo chiamare getInstance(), che ritorna l'unica istanza disponibile.
Nel caso in cui, l'istanza unica non venga generata nel costruttore statico ma alla prima chiamata, si va ad utilizzare una inizializzazione detta lazy (pigra).

es non lazy
class singleton
{
   private void singleton() { } //costruttore privato

   private static singleton instance = new singleton(); //istanza privata della classe
   public static singleton getInstance() { return instance; } //metodo getter
}

es lazy
class singleton
{
   private void singleton() { } //costruttore privato

   private static singleton instance; //istanza privata della classe
   public static singleton getInstance()
   {
      if (instance == null) // inizializzazione lazy
         instance = new singleton();
   }
}

wiki: http://it.wikipedia.org/wiki/Singleton
venerdì, 08 gen 2010 Ore. 16.31
Statistiche
  • Views Home Page: 10.724
  • Views Posts: 58.960
  • Views Gallerie: 0
  • n° Posts: 44
  • n° Commenti: 16
Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003