[PHP] La POO

La POO [PHP] - PHP - Programmation

Marsh Posté le 18-12-2003 à 17:57:04    

Salut,
 
Je precise qu'avant de creer ce topic, j'ai fait une recherche sur HFR et sur d'autre site mais je n'ai pas eu de réponse satisfaisante. Si toutefois la reponse se trouvait sur le forum je m'excuse d'avance.
 
J'aurais voulu savoir:
- L'utilité de la poo en php
- Dans quel cas l'utiliser
- Si c'est trés couramment utilisé
 
Merci d'avance a tout ceux qui m'aideront.

Reply

Marsh Posté le 18-12-2003 à 17:57:04   

Reply

Marsh Posté le 18-12-2003 à 17:59:26    

[:drapo] aucune idée c'est quoi

Reply

Marsh Posté le 18-12-2003 à 18:00:16    

[:smileyquimangedupopcorn]


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 18-12-2003 à 18:02:35    

PHP n'est que de la simili-POO.


---------------
NOUVEAU! Le guide de l'édition en version ebook : http://marcautret.free.fr/autret/150q-ebook/
Reply

Marsh Posté le 18-12-2003 à 18:04:30    

Herr Vad a écrit :


J'aurais voulu savoir:
- L'utilité de la poo en php
la même que pour tout langage qui se prétend OO
- Dans quel cas l'utiliser
quand tu veux faire de la poo
- Si c'est trés couramment utilisé
Jusqu'à la V4, y a pas trop intérêt vu les perfs catastrophiques que ca engendre. Dans la V5 ca s'est amélioré, donc on va voir dans le futur

Reply

Marsh Posté le 18-12-2003 à 18:04:41    

Ben quand tu programmes un site, tu orientes ton développement en "objet". Ca s'utilise dans tous les cas si tu veux un code propre et facile à maintenir.
 
