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

GWT et Vaadin Java Discussion :

Bonnes pratiques de design : dans le code Java ou dans le CSS?


Sujet :

GWT et Vaadin Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 14
    Points
    14
    Par défaut Bonnes pratiques de design : dans le code Java ou dans le CSS?
    Bonjour à tous,

    Utilisant depuis peu GWT et GWT Designer pour faire une application web, j'essaie de trouver quelles sont les "bonnes pratiques" le concernant, puisque le mix de javascript, java et CSS n'est pas forcément évident à bien appréhender, en tout cas de mon point de vue.

    Mon problème est le suivant: en théorie, pour la présentation d'un site web classique, on est censé mettre tout l'aspect présentation (positions, couleurs etc) dans le fichier CSS. Mais en utilisant GWT Designer, on a du WYSIWYG qui met directement les positions des panels en dur dans le code java. Je n'ai pas encore testé, mais je doute qu'avec cette configuration, on puisse avoir une page qui s'adapte à toutes les résolutions d'écran et navigateurs. Mais si on rajoute par-dessus ces positions des propriétés CSS qui modifient à leur tour la position et le rendu d'un panel, on n'a plus du tout l'avantage du WYSIWYG du GWT Designer, et en plus on a du code concernant le design à 2 endroits différents, ce qui n'est pas très propre...

    Ma question est donc la suivante: est il préférable d'utiliser GWT Designer, en le laissant gérer les positions comme il l'entend et ne modifier que l'aspect (et pas les positions) dans le CSS, ou l'utiliser au début pour avoir un aspect global, et retravailler ensuite les positions dans le CSS?

    Tout avis ou expérience est le bienvenue

  2. #2
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 17
    Points
    17
    Par défaut
    boujour,
    Merci d'avoir soulever ce probleme.
    Moi aussi, il m'arrive la meme chose.
    Quand le lance mon application en Developpement Mode, j'obtient
    mes fenetres, menus, et autres qui s'affiche comme je le veux sous IE version
    6.0. Cependant sous Firefox v5.0 j'ai des affichage bizarre, tout est melangé de partout .
    Du coup c'est trés embétant ...
    Et il faut que je modifie tout mon code pour l'adapter a un autre navigateur.
    J'ai toujours pas de solutions à part ça.

  3. #3
    Membre averti
    Profil pro
    Lead Tech Agile
    Inscrit en
    Septembre 2004
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Lead Tech Agile

    Informations forums :
    Inscription : Septembre 2004
    Messages : 316
    Points : 417
    Points
    417
    Par défaut
    Personnellement je réalise mes position avec Css pour une raison tres simple, c'est de tirer partie de toute la puissance de Css qui est un standard depuis un moment déjà et qui est très bien adapté pour ce travaille.

    La seconde raison est la séparation des couches. Comme tu le dit il faut séparer le traitement du rendu. En Java ca reste possible mais la tentation est grande de tout mélangé, surtout quand un débutant arrive derriere pour la maintenance et apres c'est la kata

    Apres il faut savoir etre humble et mettre de l'eau dans son vin en fonction de ses capacitées. Si le Css est un milieu complètement inconnu et qu'il faut produire quelque chose vite pour mettre en prod rapidement, dans ce contexte utiliser le WYSIWYG est une bonne solution. Dans ce cas fait tout en WYSIWYG.

    Mais il faut savoir que le Css n'est pas tres compliqué et qu'il y a de tres bon site francophone qui explique les bases sur des bonnes pratiques.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    J'étais en train de me dire qu'une solution pourrait être de laisser le positionnement dans le code java, et de faire le reste (couleurs et autres effets) avec le CSS. Car je trouve le designer assez pratique pour générer le code rapidement (et ma paresse adore voir du code se créer tout seul ^^), et le seul hic c'est que lorsqu'on règle les tailles, on a par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    panel.setSize("100%", "100%");
    qu'il faudrait, j'imagine, effacer du code java et déplacer dans le CSS. Effort un peu chiant à faire, car il faut appliquer des styles sur les différents objects etc, et c'est un peu lourd. En fait il faudrait demander à google de générer du code CSS au lieu du java en ce qui concerne les tailles et positions de widgets

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 17
    Points
    17
    Par défaut
    En fait la seule chose qu'on peut faire c'est d'ouvrir son code avec WindowBuilder Editor et ensuite pour chaque Panel correspond un Css en cliquant sur le styleName du Panel concerné ...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Oui

    Merci pour vos réponses, ça m'a aidé à y voir plus clair, même s'il faut faire très attention à tout ce qu'on fait pour bien ordonner les choses...

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2010
    Messages : 61
    Points : 88
    Points
    88
    Par défaut
    Et pourquoi ne pas utiliser UiBinder pour décrire ton interface ? Ainsi tu sera sûr de bien séparer la description du comportement ? Tu peux isoler les styles communs dans un fichier css à part puis redéfinir uniquement dans ton fichier uibinder les styles spécifiques.

    Gwt Designer gère plutôt bien le lien entre les widget déclarés dans le fichier uibinder et liés au java en plus.


    J'ai écrit un article qui résume un certain nombre de choses à savoir pour styler les composants gwt. Il manque certaines choses je pense, si tu en vois nécessite pas à me les signaler.

    Google Web Toolkit (GWT) 2.0, Styles et UiBinder

    Et un autre pour surcharger les styles définis par GWT :
    Gwt – Surcharger les styles par défaut

    Bonne fin d'année !

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/05/2013, 17h22
  2. Réponses: 4
    Dernier message: 21/04/2009, 22h10
  3. Valeur asp dans le code Java ?
    Par kaiser59 dans le forum ASP
    Réponses: 4
    Dernier message: 25/01/2007, 17h33
  4. Réponses: 19
    Dernier message: 04/10/2006, 16h53
  5. Du PL/SQL dans du code Java
    Par tikiwine dans le forum JDBC
    Réponses: 12
    Dernier message: 02/03/2006, 16h16

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