Le mie applicazioni PHP utilizzano generalmente classi per il namespace. I metodi all'interno di queste classi sono definiti come statici.PHP: quando utilizzare i tratti e quando utilizzare i metodi statici?
Ora che PHP ha introdotto i tratti, sto cercando di capire quando usarli. Ho visto alcuni esempi di utilizzo dei tratti, ma penso che questo potrebbe essere facilmente implementato attraverso un metodo di classe statico.
Un esempio abbastanza approfondita utilizzando un logger è stato elencato qui: Traits in PHP – any real world examples/best practices?
Ma perché usare un Tratto, se si potrebbe anche usare un Logger statica :: log()? L'unica cosa che riesco a pensare solo ora, è un facile accesso a $ questo. Un altro esempio che sto affrontando adesso è una funzione utente esistente. Tratta, o metodo statico vero?
Qualcuno può far luce su questo?
Entrambi tutti schifosissimi da usare in un codice base imho. – PeeHaa
@PeeHaa si prega di elaborare? – Greggg
Entrambi rendono difficile testare il codice dell'unità, a causa dell'accoppiamento stretto. Oltre a mantenerlo/debuggarlo perché in qualche modo un pezzo magico di codice "esterno" viene "importato" nella classe. – PeeHaa