RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 PHP5 est-il vraiment objet ?

Forum : PHP
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ PHP

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGES : [1] [2] [3] [4]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM PHP

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
Bloodshed
Membre du club
Avatar de Bloodshed
Inscrit : 07/01/2004
Messages : 1725
Message
#58517
Posté le 31/03/05 à 19:10
http://www.nexen.net/docs/php/annotee/language.oop5.overloading.php
Smiley

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

MisterV
Membre du club
Avatar de MisterV
Inscrit : 21/05/2004
Messages : 1603
Message
#58518
Posté le 31/03/05 à 19:27
pourriez vous preciser ce qu'est la virtualité ??

et puis sinon, perso je concidere dores et deja php comme un language objet. Même s'il ne possede pas tous les outils objets, la volonté y est, et je pense que ca va evoluer dans ce sens.
__________________________
GGrrrrrrrrr.............

Comment poser une question ?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

merrheim
Membre du club
Chef de projet(s) :
- MXClass

Inscrit : 16/12/2004
Messages : 515
Message
#58560
Posté le 01/04/05 à 08:16
On crée une classe dont on ne précise pas une méthode. Cette classe est virtuelle et on ne peut l'instancier. On hérite de cette classe et on précise cette méthode non définie. Plusieurs classes différentes peuvent hériter de la classe de base. C'est un outil redoutablement efficace pour la réutilisation de code.
Je ne sais pas si c'est faisable en php.
__________________________
MXZone 0.2 : AJAX and Web 2.0

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

MisterV
Membre du club
Avatar de MisterV
Inscrit : 21/05/2004
Messages : 1603
Message
#58571
Posté le 01/04/05 à 09:11
Oki je vois, moi j'appele ca l'abstraction et pas la virtualité, mais bon le resultat est le meme Smiley

Et oui, c'est faisable tout a fait en php, et c'est en effet fort utile !!

++
__________________________
GGrrrrrrrrr.............

Comment poser une question ?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

lovejava
Membre du club
Chef de projet(s) :
- Hughobot

Avatar de lovejava
Inscrit : 13/07/2004
Messages : 639
Message
#58719
Posté le 02/04/05 à 12:30
Oui MisterV c'est exactement ça ;) sauf qu'en C++ merrheim si on ne spécifie pas =0 à la fin de la méthode, elle est juste virtuelle, mais pas forcément abstraite. En tout cas, en C++, la virtualitée (pas l'abstraction) c'est :
on a une classe A qui définit une méthode affiche() normale et une méthode getNomClasse() virtuelle (mais pas abstraite)
on a une classe B qui hérite de A. Cette classe redéfinit la méthode affiche et la méhtode getNomClasse().

Mettons que la méthode affiche de A renvoi "classe A" et celle de B "classe B", et getNomClasse() renvoi "A" pour la classe A et "B" pour la classe B.

Si on déclare une variable de type A, mais qu'on lui assigne une valeur de type B, par exemple en C++
A variableA;
B variableB;
variableA = variableB;

en php je ne saurais pas dire, car je ne sais pas comment typer un objet. Si on appelle la méthode affiche() de variable A, on devrait obtenir : "classe A" mais si on appelle la méthode getNomClasse(), on devrait obtenir "B". L'abstraction c'est pareil, sauf que comme di merrheim, la méthode abstraite n'as pas de corps (= elle est vide, elle ne fait rien) et la classe B est obligée de la redéfinire. De plus, une classe contenant une ou plusieurs méthode abstraites ne peut être instanciée.
Je savais pas que c'était possible en PHP
Smiley enfin je ne connais pas beaucoup ce language. Par contre, ce que vous avez dit précedemment, c'est un vrai problème les codes mi-objet/mi-procédural : c'est en général pas très propre, pas très logique, et compliqué à comprendre.
__________________________
Lorsque touts les arbres auront été coupés, Lorsque touts les animaux auront été chassés, Lorsque touts les poissons auront été pêchés;
Alors l'homme découvrira que l'argent ne se mange pas.
------ |_o/e _|a/a---------

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

PowOx
Membre du club
Avatar de PowOx
Inscrit : 22/08/2004
Messages : 494
Message
#58771
Posté le 02/04/05 à 16:35
Mab, voila comment je fais ma surcharge :


function __call($nomMethode,$arrayArguments) { $nbrArgument=func_num_args()-1; switch($nbrArgument) { case 1 : if(is_int($arrayArguments[0])) { echo 'type int'; } break; case 2 : echo '2 arguments'; break; } if(is_string($arrayArguments[0])) { echo 'type string'; } }


y'a ptet mieux, mais perso, je trouve ça pas mal

PowOx

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

masseuro
Membre MP
Avatar de masseuro
Inscrit : 17/11/2004
Messages : 195
Message
#60995
Posté le 21/04/05 à 17:50
Pour moi php5 saura autant objet que java.
c'est à dire que par derrière il fonctionnera en procédural. Mais bon c'est déjà largement suffisant.
Ah si on pouvait faire passer les objets de page en page on ferait des bo match de tennis :)
__________________________
rien ne sert de coder pour coder il suffit de coder à point. La fontaine (ah non c'est pas ça qu'il a dit?)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

Bloodshed
Membre du club
Avatar de Bloodshed
Inscrit : 07/01/2004
Messages : 1725
Message
#61000
Posté le 21/04/05 à 18:04
[quote]Ah si on pouvait faire passer les objets de page en page on ferait des bo match de tennis :)[/quote]
Tu peux, utilise la fonction serialize() (va voir dans un de mes cours POO en PHP j'en parle (le deux je crois).

ERREUR BBCODE SUR CE MESSAGE :
- La valeur de la balise "quote" n'est pas correcte !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

malag
Membre MP
Inscrit : 16/07/2004
Messages : 169
Message
#70261
Posté le 22/07/05 à 13:22
En effet la sérialisation est fort utile, et tous les langages objets digne de ce nom comme le php l'ont.
La méthode sérialize stocke l'instance de la classe dans une chaîne. Après tu peux la passée dans une variable de session et la stockée dans une base de données.
Et bien entendu pour récupèrer l'instance de la classe tu fais un unserialze sur la chaîne.
Enfin va voir dans les cours POO du site c'est très bien expliqué :P:

Personellement je n'utilise presque plus que des classes pour développer en php, ca a révolutionner ma manière de programmer en php. D'ailleurs je suis en train de reprogrammer mon jeu php en utilisant plus de classes.
Et a ce niveau la sérialisation est fort utile pour moi.
__________________________
Webmaster du site : http://www.simasgar.new.fr , jeu de gestion / stratégie en ligne

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Binabik
Nouveau membre
Inscrit : 29/08/2005
Messages : 1
Message
#73834
Posté le 29/08/05 à 14:54
Ben PHP est résolument objet quoi qu'on en dise ... il ne l'est peut-être pas assez mais je crois que la notion objet de php5 reste adapté à la plupart de sites voir plus (nombres de WM se mette à coder objet pour un oui ou pour un non ).

quoi qu'il arrive avec un peu de reflexion on se sort bien de toutes les situations que l'on pourrait résoudre avec d'autres langages genre c++ pour ne citer que celui là

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM PHP



    PAGES : [1] [2] [3] [4]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.