18-03-2011, 10:23 AM
Ben je trouve pas très judicieux de coder en dur dans la classe les paramètres de connexion ... Tu devras modifier ta classe à chaque fois que tu voudras t'en servir pour un autre truc.
Ensuite perso je trouve que les singletons c'est « mou » et c'est relou. J'instancie un PDO et je le balance en paramètres aux fonctions qui en ont besoin, ou aux classes qui se le stockent dans un coin. et je me le garde dans ma classe de config. Ça m'empêche pas de contrôler l'instanciation, mais de toute façon, en php ton PDO crève à la fin du script. On est pas dans une architecture ou tu peux voir pousser des clones au bout de 5 ou 6 heures d'uptime. Ah et en PHP 5 le constructeur s'appelle __construct, et non pas comme la classe. (bien que comme tu as pu le constater, ils ont assuré la compatibilité).
18-03-2011, 02:40 PM
bon...decidement je ne comprendrait jamais rien à la poo...
aurait tu des exemple "bien codés" de singleton ou factory por une classe de connexion à la base de donnée ? car j'ai lu je sais pas combien de tuto, mais meme si je n'y connais rien il me semble que même en POO on peut faire du code degeu...
18-03-2011, 02:47 PM
pas moi, j'aime pas la POO et j'aime encore moins les singleton.
Rien de difficile a comprendre sur le point de vu de la conception d'un singleton, il s'agit de créer une class qui ne permet qu'une seul instance... Qu'es ce que tu comprends pas la dedans php_addict?
Ensuite le fait de passer en paramètre les variable de conexion que tu as mis en dur dans ta classe, c'est juste rendre ta classe plus générique et réutilisable.
Dévotion, jeu multijoueur gratuit par navigateur de stratégie et de conquête
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne Rapture Studio : créateur de divertissement pour tous JePolitique.fr - débattons ensemble JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir Je Deviens Citoyen (Association à but non lucratif)
18-03-2011, 04:20 PM
bah deja le mot instance c'est du charabiat, mais je pense avoir compris le principe
par contre avec mon singleton qui semble fonctionner , je voudrais balancer mon objet 'connexion' dans une classe qui ressemblerati à ceci: http://www.spiration.co.uk/post/1333/PHP...%20objects et j'avous que là je ne comprends pas comment faire. dans le script du lien que je viens de fournir il se connecte à la bdd vis la public function open( $path, $name ) ce qui est inutile pour moi car j'ai deja un objet de connexion...je ne sais pas comment adapter ce script avec mon singleton... je sais pas si c'est clair...
Une instance c'est un objet tout simplement.
Objet =/= classe, ou classe est le modèle et l'objet une instance de ce modèle.
19-03-2011, 08:40 AM
salut, merci niahoo
quand j'ai vu ton code je me suis dis: je suis vraiment une quiche en POO. pour le moment je ne vais mettre en OO que la gestion de connexion à la bdd et le gestion des systèmes de sessions, pour le reste je fais un truc un peu crade: je passe mon objet 'connexion à la bdd' à mes fonctions procédurales...c'est pas très joli mais je ne peut pas faire autrement... bon week end
19-03-2011, 10:21 AM
Pourquoi ne pas récupérer ton instance de connexion via le Singleton, plutôt que de passer ta connexion à chaque fonction ?
Faire de l'OO pour faire de l'OO n'est absolument pas pertinent. Il faut y avoir un intérêt. Sephi-Chan
C'est à moi que tu demandes ? *
Parce que coder en dur dans la classe la récupération d'une instance de fait à partir d'une classe particulière. alors qu'en paramètre je peux passer ce que je veux tant que l'objet respecte une certaine interface. mais généralement je le passe dans le constructeur lors de l'initialisation et je me le garde dans un coin. |
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
[PHP] Singleton PDO | php_addict | 33 | 11 355 |
26-10-2011, 11:41 PM Dernier message: niahoo |
|
singleton et héritage | Ter Rowan | 4 | 4 010 |
27-06-2010, 07:37 PM Dernier message: Ter Rowan |
|
singleton, multiton, téléton | Ter Rowan | 7 | 3 913 |
17-11-2009, 06:12 AM Dernier message: DragonMaster |
|
[POO] Utilisation du singleton | uriak | 0 | 2 072 |
20-01-2008, 12:15 PM Dernier message: uriak |