POO vs PDO
Résolu/Fermé
A voir également:
- POO vs PDO
- Udp vs tcp - Guide
- Dual core vs i5 ✓ - Forum Processeur
- Psp 2000 vs 3000 ✓ - Forum PSP
- Max vs netflix - Accueil - Streaming
- Ahci vs raid ✓ - Forum Disque dur / SSD
4 réponses
Smoking bird
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58
28 sept. 2010 à 18:56
28 sept. 2010 à 18:56
Ah et j'oubliais: la légende raconte que procédural et objet sont aussi "performants" l'un que l'autre. En fait, ça dépend carrément du codeur et de ses compétences. Perso, j'me suis mit à la POO pour ne pas perdre le fil et ne pas être largué par les avancés technologiques, et je n'ai pas à le regretter: c'est bien plus simple pour moi, et ça me permet de faire des scripts encore plus poussés qu'en procédural.
Smoking bird
Messages postés
870
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
10 juillet 2011
58
28 sept. 2010 à 18:50
28 sept. 2010 à 18:50
POO et PDO pour moi c'est pas du tout la même chose, POO est la méthode de programmation orientée objet, PDO est une extension de PHP construite d'après le modèle POO pour gérer les connexions à différentes BDD.
Donc techniquement, comprendre la POO avant de se mettre à PDO est une bonne idée.
Personnellement, je n'aurais pas de site à te recommander, mais creuse plutôt du côté des bouquins, certains sont vraiment biens. Après, rien ne vaut la pratique, qui sera le meilleur moyen pour toi d'apprendre.
Donc techniquement, comprendre la POO avant de se mettre à PDO est une bonne idée.
Personnellement, je n'aurais pas de site à te recommander, mais creuse plutôt du côté des bouquins, certains sont vraiment biens. Après, rien ne vaut la pratique, qui sera le meilleur moyen pour toi d'apprendre.
et bien si je dois comprendre votre point de vue, ce que ce n'est pas ce Paradigme qui fait la performance du codeur, c'est plutôt sa façon à lui de coder, soit en PDO ou en POO qui compte , mais pourquoi c'est le OO qui tend plus à l'avancement au détriment du PDO,
Concrètement faire de l'objet par rapport au procédural:
Pas (ou peu de débogage): Le code découle de ce que l'on veut faire et pas l'inverse...c'est pas clair alors pour donner un exemple si dans ton code quelque chose ne marche pas en procédural il faut trouver où est l'erreur, en objet il n'y a pas d'erreur possible: l'analyse (uml,2tup) indique le code.
Persistence dans le temps et interchangeabilité:
Le modèle le plus connu est le MVC. Lorsque qu'un programme est dépassé en procédural il faut repartir de zéro ou rajouter des rustines pour le moindre ajout de fonctionnalité, avec l'objet il suffit de changer/ajouter les propriétés d'un objet suivant le contexte. On peut très bien utiliser l'héritage pour garder le fonctionnement ancien et le nouveau, suivant le contexte on utiliser l'objet antérieur ou le nouveau qui as les mêmes propriétés que l'ancien mais avec des variantes. De même le modèle MVC implique que chaque partie est interchangeable, mettons qu'un programme affiche quelque chose sous une forme, l'affichage et la chose à affichée étant séparée il est simple de pouvoir changer l'habillage ou même que le même objet donnant 'la chose' à afficher redirige vers autre chose qu'un écran, a contrario on change "la chose" à afficher en gardant le même visuel sans avoir à modifier la partie graphique.
Sécurité: Un programme est composé de plusieurs objet, par exemple comme un corps il a des bras, des jambes, un tronc... chaque fonction(appelée méthode en objet) est propre à sa partie(private) donc ne peut être utilisé comme faille pour accéder aux autres parties.
Bref pour internet, imaginons que tu fait un site avec beaucoup de fonctionnalités, le faire en objet permet d'utiliser le même programme (ou quasiment) tandis qu'en procédural il faut tout refaire. Effectivement l'objet PDO est un objet, donc on peut utiliser lobjet PDO pour se connecter à n'importe quelle type de base de données, il faut changer seulement l'un des attributs lors de la création(instantation) de l'objet. De même plutôt que de retaper plusieurs fois le code pour se connecter à une base mysql on utilises le même objet mais en changeant le login, mdp...etc Chaque instance ne se connectes qu'à une seule base, l'objet c'est le moule qui permet de le faire alors qu'en procédural il faut retaper les lignes qui se connectent, qui vérifient la connexion, qui renvoient les résultats...etc
Pas (ou peu de débogage): Le code découle de ce que l'on veut faire et pas l'inverse...c'est pas clair alors pour donner un exemple si dans ton code quelque chose ne marche pas en procédural il faut trouver où est l'erreur, en objet il n'y a pas d'erreur possible: l'analyse (uml,2tup) indique le code.
Persistence dans le temps et interchangeabilité:
Le modèle le plus connu est le MVC. Lorsque qu'un programme est dépassé en procédural il faut repartir de zéro ou rajouter des rustines pour le moindre ajout de fonctionnalité, avec l'objet il suffit de changer/ajouter les propriétés d'un objet suivant le contexte. On peut très bien utiliser l'héritage pour garder le fonctionnement ancien et le nouveau, suivant le contexte on utiliser l'objet antérieur ou le nouveau qui as les mêmes propriétés que l'ancien mais avec des variantes. De même le modèle MVC implique que chaque partie est interchangeable, mettons qu'un programme affiche quelque chose sous une forme, l'affichage et la chose à affichée étant séparée il est simple de pouvoir changer l'habillage ou même que le même objet donnant 'la chose' à afficher redirige vers autre chose qu'un écran, a contrario on change "la chose" à afficher en gardant le même visuel sans avoir à modifier la partie graphique.
Sécurité: Un programme est composé de plusieurs objet, par exemple comme un corps il a des bras, des jambes, un tronc... chaque fonction(appelée méthode en objet) est propre à sa partie(private) donc ne peut être utilisé comme faille pour accéder aux autres parties.
Bref pour internet, imaginons que tu fait un site avec beaucoup de fonctionnalités, le faire en objet permet d'utiliser le même programme (ou quasiment) tandis qu'en procédural il faut tout refaire. Effectivement l'objet PDO est un objet, donc on peut utiliser lobjet PDO pour se connecter à n'importe quelle type de base de données, il faut changer seulement l'un des attributs lors de la création(instantation) de l'objet. De même plutôt que de retaper plusieurs fois le code pour se connecter à une base mysql on utilises le même objet mais en changeant le login, mdp...etc Chaque instance ne se connectes qu'à une seule base, l'objet c'est le moule qui permet de le faire alors qu'en procédural il faut retaper les lignes qui se connectent, qui vérifient la connexion, qui renvoient les résultats...etc