Návrhové vzory: Jednoduchá (statická) tovární metoda

Jedná se o jednodušší verzi návrhového vzoru (obecná) tovární metoda.

Použijeme, pokud potřebujeme funkčnost, kterou není schopen dodat konstruktor.
Pokud potřebujeme získat odkaz na objekt, ale z různých důvodů nechceme či nemůžeme použít konstruktor.

Vlastnosti

  • Statická metoda která nahrazuje konstruktor.
  • Nemusí vracet vlastní instanci ale instanci zvoleného potomka.

Použití

  • Potřebujeme rozhodnout, zda se opravdu vytvoří nová instance
  • Potřebujeme vracet instance různých typů
  • Potřebujeme provést nějakou akci ještě před tím, než se zavolá rodičovský konstruktor
  • Potřebujeme více verzí se stejnými sadami parametrů – tovární metody mohou mít různé názvy

Příklad 1

public static getClovek()
{
  switch ($i++ % 3){
    case 0:
      return new Lenoch();
      break;
    case 1:
      return new Pracant();
      break;
    ...
  }
}

 

 

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *