sql >> Databáze >  >> RDS >> Mysql

připojení k databázi php singleton, je tento kód špatný postup?

Singletons jsou špatná zpráva.

  • Zavádějí do programu globální stav. Většina programátorů by měla být obeznámena s tím, proč je globální stav špatný.
  • Zavádějí těsné propojení mezi singletonem a jakoukoli třídou, která jej používá. To znamená, že nemůžete znovu použít příslušné třídy, aniž byste znovu použili singleton.
  • Udělují problematické jednotkové testování tříd, které závisí na singletonu, protože singleton nelze snadno nahradit falešným.
  • Podporují styl kódování, kde se třídy pokoušejí vyřešit své vlastní závislosti. To je špatné, protože to může snížit jasnost ohledně závislostí třídy.
  • PHP má architekturu Share Nothing, což znamená, že PHP singletony nejsou ve skutečnosti singletony, může existovat více instancí v jednom okamžiku (jedna na otevřený požadavek).
  • Co se stane, když najednou později zjistíte, že skutečně potřebujete více než jeden zdroj, který vám singleton poskytuje? Je to běžnější scénář, než byste si mysleli

Raději se podívejte na místo toho, protože řeší výše uvedené problémy.



  1. Jak vrátím náhodná čísla jako sloupec v SQL Server 2005?

  2. Laravel Neznámý sloupec 'updated_at'

  3. MySQL:Pohledy vs. uložené procedury

  4. C# Ekvivalent datových typů SQL Server