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

Collection et Stream Java Discussion :

Interet d'utiliser un objet Properties


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de kerinel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 103
    Par défaut Interet d'utiliser un objet Properties
    J'aurais une petite précision a demander concernant les propriétés stockées dans un fichier .properties via un objet Properties. Cet objet a une méthode setProperty(String cle,String propriete) et on ne peut donc sauvegarder que des Strings. C'est un peu limitatif non ?
    Car lorsque je veux stocker la couleur de fond de la fenêtre "Bidule" ou la police utilisée pour le JLabel "toto", il serait plus simple de stocker directement un objet Color ou un objet Font ? Pour la couleur je récupère la valeur RGB ce n'est pas très complexe, pour la police je n'ai pas encore réfléchi mais il doit bien y avoir une solution facile aussi. Mais a chaque fois cela demande de reconstruire l'objet a partir de nombreuses propriétés que on aura enregistré.
    Ma question est donc n'y a-t-il pas plutôt intérêt a faire sa propre Hashtable pour stocker ses objets sérialisables et sérialisés divers et variés et les ressortir tout prêt ?
    merci pour vos réponses

    Bon code
    kerinel

  2. #2
    Membre très actif
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    321
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 321
    Par défaut
    Bonjour,

    Il faut voir cela comme la possibilité de réaliser un fichier de configuration pour une application par exemple. En ce sens un ensemble de couples clé-valeurs sous forme de chaine de caractere est suffisant. Si tu souhaite paramétrer toute ton application a partir d'un fichier, effectivement la serialisation reste une meilleure solution ...

  3. #3
    Membre confirmé Avatar de kerinel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 103
    Par défaut
    OK donc je demande trop à Properties si j'ai bien compris. je vais m'orienter vers une Hashtable alors.
    Merci beaucoup,

    Bon code,
    kerinel

  4. #4
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    Une vision personnelle :
    le property a l'avantage d'être modifiable par l'utilisateur de l'application, ce dernier n'ayant pas à conaitre le source pour effectuer la modif (simple fichier texte à éditer). Deuxième avantage : le property peut être modifié dynamiquement pendant que l'application tourne.
    La sérialisation, plus performante, est elle réservée au développeur de l'application et est implémentée directement dans le code source --> L'utilisateur lambda de l'application n'a aucun control sur ces propriétés.

    Une petite contradiction à ce que je viens de dire : il est possible pour l'utilisateur lambda de controler la sérialisation en passant par une IHM (exemple d'un menu "configuration"). Mais dans ce cas, cela prends plus de temps de développement (nécessité d'écrire les liens IHM <--> valeures <--> sérialisation). Cela peut être un peu trop pour une application "basique", dans tel cas, le property est beaucoup rapide.

    PS Pour beaucoup d'applications, on retrouve les deux méthodes simultanément : une IHM de configuration + possibilité d'éditer directement le fichier de configuration au format texte.

  5. #5
    Membre confirmé Avatar de kerinel
    Profil pro
    Inscrit en
    Février 2007
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 103
    Par défaut
    D'accord avec toi si l'utilisateur sait/veut fouiller dans un fichier texte et savoir à quoi correspond telle ou telle valeur ... Pas certain que cela rende la modification de paramètre plus facile si on commence à avoir un certains nombre de variables. D'accord on peut alors utiliser plusieurs fichiers, mais l'utilisateur devra alors savoir que la couleur de la fenêtre "toto" se contrôle dans tel fichier et la police du tableau "riri" dans tel autre fichier...
    Je pensais bien me tourner vers un menu configuration et donc une IHM. Du coup je pense que la possibilité de sauvegarder directement une couleur sera plus pratique.

    Une petite question au passage : dans ces fichiers properties, y-a-t-il moyen d'insérer des lignes de commentaires ? car j'en utilise pour l'internationalisation (où là c'est parfaitement suffisant d'utiliser seulement des Strings) et je voudrais pouvoir séparer un peu des fichiers qui pourrait être un peu volumineux ou un peu fouillis.

    bon code,
    kerinel

  6. #6
    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
    Citation Envoyé par kerinel Voir le message
    D'accord avec toi si l'utilisateur sait/veut fouiller dans un fichier texte et savoir à quoi correspond telle ou telle valeur ... Pas certain que cela rende la modification de paramètre plus facile si on commence à avoir un certains nombre de variables. D'accord on peut alors utiliser plusieurs fichiers, mais l'utilisateur devra alors savoir que la couleur de la fenêtre "toto" se contrôle dans tel fichier et la police du tableau "riri" dans tel autre fichier...
    Oui mais c'est possible, alors qu'il n'est pas possible pour humain de modifier directement un fichier sérialisé...

    Citation Envoyé par kerinel Voir le message
    Je pensais bien me tourner vers un menu configuration et donc une IHM. Du coup je pense que la possibilité de sauvegarder directement une couleur sera plus pratique.
    Même si tu utilises une IHM, tu peux très bien utiliser des fichiers properties : chaque élément de configuration peut très bien être converti en "texte" (par exemple pour une couleur il suffit de sauvegarder la valeur des 3 couleurs de base RGB).


    Citation Envoyé par kerinel Voir le message
    Une petite question au passage : dans ces fichiers properties, y-a-t-il moyen d'insérer des lignes de commentaires ? car j'en utilise pour l'internationalisation (où là c'est parfaitement suffisant d'utiliser seulement des Strings) et je voudrais pouvoir séparer un peu des fichiers qui pourrait être un peu volumineux ou un peu fouillis.
    Tu peux utiliser le # en début de ligne pour qu'elle soit ignorée à la lecture...

    Par contre la classe Properties a un gros défaut : lorsque tu utilises la méthode store() pour sauvegarder, tous les commentaires ainsi que l'organisation du fichier est perdu (on se retrouve avec un fichier avec les lignes key=value "en vrac").



    Enfin, si c'est pour configurer une application graphique tu pourrais éventuellement tu tourner vers Fuse

    a++

Discussions similaires

  1. access 97 - DAO - objet property
    Par sundjata dans le forum VBA Access
    Réponses: 1
    Dernier message: 04/11/2005, 04h17
  2. Réponses: 6
    Dernier message: 15/05/2005, 14h11
  3. Utilisation d'objets pour imprimer
    Par alainvh dans le forum Composants VCL
    Réponses: 3
    Dernier message: 02/12/2004, 10h25
  4. utilisation d'objets ADO pour CMS sur POSTGRESQL7.3.2
    Par turbok dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 10/10/2003, 09h29
  5. [struts] utiliser plusieurs fichiers properties
    Par jaimepasteevy dans le forum Struts 1
    Réponses: 7
    Dernier message: 03/10/2003, 17h02

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