Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Je n'en peux plus je comprend rien à la POO

6 réponses
Avatar
David C.
Je n'en peux plus je comprend rien à la programmation orientée objet,
j'ai beau lire la doc de l'enstimac mais je ne comprend
pas à quoi sert la fonction bless, et je ne vois pas l'interet
de faire cela car j'ai l'impression que la creation de simple
subroutine dans le programme donneraient le meme resultat.

Aidez moi svp

David

6 réponses

Avatar
Philippe Bricout
"David C." écrivait dans l'article
news::

Je n'en peux plus je comprend rien à la programmation orientée objet,
j'ai beau lire la doc de l'enstimac mais je ne comprend
pas à quoi sert la fonction bless, et je ne vois pas l'interet
de faire cela car j'ai l'impression que la creation de simple
subroutine dans le programme donneraient le meme resultat.



Qu'avez-vous lu au juste ?

Je vous conseillerais de lire d'abord les pages relatives aux structures de
données et aux réferences : perldsc, (perllol), perlreftut, perlref
... puis celles qui concernent plus précisément les objets : perltoot,
perlobj, perlbot

Avatar
Jean-Luc Ancey
David C. wrote:

je ne vois pas l'interet
de faire cela car j'ai l'impression que la creation de simple
subroutine dans le programme donneraient le meme resultat.


Mais bien entendu! Tous les résultats que la POO
obtient peuvent être obtenus par de la programmation
procédurale, personne ne le conteste. C'est une
question de style. Après, on peut discuter de la
rapidité d'exécution, de la facilité d'écriture et
de maintenance... mais les résultats, on peut
toujours les obtenir avec ou sans POO.

Maintenant, le sens de votre question est peut-être
"pourquoi je me casserais la nénette à apprendre
quelque chose de nouveau alors que je fais tout ce
que je veux avec ce que je sais déjà?" En clair,
est-ce que le jeu en vaut la chandelle? Eh bien, ce
n'est pas certain, en effet, et c'est à vous d'en
décider.

Avatar
David C.
Maintenant, le sens de votre question est peut-être
"pourquoi je me casserais la nénette à apprendre
quelque chose de nouveau alors que je fais tout ce
que je veux avec ce que je sais déjà?" En clair,
est-ce que le jeu en vaut la chandelle? Eh bien, ce
n'est pas certain, en effet, et c'est à vous d'en
décider.


:-)

D'accord ca me rassure c'est pour ca que je me prend la tete
à comprendre cela alors que c'etait aussi simple que je le
pensai.

Avatar
David C.
Mais bien entendu! Tous les résultats que la POO
obtient peuvent être obtenus par de la programmation
procédurale, personne ne le conteste. C'est une
question de style. Après, on peut discuter de la
rapidité d'exécution, de la facilité d'écriture et
de maintenance... mais les résultats, on peut
toujours les obtenir avec ou sans POO.


A mon avis en POO on peut corriger plus facilement des
scripts c'est evident car c'est moin lourd, donc je vais
m'y mettre.

Avatar
root
On Thu, 21 Aug 2003 10:10:52 +0200, David C. wrote:

Je n'en peux plus je comprend rien à la programmation orientée objet,
j'ai beau lire la doc de l'enstimac mais je ne comprend
pas à quoi sert la fonction bless, et je ne vois pas l'interet
de faire cela car j'ai l'impression que la creation de simple
subroutine dans le programme donneraient le meme resultat.



C'est vrai que l'OO de Perl est plutôt «déroutant» au premier abord ...

Je pense qu'il faut d'abord commencer par bien comprendre le mécanisme
de «package» et de «namespace» (espace de nommage), ensuite l'OO doit
passer plus naturellement.

Avatar
Alex Marandon
In article , David C. wrote:
Je n'en peux plus je comprend rien à la programmation orientée objet,
j'ai beau lire la doc de l'enstimac mais je ne comprend
pas à quoi sert la fonction bless, et je ne vois pas l'interet
de faire cela car j'ai l'impression que la creation de simple
subroutine dans le programme donneraient le meme resultat.


La fonction bless permet d'associer un package à une référence. Ainsi
lorsqu'on utilise l'opérateur -> pour appeler un fonction, ou plutôt une
méthode en l'occurence, Perl sait dans quel package aller la chercher et
il passe implicitement la référence en question (l'instance) en premier
argument de la méthode, ce qui permet à la méthode de travailler avec
l'instance.

Je crains de t'avoir embrouillé encore plus.