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 :

Java, aspect et délégation


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 255
    Par défaut Java, aspect et délégation
    Bonjour,
    je m'interroge sur l'aspect et la délégation : quid de ces technique dans Java ?
    J'ai vu un truc intéressant dans Groovy a ce sujet : l'annotation @Delegate sur un champ. C'est super pratique ! On peut éventuellement redéfinir des méthodes déléguées qui sont semble-t-il alors appelées en lieu et place de la méthode du délègué. Quel gain en clareté et en maintenabilité !
    Mais pourquoi diable n'est-ce pas standard ?

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    parce que l'api java est déjà très grosse, parce que tout le monde n'a pas besoin de jouer avec les aspects, parce que rajouter à votre projet une librairie qui gère des fonctionnalités supplémentaire est en général facile est suffisant. Si vous n'avez pas assez avec l'api standard de java, dirigez vous vers l'api enterprise (mais c'est un p*** de tartine) ou faites du groovy. On ne peux pas tout mettre dans l'api de base.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 255
    Par défaut
    Certe, mais l'AOP est plus qu'un gadget ! et la délégation une technique plutôt classique en POO. Il est étonnant que cela ne fasse pas partie du langage ou d'une prochaine (ou lointaine vu le rythme actuel) évolution déjà décrite dans une JSR.
    Si vous connaissez une API Java qui permet d'automatiser la delagation en JsE alors ça m'intéresse évidemment.

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Beaucoup de librairies disponibles autour de java ne sont pas "un gadget", ca n'empeche qu'on ne gonfle pas, actuellement, l'api java pour passer la jvm d'une grosse 60aine de M à plusieurs ceintaines

    Maintenant, je connais pas d'api qui fasse de la délégation automatique, en général, je me contente de mettre ceci dans mon ide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public class MonTypeDeleguant implements unType{
        private unType delegate;
    }
    puis clic droit -> generate delegate methods

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 255
    Par défaut
    c'est évidemment ce que je fais aussi mais ça obscurcit le code ! alors qu'un bête @Delegate en groovy rend le code si limpide... c'est vraiment dommage.
    Voilà c'est tout, c'était juste un troll de plus. Gasp!

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 255
    Par défaut
    Pour revenir sur ton intervention, je précise que je ne parlais pas au départ de librairie mais bien d'une intégration au langage. Depuis j'ai lu quelques articles a ce sujet, en particulier ceux évoquants "l'affaire" J++ de MS qui proposait une instruction delegate et qui, ayant été rejetée par Sun car hors specs, a provoque la création de C# et .Net ; j'ai également lu un autre article sur une proposition individuelle pour l'évolution de Java dans ce sens. ça me rassure : je ne suis pas le seul a râler sur ce sujet. Voilà un truc intéressant a rajouter pour Java (8?), non ?

    [Edit]je précise en plus que je ne parle pas du delegate a la MS mais de la délégation de l'implementation d'un interfaces un champ implementant cette même interface.[/Edit]

    (PS:peut être un modo devrait-il déplacer ce sujet là où on discute des JSR ou le l'aspect en partiulier ?)

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 02/03/2015, 13h13
  2. Webinar autour d'un des aspects de Java.
    Par Pierre8r dans le forum Général Java
    Réponses: 2
    Dernier message: 20/07/2009, 17h57
  3. GUI java : modification de l'aspect de l'interface
    Par Crillick dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 24/03/2009, 14h14

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