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 :

Question sur la performance


Sujet :

Langage Java

  1. #1
    Membre averti Avatar de Soulama
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 619
    Points : 416
    Points
    416
    Par défaut Question sur la performance
    Bonjour,
    ect quil ya une difference(du point de vue performance) entre les deux codes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for ( Object obj : objectList )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for ( final Object obj : objectList )
    Merci
    Apprends la science de celui qui sait, et enseigne ta science à celui qui ignore, comme ca, tu auras appris ce que tu ignores et utilisé ce que tu sais.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 554
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 613
    Points
    21 613
    Par défaut
    A priori non, le bytecode devrait être le même.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Expert confirmé

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Points : 4 324
    Points
    4 324
    Par défaut
    Bonjour,

    Non je ne pense pas,

    Par contre je t'invite à lire ce billet.
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Points : 1 419
    Points
    1 419
    Par défaut
    Dans ce cas précis, probablement pas.

    Cependant, c'est une bonne pratique que de le mettre. Ceci évitera à d'autres codeurs de se tromper lorsqu'ils tenteront de changer éventuellement la variable.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 156
    Points : 190
    Points
    190
    Par défaut
    Au niveau performance non, encore que le bytecode puisse éventuellement être optimisé quand la variable est déclaré final : exécution en parallèle, cependant l'environnement d'exécution devrait aussi pouvoir se rendre compte que l'on ne touche pas à la variable.

    L'intérêt du final est de permettre la création de classe interne dans la boucle for.

    Est ce qu'il s'agit d'une partie critique de ton programme, dans ce cas il n'est peut être pas nécessaire d'utiliser des objet.

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 554
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 554
    Points : 21 613
    Points
    21 613
    Par défaut
    Euh, l'intérêt premier du final est d'empêcher de redéfinir la variable, ce qui entre autre permet d'y accéder dans des classes internes, oui, mais est aussi un intérêt en soi.

    Il paraît que c'est une bonne pratique d'utiliser final quand on ne compte pas redéfinir une variable. Moi je dis que ça complique le code, mais bon...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Expert confirmé

    Homme Profil pro
    SDE
    Inscrit en
    Août 2007
    Messages
    2 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : SDE

    Informations forums :
    Inscription : Août 2007
    Messages : 2 013
    Points : 4 324
    Points
    4 324
    Par défaut
    Bonjour,

    Citation Envoyé par thelvin Voir le message
    Euh, l'intérêt premier du final est d'empêcher de redéfinir la variable, ce qui entre autre permet d'y accéder dans des classes internes, oui, mais est aussi un intérêt en soi.

    Il paraît que c'est une bonne pratique d'utiliser final quand on ne compte pas redéfinir une variable. Moi je dis que ça complique le code, mais bon...
    Je pense que c'est une question de gout, ajouter final ne complique rien, au contraire ça évite les erreurs. Dans 90% des cas une référence devrait être final.

    Attention, final marque la référence et non pas l'instance. C'est pas parce qu'une référence est final qu'elle deviendra immuable si elle ne l'est pas.
    http://alaindefrance.wordpress.com
    Certifications : SCJP6 - SCWCD5 - SCBCD5 - SCMAD1
    SDE at BitTitan

Discussions similaires

  1. Question sur les performance d'une transaction SQL
    Par SlashEne dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 24/04/2008, 22h41
  2. Question sur la performance entre 2 cas
    Par casper83 dans le forum Développement
    Réponses: 9
    Dernier message: 18/04/2008, 22h28
  3. Question sur la performance des événements
    Par stephane.julien dans le forum C#
    Réponses: 8
    Dernier message: 11/04/2008, 10h58
  4. Petite question sur les performances de Postgres ...
    Par cb44 dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 13/01/2004, 13h49

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