Mais l'objet en php n'est pour l'instant pas vraiment de l'objet (c'est du raccroc). PHP5 qui arrive bientôt sera un vrai langage objet.

Reply

Marsh Posté le 18-12-2003 à 18:05:31    

ACut a écrit :

PHP n'est que de la simili-POO.


Mis a part Eiffel, et encore c'est discutable, cite moi un seul langage qui ne fasse pas de la simili-POO

Reply

Marsh Posté le 18-12-2003 à 18:15:54    

gizmo a écrit :


Mis a part Eiffel, et encore c'est discutable, cite moi un seul langage qui ne fasse pas de la simili-POO

VB.NET  :whistle:


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 18-12-2003 à 18:16:50    

langage objet : encapsulation, héritage, polymorphisme.

Reply

Marsh Posté le 18-12-2003 à 18:18:54    

:jap:
 
Donc si j'ai bien compris, le seul interet propre à la POO est la reutilisation du code.
J'ai bien compris?

Reply

Marsh Posté le 18-12-2003 à 18:18:54   

Reply

Marsh Posté le 18-12-2003 à 18:19:44    

non. tu peux très bien faire de la réutilisation de code en procédurale.

Reply

Marsh Posté le 18-12-2003 à 18:25:58    

tape programmation objet dans google, tu auras des résumés du pourquoi de cette méthode.

Reply

Marsh Posté le 18-12-2003 à 18:34:31    

gizmo a écrit :


Mis a part Eiffel, et encore c'est discutable, cite moi un seul langage qui ne fasse pas de la simili-POO


C++


---------------
NOUVEAU! Le guide de l'édition en version ebook : http://marcautret.free.fr/autret/150q-ebook/
Reply

Marsh Posté le 18-12-2003 à 18:36:41    


 :sweat: tu le penses sérieusement ou tu es juste en avance?

Reply

Marsh Posté le 18-12-2003 à 19:04:31    

Ben moi naïvement je pensais que le C++ implantait parfaitement les trois postulats fondateurs de la POO (rappelés par chaica): encapsulation, héritage, polymorphisme. C'est donc un bon exemple de langage qui ne se la joue pas POO mais l'incarne effectivement. M'enfin ensuite on peut théoriser à l'infini.


---------------
NOUVEAU! Le guide de l'édition en version ebook : http://marcautret.free.fr/autret/150q-ebook/
Reply

Marsh Posté le 18-12-2003 à 19:28:18    

ACut a écrit :

Ben moi naïvement je pensais que le C++ implantait parfaitement les trois postulats fondateurs de la POO (rappelés par chaica): encapsulation, héritage, polymorphisme. C'est donc un bon exemple de langage qui ne se la joue pas POO mais l'incarne effectivement. M'enfin ensuite on peut théoriser à l'infini.

Heu, c'est pas le C++ qiu a un mot clé friend ?


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 18-12-2003 à 20:19:13    

ACut a écrit :

Ben moi naïvement je pensais que le C++ implantait parfaitement les trois postulats fondateurs de la POO (rappelés par chaica): encapsulation, héritage, polymorphisme. C'est donc un bon exemple de langage qui ne se la joue pas POO mais l'incarne effectivement. M'enfin ensuite on peut théoriser à l'infini.


 
Mouais, visiblement, on a pas la même notion de OO ni de perfection. Ne serait-ce que pour l'héritage, regarde ce que Meyer met en oeuvre dans Eiffel pour l'héritage multiple en losange et ce qui est possible en C++. Tu verras que ce dernier est TRES loin d'implémenter ce concept dans sa globalité.

Reply

Marsh Posté le 18-12-2003 à 20:23:11    

Vous avez sans doute raison. J'avoue que je ne suis pas assez compétent en POO pour juger de l'adéquation parfaite. Disons qu'entre PHP et C++ y a du chemin.


---------------
NOUVEAU! Le guide de l'édition en version ebook : http://marcautret.free.fr/autret/150q-ebook/
Reply

Marsh Posté le 18-12-2003 à 20:24:32    

ca, je ne dis pas le contraire, ils n'en sont qu'au début pour le php.

Reply

Marsh Posté le 18-12-2003 à 20:42:33    

C++ est pas un pur langage objet. Mais il propose les trois pré-requis nécessaires pour être considéré comme un langage objet.
Mais bon on est loin du php là.

Reply

Marsh Posté le 18-12-2003 à 21:24:00    

gizmo a écrit :


Mis a part Eiffel, et encore c'est discutable, cite moi un seul langage qui ne fasse pas de la simili-POO


T'aurais pas trop lu les bouquins de Meyer ? :D
(excellents bouquins au passage :jap:)
 
Et pourquoi Eiffel serait le seul vrai langage OO :??:
 
Et Smalltalk ? Java ? Python ?  
 
Ok, dans Java y a les types primitifs qui dérogent à la règle. Mais c'est dans un but pratique ;)


---------------
Idéaliste pragmatique gauchiste cherche camarades pour fonder un parti
Reply

Marsh Posté le 18-12-2003 à 22:29:28    

Smalltalk :D

Reply

Marsh Posté le 18-12-2003 à 22:35:22    

Ernestor a écrit :


T'aurais pas trop lu les bouquins de Meyer ? :D
(excellents bouquins au passage :jap:)
ouais. Et même si je ne suis pas d'accord avec tous ses principes et je ne peux pas blairer le personnage en lui-même, il est vachement bon
 
Et pourquoi Eiffel serait le seul vrai langage OO :??:
Bah c'est le plus abouti dans le concept pour moi.
 
Et Smalltalk ? Java ? Python ?  

- Smalltalk: pas mauvais en effet, ca fait longtemps que je n'y ai plus touché, mais dans mes souvenirs, il y avait des lacunes dans le polymorphisme.
- Java: Au plus j'en fait, au moins je trouve qu'il est OO :/ Le jour où ils arreteront de prendre les gens pour des crétins avec leurs slogans comme "l'héritage multiple, c'est le mal" qu'il auront une véritable gestion du polymorphisme et des méthodes finales dont on peut être sûr qu'elles seront appelées, on en rediscutera.
- Python: Ecriture très propre, héritage et encapsulation très honorables, mais ce n'est pas encore suffisant au niveau du DbC

 
Ok, dans Java y a les types primitifs qui dérogent à la règle. Mais c'est dans un but pratique ;)
on va dire ça [:ddr555]
 

Reply

Marsh Posté le 18-12-2003 à 22:45:22    

C'est quoi qui te dérange dans le polymorphisme et Java ?
 
Et puis bon, faut s'abstraire du discours marketing, toujours puant par principe [:spamafote]


---------------
Idéaliste pragmatique gauchiste cherche camarades pour fonder un parti
Reply

Marsh Posté le 18-12-2003 à 22:58:22    

En ce qui me concerne la POO en PHP n'est la que pour faire des programmes illisibles, mélangeant tous les différents paradigme.

Reply

Marsh Posté le 18-12-2003 à 23:21:31    

R3g a écrit :

Heu, c'est pas le C++ qiu a un mot clé friend ?

je crois que vous confondez la théorie de l'objet et la POO. La POO c'est une application, avec ses imperfections et ses contraintes (dès fois à la con (je pense aux langages qui s'interdissent l'héritage multiple)).
 
ex : les langages où tout est objet c'est bien, mais ça se paie. Toute fonctionnalité à un prix. en fonction du langage, cette volonté de payer varie. Par exemple, le C++ est un langage qui vise à produire du code performant et écrire des systèmes et sa devise c'est « on ne paie que pour ce que l'on consomme », ce qui explique par exemple le fait que par défaut, les fonctions membres (et l'héritage) ne soit pas virtual.

Reply

Marsh Posté le 28-01-2005 à 12:46:14    

UP
 
Le topic est vieux mais j'aimerais savoir ce qu'il en est maintenant. (cf: mes 3 questions plus haut).

Reply

Marsh Posté le 28-01-2005 à 13:47:35    

En ce qui me concerne ça me permet d'organiser plus naturellement mon code, et d'avoir un résultat que je trouve plus propre, plus simple à lire et comprendre.


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 28-01-2005 à 13:59:54    

En ce qui me concerne je suis passer a PHP au moment ou je commancais a en avoir marre de Java et de sa structure super-stricte, maintenant j'ai pas mal changé et je commance a apprecier a nouveau le coté bien rangé, et donc je commance gentillement a me mettre a faire des scripts O.O en PHP pour que ce soit plus propre.. Par exemple dans un projet en cours j'utilise une architecteur assez "Unix" pour mon site (un coeur qui load d'autres scripts selon les besoins de la page) et la j'ai trouvé assez pratique la OO parceque ca me permet de stocker les fichers selon ce qu'ils font et non pas selon la page a laquelle ils servent


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 28-01-2005 à 14:00:54    

esox_ch a écrit :

j'ai trouvé assez pratique la OO parceque ca me permet de stocker les fichers selon ce qu'ils font et non pas selon la page a laquelle ils servent


Wala, c'est à peu près ce que je voulais dire.


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 24-01-2010 à 23:24:18    

le topic est vieux, j'aimerais savoir ce qu'il en est maintenant. Est-ce le moment de se lancer dans la POO maintenant qu'on a php5 ?

Reply

Marsh Posté le 25-01-2010 à 09:36:59    

oui , largement


---------------

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed