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

avec Java Discussion :

Les methodes statiques, biens ou mauvaises, comment les eviter ?


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Programmeur
    Inscrit en
    Novembre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mali

    Informations professionnelles :
    Activité : Programmeur
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Les methodes statiques, biens ou mauvaises, comment les eviter ?
    Bonjour tout le monde. Tout d'abord je suis sur le site ça fait un bout de temps et c'est la première fois que je poste.
    A vrai dire je me contentais juste des tutos du site.

    Bon voilà je code en java depuis quelques mois et je le fais n'importe comment sans organisation ce qui compte c'est
    juste le resultat que ça marche, et bien j'ai voulu mettre un peu de changement dans ma façon de faire et j'ai décidé de
    suivre des tutos en fin de m'organiser un peu dans les projets mais je n'arrive toujours pas à me faire passer du static
    et apparemment c'est deconseillé et je sollicite vraiment votre aide sur le sujet. Merci d'avance et excusez mes sorties
    de route.

  2. #2
    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
    Les méthodes statiques ne sont pas fondamentalement mauvaise. Mais elles doivent avoir de bonne raison d'être statiques.

  3. #3
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Exacement. Les méthodes statiques ne sont pas mauvaises quand elles sont utilisés correctement. Il faut juste faire attention à ne pas en abuser car sinon la qualité du code diminuera

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 156
    Points : 165
    Points
    165
    Par défaut
    L'utilisation de méthodes statiques n'est pas fondamentalement un problème à partir du moment où tu comprends bien qu'elle n'existe qu'en une seule instance dans la JVM. Ça n'a aucune conséquence pour une méthode utilitaire qui travaille uniquement sur des variables locales mais ça se complique pour une méthode qui travaillerait sur des variables membres statiques. Dans ce 2ème cas, une modification de la variable impactera toute la JVM (ce qui peut-être le but recherché, ou pas...). Pour ce 2ème cas, un exemple d'utilisation à bon escient est l'utilisation d'une méthode statique pour implémenter le pattern Singleton.

    Après se pose le problème des tests unitaires et de la rupture des dépendances. Lorsque tu testes un morceau de code unitairement, tu dois l'isoler et remplacer ses dépendances (les appels qu'il fera à d'autres objets) par des mock ou des stubs (en gros des objets qui imitent le comportement de l'objet d'origine mais que tu contrôles). Si ton code utilise une méthode statique, tu ne peux pas la remplacer facilement (ou du moins pas sans certains bricolages offerts par des frameworks de test qui devraient être réservés au test du code legacy).

  5. #5
    Membre régulier

    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 55
    Points : 111
    Points
    111
    Par défaut
    @neuromencien que veux-tu dire par
    mais ça se complique pour une méthode qui travaillerait sur des variables membres statiques
    biensûr que les méthodes statiques ne peuvent être utilisé que sur des variables de types static et pas pour implementer mais pour créer une instance du pattern singleton.
    Les méthodes statiques ne sont pas mauvaises en tant que tel mais c'est quand sont-elles vraiment necessaires pour le projet sinon je ne vois pas l'importance de declarer à tout va des méthodes ou attributs static

Discussions similaires

  1. Les images dans le carrousel Bootstrap : comment les placer ?
    Par lolo17 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/09/2015, 17h37
  2. Réponses: 8
    Dernier message: 21/12/2010, 20h50
  3. Réponses: 8
    Dernier message: 21/12/2010, 20h50
  4. Réponses: 4
    Dernier message: 29/09/2006, 11h53
  5. [C#] Comment connaître les méthodes non-utilisées ?
    Par joujoukinder dans le forum EDI/Outils
    Réponses: 3
    Dernier message: 08/09/2006, 15h16

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