10-04-2009, 01:56 PM
Je pense que kéké a bien résumé la partie base de données.
C'est bien de programmer en POO mais quel intérêt cela a t-il si tu n'en comprends pas le sens ? Elle n'a pas pour objectif un effet de style (même si ce n'est pas tout à fait vrai).
Le concept fondamental à retenir c'est qu'elle sert à dissocier l'interface utilisateur de l'interface machine.
Je vais te donner un exemple simple.
Lorsque tu utilises une voiture, tu insères la clé (qu'elle soit métallique,
électronique, magnétique), tu démarres sans avoir besoin de savoir ce que fait la voiture au niveau contrôles et commandes mécaniques.
Pour ton code ça doit être la même chose, tout ce qui est extérieur à ton objet n'a pas besoin de savoir comment il fonctionne à l'intérieur, d'où l'intérêt de restreindre la visibilité de tes méthodes à la classe qui les contient (bien entendu c'est au cas par cas, certaines méthodes doivent être public pour obtenir certaines propriété de l'objet).
Actuellement tu as un amas de méthodes, ton code serait plus efficace rangé en fonction selon la programmation procédurale.
J'ai tracé dans les grandes lignes.
Mais (et c'est là l'humour de la situation), il faut programmer en POO pour comprendre la POO...
C'est bien de programmer en POO mais quel intérêt cela a t-il si tu n'en comprends pas le sens ? Elle n'a pas pour objectif un effet de style (même si ce n'est pas tout à fait vrai).
Le concept fondamental à retenir c'est qu'elle sert à dissocier l'interface utilisateur de l'interface machine.
Je vais te donner un exemple simple.
Lorsque tu utilises une voiture, tu insères la clé (qu'elle soit métallique,
électronique, magnétique), tu démarres sans avoir besoin de savoir ce que fait la voiture au niveau contrôles et commandes mécaniques.
Pour ton code ça doit être la même chose, tout ce qui est extérieur à ton objet n'a pas besoin de savoir comment il fonctionne à l'intérieur, d'où l'intérêt de restreindre la visibilité de tes méthodes à la classe qui les contient (bien entendu c'est au cas par cas, certaines méthodes doivent être public pour obtenir certaines propriété de l'objet).
Actuellement tu as un amas de méthodes, ton code serait plus efficace rangé en fonction selon la programmation procédurale.
J'ai tracé dans les grandes lignes.
Mais (et c'est là l'humour de la situation), il faut programmer en POO pour comprendre la POO...
L'amphore à métaphore...