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

Interfaces Graphiques en Java Discussion :

Sérialisation des composants graphiques


Sujet :

Interfaces Graphiques en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut Sérialisation des composants graphiques
    Bonjour, suite à un début de discussion dans ce sujet,

    ICI

    Voici le contexte pour relancer le débat :

    Citation Envoyé par Claythest
    Alors ok, en effet, sérialiser un composant graphique, c'est débile
    Citation Envoyé par ®om
    C'est pas forcément "débile", par exemple si tu veux rouvrir ton application dans l'état où tu l'avais laissé exactement...
    D'ailleurs, tous les composants Swing sont Serializable...
    Citation Envoyé par natha
    Sinon pour conserver l'état d'une application c'est quand même mieux d'utiliser les java.util.Preferences à mon sens (plus de travail mais plus fiable)
    Donc on en arrive à ma question finalement quelle est la meilleure solution pour les composants graphiques : les sérialiser et utiliser le fait que tous les composants Swing soient sérializables ou bien utiliser java.util.Preferences ??

    Voilà j'aimerais avoir votre avis car c'est vrai que finalement si la sérialisation sert dans ces cas, ie pour conserver l'état de composants, ça ne rajoute que plus d'intérêt à l'utiliser je trouve.

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Il faudrait d'abord savoir dans quel but tu veux sérialiser tes composants.

    Ensuite il faut bien prendre conscience que la sérialisation des composants Swing peut être incompatible d'une version à l'autre, et ne devrait servir qu'à des stockages temporaires...


    a++

  3. #3
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Merci de ta réponse. Je pensais notamment à la citation de @rom ie "par exemple si tu veux rouvrir ton application dans l'état où tu l'avais laissé exactement..."

    A ce moment-là et vu que se sera juste utilisé sur la machine locale, le problème de version ne rentre plus en jeu enfin de ce que j'en pense.

    On est d'accord que le stockage ne serait que temporaire et pas permanent.

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Pour la sérialisation des composants graphiques la sérialisation XML (cf XMLEncoder) est beaucoup plus adaptée . Attention si tu utilise des composants perso, ceux-ci doivent être des JavaBeans (enfin ce n'est pas obligatoire mais dans le cas contraire la sérialisation est plutôt lourde à mettre en place).
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  5. #5
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Citation Envoyé par le y@m's
    Pour la sérialisation des composants graphiques la sérialisation XML (cf XMLEncoder) est beaucoup plus adaptée .
    Merci je vais regarder ça de plus près

    Citation Envoyé par le y@m's
    Attention si tu utilise des composants perso, ceux-ci doivent être des JavaBeans (enfin ce n'est pas obligatoire mais dans le cas contraire la sérialisation est plutôt lourde à mettre en place).
    Et si j'utilise des composants persos qui ne sont pas des JavaBeans (je sais je suis chiant non c'est juste pour bien comprendre), la sérialisation XML reste la meilleure solution ?

  6. #6
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Cette solution me semble effectivement avantageuse par rapport à la sérialisation binaire (il y a dans le lien que j'ai donné précédement une liste des avantages).

    L'inconvénient majeur est que la sérialisation XML d'objet qui ne sont pas des JavaBeans est assez lourde à mettre en place (j'en sais quelque chose car je travaille sur un tuto là dessus ... et j'ai pas mal lutté ).
    Cf PersistanceDelegate pour les constructeur, BeanInfo pour les attributs sans getter/setter, etc ( Using XMLEncoder).
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

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

Discussions similaires

  1. [Robot] rendre des composants graphique non capturables
    Par LeTripeurFou dans le forum AWT/Swing
    Réponses: 0
    Dernier message: 15/01/2009, 10h05
  2. librairie/langage pour creer des composants graphiques ?
    Par Tymk dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 03/07/2008, 07h32
  3. Réponses: 4
    Dernier message: 03/07/2007, 09h42
  4. Réponses: 4
    Dernier message: 15/12/2005, 22h36
  5. Activer et désactiver des composant graphiques?
    Par redabadache3 dans le forum Débuter
    Réponses: 1
    Dernier message: 16/08/2005, 17h50

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