Object pool

questo è un deposito di oggetti (classi instanziate), quando una classe client ne fa richiesta questa viene richiamata dal pool.

Un Object pool è particolarmente utile quando si parla di Factory Method:

  • i client richiedono istanze
  • i client dovranno indicare quando l’istanza non è più in uso, quindi riusabile.

L’object bool potrebbe essere unico (Singleton - non ha spiegato cosa è)

Dependecy Injection

Quando una classe prende in input delle classi, e dipende da queste parliamo di dependecy injection. Questa tecnica ci permette di separare la costruzione delle istanze da loro uso

Abstract Factory

Intento

Fornire un’interfaccia per creare famiglie di oggetti che hanno qualche relazione senza specificare le loro classi concrete

Problema

Il sistema complessivo dovrebbe essere indipendente dalle classi usate, così da essere configurabile con una di varie famiglie di classi.

Soluzione

Singleton

Ogni oggetto è un istanza di una classe, e ogni classe ha zero o più istanze. La classe per ciascun oggetto è sempre statica.

Intento

Assicurare che una classe abbia un sola istanza e fornire un punto di accesso globale all’istanza

Motivazione

Alcune classi dovrebbero avere esattamente una istanza, in questi casi ha senso usare il singleton

Soluzione

Per usare il singleton dobbiamo fornire all’interno della classe un metodo GetIstance che ritorna l’unica istanza disponibile per quella classe