IP-PBX management: http://www.easypbx.it
Old account: 2126 messages
Oldest account: 3559 messages
I pattern sono un enorme buco nero per me, posso dire che in due anni che ho seguito il corso di ing. del software la docente ci ha amalapena detto cosa fanno, insime a una breve carrellata di UML, e pretende che noi realizziamo un progetto completo. Vien da se che io cerco di imparare leggendo e chiedendo a voi.
La mia risposta alla tua domanda è che non ho capito di cosa tu stia parlando, al momento l'unico pattern che credo di aver implementato è il factory per creare in base alle esigende un oggetto o array di oggetti che corrispondono ai miei contenuti.
http://www.hostingtalk.it/introduzio...hp_-c000000Ij/
http://net.tutsplus.com/tutorials/ph...esign-pattern/
http://css.dzone.com/books/practical...php-patterns-8
cmq, step 1, visto che stai facendo pure una cosa di studio:
1) USA COMPOSER
2) USA PHPUNIT
3) INIZIA DALLE COSE SEMPLICI ( una classe -> una entity del db)
4) IMPLEMENTA I METODI BASE
5) FAI TEST A GOGO
6) PIAN PIANO ESPANDI LA COMPLESSITA'
data mapper: http://martinfowler.com/eaaCatalog/dataMapper.html
ti suggerisco anche il libro di martin fowler
IP-PBX management: http://www.easypbx.it
Old account: 2126 messages
Oldest account: 3559 messages
Dico la mia (per i + esperti se dico qualche cavolata non massacratemi).
Io personalmente tendo a dividere entità e gestione della loro persistenza (vedi repository pattern linkato da Santino).
In pratica per ogni entità che creo, faccio anche una classe repository che si occupa di gestire la persistenza di un oggetto. Ad esempio banale classe persona
Codice PHP:class Persona{
// le varie proprietà e i vari comportamenti
}
class PersonaRepository{
public function all(){
// elenco di tutte le entità persona....
}
public function search(array $criteria){
// elenco di tutte le entità persona che soddisfano i criteria che passo....
}
public function find($key){
// entità persona che ha la chiave specificata...
}
public function add(Persona $persona){
// inserisco l'entità persona nella mia base dati....
}
public function remove(Persona $persona){
// rimuovo l'entità persona dalla mia base dati....
}
public function update(Persona $persona){
// aggiorno l'entità persona che passo....
}
}
http://www.morialberto.it
domanda sul data-mapper: devo crearne uno per ogni classe che intendo interfacciare con la base dati?
è si![]()
Questa volta, più che un voto.. è favoreggiamento.