Quale modello di progettazione sta implementando PEAR DB_DataObject?
-
09-06-2019 - |
Domanda
DB_oggettodati non sembra essere ActiveRecord perché non memorizzi necessariamente la logica aziendale nelle classi "tabella".Sembra più Table Data Gateway o Row Data Gateway, ma davvero non posso dirlo.Ciò di cui ho bisogno è un buon livello ORM che possiamo utilizzare con DataMapper e DomainModel.Qualche idea?
Soluzione
Seguire questo link per leggere cos'è DB_DO.In poche parole, non implementa un modello specifico, mira solo a fornire un'interfaccia comune.L'idea è di non ricostruire lo stesso codice di base in ogni progetto.
Per quanto riguarda un ORM, lo consiglierei Dottrina.Implementa ActiveRecord.
Altri suggerimenti
Sembra che quello che stai cercando sia qualcosa del genere IBatis per PHP.Purtroppo questo non esiste ancora.In realtà ho scritto alcuni elementi personalizzati di DataMapper basati su PDO per l'applicazione corrente su cui sto lavorando per ottenere uno strato di dominio ignorante di persistenza.Tuttavia, è sicuramente più lavoro da sviluppare e mantenere, quindi suggerirei, se possibile, di utilizzare un'implementazione del livello dati esistente come Doctrine per la maggior parte delle tue esigenze.