2010-04-22 20 views
9

El enfoque general en GWT es utilizar paneles y luego aplicar temas CSS personalizados para obtener un aspecto personalizado. Si bien puedo lograr un cierto grado de personalización de mi aplicación GWT a través de ajustes de CSS, me preguntaba cómo los demás generalmente se acercan al estilo.¿Cuál es el mejor enfoque para diseñar aplicaciones GWT?

Algunas de las sugerencias que encontré en la web fueron para administrar el diseño con HTML simple, a través del uso de HTMLPanel. De esta manera, uno puede usar inmediatamente la maqueta HTML dentro de la aplicación sin tener que codificar todo el diseño.

¿Cuál es, en su opinión, la mejor y menos dolorosa forma de abordar el diseño y el estilo personalizado de la aplicación GWT?

Respuesta

6

Todo depende - en usted, su experiencia, su equipo, etc:

  1. The usual/older approach de Paneles, Reproductores y composición será más fácil trabajar con/más familiar:
    • Si está un programador de Java experimentado con frameworks como Swing, etc. (creo que ese era el objetivo del equipo de GWT),
    • O si vienes del "mundo del escritorio" en general.
  2. El enfoque UiBinder es la más nueva:
    • recomienda si usted apenas está comenzando su experiencia con GWT (parece UiBinder está aquí para quedarse, y permite más flexibilidad que el enfoque anterior),
    • Recomendado si tiene experiencia con el desarrollo web (o marcos de escritorio que usan marcas, como .NET's XAML, etc.), ya que estará trabajando en el mundo familiar de HTML/XML,
    • Si está trabajando en un equipo más grande, donde tienes diseñadores designados a cargo del aspecto de la aplicación web en (y no saben/se preocupan por GWT). Recortar el diseño en código HTML debería ser bastante sencillo para ellos y puede, con poco trabajo, convertir esas plantillas en plantillas XML de UiBinder.

Ninguno de los enfoques anteriores es perfecto - es por eso que vale la pena conocer sus puntos fuertes y débiles - pero la decisión final debe ser sólo suya, ya que usted sabe capacidades suya/de su equipo mejor :)

+0

¿UiBinder utiliza internamente HtmlPanel para incrustar HTML sin formato? –

+0

Respuesta corta: no :) UiBinder es solo un lenguaje de plantillas. Depende de usted si solo desea utilizar HTML en su plantilla o insertar algunos 'Widgets' en algún tipo de' Panel'. Su plantilla se imprimirá tal como es, sin un envoltorio adicional (de modo que si su Panel raíz es 'HTMLPanel' obtendrá un div, etc.). 'HTMLPanel' se usa a menudo como un Panel raíz para plantillas UiBinder, porque tiene un tratamiento especial por UiBinder. Puedes mezclar HTML y Widgets (no puedes, por ejemplo, poner HTML sin formato en un' VerticalPanel'). Consulte los documentos de UiBinder para obtener más información. –

+0

Gracias Igor, he decidido usar el enfoque de UiBinder. –

8

Hasta el momento, el mejor método que he encontrado:

  1. deshacerse de cualquier uso UiBinder predeterminado GWT tema
  2. tanto como sea posible
  3. coloque el CSS en ui.xml que describe el widget
  4. tienen una Common CssResource pública con las normas reutilizados por muchos widgets

de esa manera que no es necesario para mantener una hoja de estilo global que siempre es un dolor (problema común: ¿dónde se usa esta regla?)

Cuestiones relacionadas