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

Java Discussion :

[Debug] Comment est-ce qu'il fait ?


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Avatar de sur_uix
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 379
    Par défaut [Debug] Comment est-ce qu'il fait ?
    Bonjour tout le monde,
    J'ai une question assez technique.
    J'ai un problème avec un logiciel tiers, il ne me fournis pas toutes les informations que je voudrai via les interfaces. Par contre lorsque je debug avec l'IDE, je peux voir ma classe avec tous ces champs et leur valeur et il y a quelques valeurs que je voudrai bien pouvoir connaitre. Alors je me dis que si le debugeur peut me les afficher, je dois aussi pouvoir le faire moi. Non ?? Qu'est-ce que vous en pensez ?

    Je sais l'autre solutions c'est de demander au concepteur de modifier leurs application.... mais il ne vons pas le faire avant la prochaine version, et moi il me le faut tout de suite......

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 73
    Par défaut
    Bonjour,

    A mon avis le debug de l'IDE passe par le debug de la JVM...
    Donc c'est pour çà qu'il peut connaitre ces valeurs...

    Si ces valeurs n'ont pas un accès privé ou protégé, mais seulement local
    Tu peux peut-etre essayer d'implémenter une classe perso dans le même
    package....
    Sinon je ne vois que la réimplémentation de la partie souhaitée...

    Cordialement,

  3. #3
    Membre Expert
    Avatar de fabszn
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2002
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2002
    Messages : 974
    Par défaut
    Hello,

    Oui tu peux faire ta classe perso qui va faire de l'introspection sur les objets te posant avar de leurs infos..

    Par contre l'introspection au niveau perf ce n'est pas toujours top .. top.

    @+

    Fabszn

  4. #4
    Membre Expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Par défaut
    +1

    l'introspection peut te permettre de connaitre toutes les valeurs de tous les champs de n'importe quelle class. Même pire, tu pourras exécuter n'importe quelle méthode privée ou public

    niveau perfs, je pense que si c'est bien utilisé, c'est tout à fait correct. Regardez Eclipse p.ex., la vitesse à laquelle s'affichent la liste des méthodes d'une classe !

  5. #5
    Membre Expert
    Avatar de fabszn
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2002
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2002
    Messages : 974
    Par défaut
    Hello,

    Citation Envoyé par Pill_S
    +1

    l'introspection peut te permettre de connaitre toutes les valeurs de tous les champs de n'importe quelle class. Même pire, tu pourras exécuter n'importe quelle méthode privée ou public

    niveau perfs, je pense que si c'est bien utilisé, c'est tout à fait correct. Regardez Eclipse p.ex., la vitesse à laquelle s'affichent la liste des méthodes d'une classe !
    oui tu as raison...c'est vrai que bien utilisé cela reste correct...

    Encore qu'il faut bien maitrisé cette api...et ce n'est pas toujours evident..

    @+

    Fabszn

  6. #6
    Membre expérimenté
    Inscrit en
    Octobre 2002
    Messages
    164
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 164
    Par défaut
    L'introspection est globalement beaucoup plus lente (mes derniers tests sur un JDK 1.3 donnent un facteur de 50 environ).

    Ceci dit cela ne veut pas dire que ce n'est pas utilisable :

    En effet afficher un property-sheet pour faire afficher les valeurs des propriétés d'un objet n'est pas dramatique en sachant que l'utilisateur ne va pas changer d'objet toutes les 20ms.

    Par contre si l'opération est très fréquente avec un grand nombre d'utilisateurs (J2EE par exemple), cela peut se révéler rédibitoire...

  7. #7
    Membre chevronné
    Avatar de sur_uix
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 379
    Par défaut
    Coucou tou l'monde ça fait plaisir de voir autant de réponse positive !!!!

    Alors je vous donne le contexte dans lequelle ce serra utilisé.
    Application J2EE. (Hé oui)
    Je dois lire une suite de string dans un ArrayList.

    Voilà dit moi encore dans qu'elle API je dois regarder, et je retourne au boulot.

    Encore merci.

  8. #8
    Membre chevronné
    Avatar de sur_uix
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 379

  9. #9
    Membre chevronné
    Avatar de sur_uix
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 379
    Par défaut
    Citation Envoyé par Pill_S
    Même pire, tu pourras exécuter n'importe quelle méthode privée ou public
    Est-ce que quelqu'un peu me confirmer ceci ? Parce que j'ai trouvé pour l'instant ce limite au donnée publique.

    Pour info je ne cherche pas à faire du piratage !!!!!!!!!!!!

  10. #10
    Membre chevronné Avatar de Mobius
    Profil pro
    none
    Inscrit en
    Avril 2005
    Messages
    463
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : none

    Informations forums :
    Inscription : Avril 2005
    Messages : 463
    Par défaut
    sur la page que tu viens de donner il y a un petit paragraphe sur les methodes et attributs privés (6.1. Champs et méthodes protégés et privés)

    la page mérite d'être vu
    merci encore sur_uix pour la reponse a ta propre question

  11. #11
    Membre chevronné
    Avatar de sur_uix
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 379
    Par défaut
    Je suis justement en train de parcourir la section 6.1 ou même moment Thunderbird m'informe de ton message.

    Bonne lecture.
    Je sens qu je vais pouvoir faire ce que je veux....... 8)

  12. #12
    Membre chevronné
    Avatar de sur_uix
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2002
    Messages : 379
    Par défaut
    Messieurs, merci infiniment, ça marche du tonnerre de feu. 8)

    En plus la librairie a du être quelque peut protégé, car les noms de champs et méthode sont if else do int , mais avec cette API je peux quand même y accèder. Haaa elle est pas belle la vie.

    Je vais mettre tous les détails dans mon blog.

    Encore merci, et que la force soit avec vous.

    PS. C'est de ce genre de situation que j'aime mon boulot....

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

Discussions similaires

  1. comment est fait ce fichier ?
    Par taurelle dans le forum Conception
    Réponses: 1
    Dernier message: 05/12/2009, 11h25
  2. Réponses: 12
    Dernier message: 11/02/2009, 14h15
  3. Comment est fait ce underline d'une couleur différente du texte du lien ?
    Par psychoBob dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 26/06/2006, 16h45
  4. [Techno] Comment est fait ce site
    Par skual dans le forum Général Conception Web
    Réponses: 6
    Dernier message: 19/05/2006, 23h52
  5. Comment est faite la partie "réponse" de phpbb?
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 26/12/2005, 23h26

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