Page 1 sur 1

Je bloque sur la POO et exception

Posté : 18 juin 2008, 00:00
par johnvox
Bonjour, voila mon petit soucis, je developpe avec PHP depuis 1 ans et demin a peu près, je suis loin d'en avoir fais le tour bien sur.
Mais je flanche sur tout ce qui est programmation orienté objet et gestion des exceptions j'ai un peu du mal avec l'héritage le polymorphisme et tout ça !

Pouvez me dire ou trouver de quoi me renseigner pour combler mes lacunes !

Merci d'avance !!

Posté : 18 juin 2008, 06:11
par Cyrano
Un peu de matière qui devrai t'aider à avancer.

Posté : 18 juin 2008, 22:23
par johnvox
ok merci beaucoup je vais voir ça de suite

Posté : 23 août 2008, 05:19
par x@v
en même temps c'est le quotidien du débutant, ne flanche pas.
Tu n'es pas obligé de tout comprendre pour commencer à apprendre.
Maintenant tu peux attendre de comprendre pour ne rien comprendre.
pose t'es questions avec pertinences en fonction de tes travaux...
La patiente n'est pas toujours soeur de la sagesse.

Posté : 23 août 2008, 09:31
par Cyrano
en même temps c'est le quotidien du débutant, ne flanche pas.
Tu n'es pas obligé de tout comprendre pour commencer à apprendre.
Maintenant tu peux attendre de comprendre pour ne rien comprendre.
pose t'es questions avec pertinences en fonction de tes travaux...
La patiente n'est pas toujours sœur de la sagesse.
:shock: Je me demande comment il faudrait comprendre ça, en particulier la dernière phrase...

Bien sur que si "la patience est sœur de la sagesse", c'est vrai pour n'importe quel type d'apprentissage, il faut de la patience pour convenablement assimiler tous les aspect d'un problème et la manière de le résoudre.

Ce qu'il faut éviter, c'est de confondre vitesse et précipitation;
Ce qu'il faut s'efforcer de faire, c'est d'avancer un pas à la fois. Si tu avances les deux pieds en même temps, tu va te retrouver le c** par terre et tu ne seras pas plus avancé ;) Il faut donc franchir chaque étape individuellement avec patience : quand tu as bien assimilé une étape, tu passes à la suivante. On commence par comprendre la notion même d'objet avant de se lancer dans le polymorphisme, parce qu'avant d'en arriver là, il y a d'autres aspects à prendre en compte : l'héritage, les notions de "public/protégé/privé" pour les méthodes et/ou les propriétés d'un objet, la surcharge, et bien d'autres choses encore ...

J'ajouterais enfin une méthode d'apprentissage qui a deux avantages importants : bien commenter son code.
- Le premier avantage, c'est que le code sera facilement compréhensible par d'autres, et c'est très important lorsqu'on travaille en équipe : tes collèges ne devraient pas à devoir décortiquer une classe complètement pour en comprendre les mécanisme, si donc il y a les bons commentaires, au lieu de deux heures (ou deux jours voire deux semaines), il faudra quelques minutes pour prendre en main ton code;
- Le second, à mon avis encore plus important lorsqu'on apprend, c'est qu'on comprendra d'autant mieux ce qu'on est soi-même en train de coder et c'est en outre un apprentissage d'un minimum de discipline. Un programmeur discipliné perdra moins de temps.

Posté : 23 août 2008, 17:37
par x@v
Ce qu'il faut s'efforcer de faire, c'est d'avancer un pas à la fois. Si tu avances les deux pieds en même temps, tu va te retrouver le c** par terre et tu ne seras pas plus avancé Wink
Ont peux aussi essayer non pas d'apprendre à marcher, mais essayer de courir pour apprendre à marché, c'est ma méthode.
Les enfants coure quand ils savent à peine marché.
Faut prendre ce que je dit avec légerté.

Posté : 23 août 2008, 17:53
par Sékiltoyai
Dans ce cas apprends à tomber, tu en auras besoin.

