Originariamente inviato da Vincent_E
In pratica dici di spezzettare il più possibile e di estendere quelle classi che servono unicamente a far funzionare la classe corrente.
Nel mio caso, se ho classi che richiedono una connessione al db, faccio estendere loro la classe "database_conn".
Spezzare si ma non troppo.. La "connessione" è un metodo/ una funzione che compie il database stesso quindi non serve creare una classe a parte.

Esistono più tipi di database <- questa frase ti permette di creare più classi db
ogni database si deve connettere al db <- funzione/metodo inerente al database

Codice PHP:
class database {

  public function 
connect() {
    .....
  }
}

class 
dbMysql extends database {
}

class 
dbMysqli extends database {

  public function 
connect() {
    
// overriding con le funzioni mysqli
  
}
}

class 
dbAccess extends database {

prova a farti delle domande.. Chi fa cosa? Cosa ha bisogno per farlo? A chi serve il risultato?

Per andare ad un livello superiore ci sono le classi astratte ma credo che sia ancora troppo presto