domingo, 15 de julio de 2007

Las cosas más fácil con GWT


No sé si han oído hablar de GWT, pero GWT (Google Web Toolkit) es un framework creado por google que nos permite desarrollar aplicaciones Web ocultando al programador la complejidad de AJAX. Lo que hemos programado aplicaciones WEB y en JAVA sabemos de esto. La cosa es que decidí darle un vistaso a este nuevo framework. La verdad es que estoy algo sorprendido por la facilidad y por el modelo de programación que GWT ofrece. Básicamente se siente como si uno programara una aplicación usando las librerías de SWING o  SWT.
Mi demo básicamente consistió en crear el clásico “Hola Mundo” y agregando uno que otro Widget al panel. 

Aquí está el ejemplo:

public class Ejemplo1 implements EntryPoint {
   public void onModuleLoad() {
    final Button button = new Button("Click me");
    final Label label = new Label();
    button.addClickListener(new ClickListener() {
      public void onClick(Widget sender) {
        if (label.getText().equals(""))
          label.setText("Hola Mundo");
        else
          label.setText("");
      }
    });
    RootPanel.get("Celda1").add(button);
    RootPanel.get("Celda2").add(label);
  }
}

La arquitectura de GWT  es la siguiente:
  1.  GWT Java-to-JavaScript Compiler: la función de este componente es traducir el código desarrollado en java al lenguaje javascript. Lo empleamos cuando usamos al GWT en modo web.
  2. Hosted web browser: este componente corre la aplicación java sin traducirlo a javascript, en modo host corriendo en la máquina virtual de java.
  3. JRE emulation library: contiene las librerías más importantes de las clases de java: java.lang en donde se encuentran las clases fundamentales para poder programar en java y un subconjunto de las clases del paquete java.util. Java.lang incluye, entre otras, la clase java.lang.object que es la clase fundamental de la que heredan o extienden todas las clases en java. El resto de los paquetes no están soportados por GWT.
  4. GWT Web UI class library: contiene un conjunto de elementos UI (interfaz de usuarios) que permite la creación de objetos tales como text, textbox, images y botones.
Para concluir creo que GWT es un proyecto ambicioso por parte de Google. Muchas desarrolladores ya lo han comenzado a usar y tienen muy buenos comentarios, pero siempre hay que recordar que es una tecnología nueva y que existen “bugs” que aun no se han arreglado( a pesar que la gwt-14-rc corrige mucho de ellos) aparte del tiempo de carga que lo encuentro algo lento.
Proximamente explicare como configurar un IDE, eclipse para ser exactos, y asi poder comenzar a desarrollar con GWT.

2 comentarios:

Anónimo dijo...

a mi me parece muy lento... sobre todo cuando se quiere compilar y de hace el deployment en el navegador

Anónimo dijo...

Para que complicar todo, muchas lineas de código para hacer algo que con HTML simple es mucho mas facil.
Ademas ahora con jquery el AJAX no tiene ninguna complejidad.