IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[POO] Conception objet, les variables [PHP 5.0]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Avatar de keaton7
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    743
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 743
    Par défaut [POO] Conception objet, les variables
    Bonjour,

    J'aimerai savoir lequel de ces 3 exemples est préférable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // Exemple 1
    $MonObjet = new MonObjet;
    $MonObjet->maPropriete = 12;
     
    // Exemple 2
    $MonObjet = new MonObjet;
    $MonObjet->attribuer("maPropriete",12);
     
    // Exemple 3
    $MonObjet = new MonObjet;
    $MonObjet->attribuerMaPropriete(12);
    D'avance merci pour vos suggestions.

  2. #2
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Salut,

    l'exemple 1 est à réserver à des petits projets en RAD. C'est juste bon à gagner un peu de temps sur le codage.

    Les deux autres exemples se valent.

    L'exemple 3 est celui de la rigueur absolue et le plus rigide à coder.

    L'exemple 2 est assez à la mode, Et il peut ensuite revenir sur l'exemple 3 grâce à la méthode 'magique' _call

  3. #3
    Membre très actif
    Avatar de keaton7
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    743
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 743
    Par défaut
    Bonjour,

    Merci pour ta reponse, precise, et concise.

    Je travaille sur un la création d'un CMS, dont j'essaie au maximum de respecter des motifs de conceptions stricts. Ce CMS va servir a alimenter une bonne quantité de sites.

    Pour le moment, j'utilise la 1ere méthode, d'après ton exemple, je devrai passer a l'une des 2 suivantes (j'ai bien fait de poser la question ^^).

    Laquelle me conseillerais-tu sur ce genre de projet ?

    C'est quoi un petit projet en "RAD" ?

  4. #4
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    RAD = Rapid Application Development. Du vite fait, bien fait si possible.

    Le choix le plus souple est le 2.
    Le choix le plus rigoureux est le 3.

    You choose.

  5. #5
    Membre très actif
    Avatar de keaton7
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    743
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 743
    Par défaut
    Bon je vais opter pour le rigoureux, mon code est déjà loin d'être souple ^^.

    Mais d'ailleurs, pourquoi l'exemple 1 est-il déconseillé ?

    Il ne me semble pas que ça existe dans les langages objet cette première syntaxe ?

  6. #6
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Mais d'ailleurs, pourquoi l'exemple 1 est-il déconseillé ?
    Parce que comme son nom l'indique un attribut public est ... public ^_^. Et donc il peut être modifié par n'importe quoi sans aucun controle sur la modification.
    Citation Envoyé par keaton7 Voir le message
    Il ne me semble pas que ça existe dans les langages objet cette première syntaxe ?
    Si elle existe , c'est juste que généralement on ne déclare pas des attribut public et on passe comme dans les solution 2 ou 3 par des getter/setter
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/02/2007, 09h57
  2. [POO] Contenu d'une variable nom d'un objet
    Par reventlov dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/05/2006, 17h04
  3. Classe, typer les variables d'un objet.
    Par Choupi dans le forum Général Python
    Réponses: 3
    Dernier message: 20/04/2006, 18h15
  4. [POO] débutante dans les objets COM
    Par SandraG dans le forum Langage
    Réponses: 11
    Dernier message: 16/03/2006, 12h03
  5. [POO] projet ->soutirer les classes objets
    Par .:dev:. dans le forum C++
    Réponses: 10
    Dernier message: 14/06/2005, 23h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo