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 Java Discussion :

Performance methode parametre


Sujet :

Langage Java

  1. #1
    Membre du Club

    Inscrit en
    Avril 2005
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 246
    Points : 57
    Points
    57
    Par défaut Performance methode parametre
    Bonjour,
    Petite question d'implémentation java , quel est le plus performant

    Ecrire deux methodes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    changerCouleurBlanc() couleurChat = blanc
     
    changerCouleurNoir() couleurChat = Noir
    ou bien une avec en parametres le nom de la couleur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    changerCouleur(String couleur) if (couleur == blanc)
    couleurChat = blanc
    else if (couleur == noir)
     couleurChat = Noir
    sachant que je ne veux pas faire pour d'autres rasions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    changerCouleur(String couleur)
    couleurChat = couleur
    JE veux simplemetn savoir quel est le plus permformant?

    Merci

  2. #2
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par c+cool Voir le message
    JE veux simplemetn savoir quel est le plus permformant?
    Autant te dire que la différence est tellement ridicule qu'il vaut mieux dire que c'est pareil

    Mais on peut dire que la première méthode (en considérant une couleur comme un string (ce qui est éventuellement à revoir)), permet de ne pas avoir quelque chose d'incohérent.
    Je ne répondrai à aucune question technique en privé

  3. #3
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 562
    Points : 15 502
    Points
    15 502
    Par défaut
    Le premier est théoriquement plus rapide (un condition en moins) mais comme le fait remarque millie, ça sera que toute façon négligeable.

    Si tu veux limiter le nombre de cas acceptés par ta fonction, le plus propre serait de recourir a une enum.

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    coté perfs, aucun différence qui nécessitent que tu te gratte la tête. Si ton chat peux n'avoir que 2 couleur, le mieux reste un enum:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public void setCouleur(Couleur couleur) {this.couleur=couleur;}
    ....
    public enum Couleur {BLANC,NOIR}
    En tout cas, multiplier les méthodes, c'est anti performant d'un point de vue développement. Tu duplique le code de changement de couleur (ok il est simple mais rien ne dit que tu ne va pas devoir le complexifier plus tard), et tu alourdi uniquement l'api (ce qui va faire chier le programmeur qui va devoir l'utiliser).

    Parce que imagine ta classe plus tard avec les méthodes

    changerCouleurBlanc()
    changerCouleurNoir()
    changerCouleurGris()
    changerCouleurTigreGrisBlanc()
    changerCouleurBariolleGrisBrunBlancNoir()

    ca va vite être difficile à lire pour le programmeur.

  5. #5
    Membre du Club

    Inscrit en
    Avril 2005
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 246
    Points : 57
    Points
    57
    Par défaut
    en considérant une couleur comme un string (ce qui est éventuellement à revoir)),
    C'est un exemple inventé sur le champs ... JE voulais simplement avoir vos impressions sur la performance...
    En tout cas merci pour vos infos, dans mon cas précis il s'agirait de faire 5 méthodes ou 5 tests dans une méthode... Je pense donc suivre ce qu'a dit tchize merci!!

Discussions similaires

  1. web service cxf - method parametre null
    Par bordi dans le forum Services Web
    Réponses: 1
    Dernier message: 05/09/2009, 17h15
  2. [HTTP]passage de parametres via la methode post
    Par abdou.sahraoui dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 03/03/2008, 14h11
  3. valeur par defaut d'un parametre d'une methode
    Par le y@m's dans le forum C++
    Réponses: 16
    Dernier message: 04/05/2005, 20h23
  4. [Reflection][Method] Passage de int en parametre
    Par seb_fou dans le forum API standards et tierces
    Réponses: 8
    Dernier message: 28/07/2004, 17h47
  5. Réponses: 5
    Dernier message: 19/07/2004, 11h16

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