Je prendrais l'exemple de la musique qui est l'un des domaines que je connais le mieux. Prenons un morceau, on peut très bien l'apprendre très vite et du coup, on va très vite croire savoir le jouer plus lentement. Mais ce que l'on fera sera on ne peut plus brouillon. Sinon il y a la bonne méthode, à savoir commencer à 50% et le jouer parfaitement pour augmenter peu à peu la vitesse et parvenir enfin à être carré à la vitesse normale…
Et ce fonctionnement se retrouve un peu partout, dans le sport par exemple (crois tu que les pilotes apprennent à prendre un virage à 300 km/h ?), ou bien dans une gestion de projet de tout type (ceux qui commencent le développement tout de suite en zappant étude et cahier des charges, crois tu qu'ils ont une chance de le finir un jour ?).
Donc ce que tu proposes est tout simplement une abbération, tu ne courres pas pour avancer plus vite, tu courres pour te prendre un mur…

Posté : 23 août 2008, 19:12
par x@v
Est-ce qu'ont n'est obligé de tout connaître par cœur, je crois qu'il faut s'épanouir dans l'activité qui nous tient à cœur.
L'exigence pourra venir du plaisir pris et au moment opportun et si la situation s'y prete.
Pied au planché le padawan pourra être parfait (Dieu sa existe !)
Tout fonctionne à l'adréaline.

Posté : 23 août 2008, 19:17
par Sékiltoyai
Est-ce qu'ont n'est obligé de tout connaître par cœur
Je suis curieux de savoir où est ce que l'un quelconque d'entre nous auraît ne serait ce qu'insinué cela. Le par cœur est une abbération, personne ne l'a prôné. On suggère la méthode et la rigueur, faire les choses bien plutôt que vite, non le gavage.
je crois qu'il faut s'épanouir dans l'activité qui nous tient à cœur.
Il en va de soi.

Posté : 23 août 2008, 22:36
par AB
Si je choisissais de retenir quelque chose que je trouve sensé dans ton message, je dirais :
"Faut pas attendre de tout savoir pour commencer à apprendre".

Le reste, comme l'ont expliqués Cyrano et Sehiltoyai, ça fait comme de la friture sur la ligne et brouille la compréhension du message :wink:

Pour continuer la comparaison avec l'apprentissage de la pratique d'un instrument de musique, si l'on parle du piano, il faut commencer très lentement pour bien assimiler le ressenti des articulations, indispensable à la nuance (de pianissimo à forte ainsi que les intermédiaires) et à l'indépendance des doigts.
Tu peux bien entendu essayer de jouer un morceau à l'arrache, mais alors tous tes efforts pour y parvenir seront inexploitables (ou très peu) par ailleurs. C'est ce qui fait que certaines personnes, au départ douées puisqu'elles réussissent certains morceaux assez difficiles sans trop d'apprentissage, finissent souvent par abandonner. Car pour compenser leur manque de maîtrise, elle vont rigidifier leur mouvement pour arriver à leur fin. Et même si cela peut produire un résultat satisfaisant à l'écoute, c'est une mauvaise habitude apprise qu'il faudra vite oublier pour le reste. Or il est beaucoup plus facile de prendre de bonnes habitudes, que de se défaire des mauvaises...

Il faut donc bien différencier la découverte d'une discipline (souvent faite sous forme de jeu ou tout est permis) de son apprentissage qui la plupart du temps (à vrai dire je ne connais pas de contre exemple) se fait par étapes successives progressives.

Concernant les enfants qui essayent de courir avant de savoir marcher, on pourrait voir le problème sous un autre angle : Comme au départ ils ont déjà du mal à se tenir en équilibre simplement sur leur deux pieds, ils savent d'autant moins rétablir le déséquilibre induit par leur premier pas. Et pour éviter de se rétamer trop vite ils enchainent une série de pas qui peut ressembler à de la course avant de finalement atterrir sur le plancher, mais leur intention première n'est pas de courir, elle est simplement de ne pas tomber.
Et cela n'est pas pour autant contradictoire avec le fait qu'à peine savent-ils marcher, les enfants aiment courir :wink:


Bon, c'est l'heure de la récré ... j'y cours!

Posté : 23 août 2008, 23:08
par Sékiltoyai
Pour continuer la comparaison avec l'apprentissage de la pratique d'un instrument de musique, si l'on parle du piano, il faut commencer très lentement pour bien assimiler le ressenti des articulations, indispensable à la nuance (de pianissimo à forte ainsi que les intermédiaires) et à l'indépendance des doigts.
Tu peux bien entendu essayer de jouer un morceau à l'arrache, mais alors tous tes efforts pour y parvenir seront inexploitables (ou très peu) par ailleurs. C'est ce qui fait que certaines personnes, au départ douées puisqu'elles réussissent certains morceaux assez difficiles sans trop d'apprentissage, finissent souvent par abandonner. Car pour compenser leur manque de maîtrise, elle vont rigidifier leur mouvement pour arriver à leur fin. Et même si cela peut produire un résultat satisfaisant à l'écoute, c'est une mauvaise habitude apprise qu'il faudra vite oublier pour le reste. Or il est beaucoup plus facile de prendre de bonnes habitudes, que de se défaire des mauvaises...
A ce que je vois c'est la même chose pour tous les instruments, (quelque soit le nombre de cordes :D) :)