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

Affichage des résultats du sondage: Êtes-vous pour ou contre cette proposition ?

Votants
332. Vous ne pouvez pas participer à ce sondage.
  • Pour

    185 55,72%
  • Contre

    147 44,28%
Langage Java Discussion :

JDK 7: Proposition 12 : déclaration des propriétés [Débat]


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Août 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 58
    Par défaut
    Contre pour une raison toute simple : on commence la déclaration par public. Je ne peux pas m'empêcher de penser qu'on part pas dans la bonne direction dès que je vois ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public class Person {
     public property String forename;
     public property int age;
    }
    Les getter et les setter peuvent paraître tous les mêmes au début, mais plus le projet avance ou quand on commence la maintenance il arrive vite qu'il y ai rajout de test à l'intérieur des setter ou d'initialisation dans les setters.

    Je trouve qu'une partie non négligeable des propositions sur ce java 7 sont des raccourcis (dangereux) de code qui rendent le code moins clair.

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 357
    Par défaut
    Contre.

    On est au 21ème siècle : les EDI se chargent très bien de générer puis masquer se genre de choses.
    Pour moi la syntaxe d'un langage doit rester la plus simple possible et Java s'éloigne de plus en plus de ça...

  3. #3
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 746
    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 746
    Par défaut
    Pour moi le fait qu'une EDI face quelque chose n'est pas une excuse pour que ce soit mal géré par le langage. Les properties sont clairement quelque chose d'indispensable en Java et le fait que ce ne soit pas géré directement par le langage lui même est une véritable lacune.

    Et puis même avec Eclipse ou Netbeans pour nous aider à générer tout ce code, ça n'en reste pas moins une surcharge inutile, source de bug et de code peu lisible.

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 357
    Par défaut
    Est-ce que ça apporte une fonctionnalité nouvelle ? non.

    Source de bug des getters et des Setters ?

    Code peu lisible ?

    Qu'on me dise "java aurait pu être conçu de sorte à avoir ça" je veux bien, mais tes arguments ne sont pas convaincants...

  5. #5
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 746
    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 746
    Par défaut
    Est-ce que ça apporte une fonctionnalité nouvelle ? non.
    Est ce que les generics apportent de nouvelle fonctionnalités? Pas vraiment c'est juste du sucre syntaxique, pourtant ça m'ennuie énormément de ne pas les avoir quand je travaille sur un projet limité en version 1.4.

    Source de bug des getters et des Setters ?
    Le principe même du getter/setter, n'est pas buggé.
    Mais la duplication de code inutile augmente toujours le risque d'erreurs de programmation.
    Par exemple, ça m'est arrivé d'avoir une faute de frappe qui fait que getter et setter ont un nom différent, ou une erreur de copier/coller où l'on a oublié de modifier le nom de la variable stockant la propriété.

    Code peu lisible ?
    Le code de certaines de mes classes est constitué à plus de 80% des setter/getters triviaux. Pour moi c'est clairement un gros défaut de lisibilité : une classe qui ne fait rien de particulier de devrait pas atteindre des centaines de lignes. Le code vraiment utile deviens nettement moins évident.
    De plus comme on ne sait pas si un getter fait juste une affectation ou d'avantage, il faut prendre le temps de le vérifier si on veut éviter les mauvaises surprises.
    Un des gros défaut de JAVA est qu'il est bien trop verbeux, et pour moi cette proposition d'évol, va dans le sens de corriger ça. C'est également le cas des closures.

    Qu'on me dise "java aurait pu être conçu de sorte à avoir ça" je veux bien, mais tes arguments ne sont pas convaincants...
    Oui et Java aurait également du être conçu de la sorte à avoir les génériques, heureusement qu'ils ont étés rajoutés par la suite.
    Et puis ce ne serait jamais qu'un ajout pas un changement. Si ça plait pas, rien n'obligerait de l'utiliser.

  6. #6
    Membre averti
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    49
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2004
    Messages : 49
    Par défaut
    Pour! Mais il faudrait y associer une syntaxe plus riche que le simple mot clé property. N'oublions pas que toutes les propriétés ne mappent pas forcément des champs (certaines retournent le résultat de traitements complexes)

Discussions similaires

  1. Réponses: 27
    Dernier message: 19/10/2008, 12h51
  2. JDK 7: Proposition 13 : Accès aisé aux propriétés
    Par vbrabant dans le forum Langage
    Réponses: 93
    Dernier message: 16/10/2008, 19h14
  3. recopie des propriétés d'un composant
    Par pitounette dans le forum C++Builder
    Réponses: 2
    Dernier message: 20/02/2004, 11h40
  4. Comment cacher des propriétés dans un nouvel objet ?
    Par Pedro dans le forum Composants VCL
    Réponses: 2
    Dernier message: 22/10/2003, 19h53
  5. ouverture de la fenêtre des propriétés afffichage
    Par Mercilius dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 26/03/2003, 18h07

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