Integrantes:
Jhon Cometa
José Luis Dorado
Luis Armando Medina.
MANIFIESTO GWT.
• La misión de GWT es mejorar
radicalmente la experiencia
de los usuarios con la web
permitiendo a los
desarrolladores utilizar las
herramientas Java existentes
para construir aplicaciones
Ajax independientes del
navegador.
• Google Web Toolkit (GWT) es un framework de desarrollo
en Java de código abierto, que te permite escapar de la
“matriz” de tecnologías usadas actualmente para escribir
aplicaciones AJAX, las cuales son difíciles de manejar y
propensas a errores. Con GWT, puedes desarrollar y
depurar aplicaciones AJAX usando el lenguaje de
programación Java en el entorno de desarrollo de tu
preferencia (me refiero al sistema operativo y a los IDEs).
Cuando haz acabado tu aplicación (que la has escrito en
Java), GWT compila y traduce dicho programa a JavaScript
y HTML compatible con cualquier navegador web.
CARACTERÍSTICAS DE GWT.
• Componentes de la interfaz
de usuario dinámicos y re-
utilizables
Crea un Widget para construir
otros. Coloca los Widgets
automáticamente en Paneles.
Envía tus Widget a otros
desarrolladores en archivos JAR.
CARACTERISTICAS DE GWT
• RPC realmente fácil
Para comunicarte desde el
navegador que lanza tu aplicación
con tu servidor web, solamente
necesitas definir clases de Java
serializables para las peticiones y
respuestas. En producción, GWT
serializa automáticamente las
peticiones del navegador y de-
serializa las repuestas desde el
servidor web. El mecanismo de
RPC de GWT puede incluso
manejar jerarquía de polimorfismo
en clases, y puedes manejar las
posibles excepciones.
CARACTERISTICAS DE GWT
• Administración del
historial del navegador
Las aplicaciones en AJAX
no necesitan utilizar el
botón “atrás” (back) del
navegador. Y GWT no es la
excepción, es decir, no es
necesario que llames a
otras páginas para realizar
las diferentes acciones, ni
recargar el navegador ni
nada.
• Depuración en tiempo real
Para cuando tu aplicación esté
lista, el código de la misma es
traducido a JavaScript, pero
mientras lo estás desarrollando
este corre sobre una Java virtual
machina (JVM). Lo que significa
que en la fase de Desarrollo tienes
la posibilidad de depurar tu
aplicación con los avanzados
sistemas de debugging y
manipulación de excepciones
incluidos en IDEs como Eclipse.
CARACTERISTICAS DE GWT
CARACTERISTICAS DE GWT
• Compatibilidad con los
navegadores
Tus aplicaciones en GWT serán
automáticamente soportadas por
navegadores como FireFox,
Internet Explorer, Mozilla, Safari,
y Opera sin ningún tipo de
operación para la detección de
los mismos, en la mayoría de los
casos.
CARACTERISTICAS DE GWT
• Integración con Junit
Mediante la integración de JUnit
en GWT tu puedes probar tus
aplicaciones y depurarlas en un
navegador mientras las
construyes, incluso se pueden
testear llamadas asíncronas a
procedimientos remotos RPC.
• Internacionalización
Crea aplicaciones y librerías
de Internacionalización rápida
y fácilmente.
CARACTERISTICAS DE GWT
PORQUE TRADUCIR CODIGÓ
JAVA A JS
La tecnología Java ofrece una plataforma de desarrollo
productiva, y con GWT, se puede convertir en una
plataforma sólida para el desarrollo de tus aplicaciones
AJAX. Aquí están algunos de los beneficios de desarrollar
con GWT:
• Puedes usar cualquiera de tus IDEs favoritos (Eclipse,
IntelliJ, JProfiler, JUnit).
• Los errores comunes en JavaScript (errores de sintaxis,
por ejemplo) son fácilmente detectados mientras
desarrollas la aplicación, y no cuando el usuario final lo
esté ejecutando.
PORQUE TRADUCIR CODIGÓ
JAVA A JS
• El “refactoring” automático en Java está muy de moda en
estos días.
• Los diseños en Java basados en la programación
orientada a objetos es fácil de comunicar y entender, por
ende hace la base de tu código AJAX más comprensible
con menos documentación.
USANDO GWT
• En GWT puedes usar componentes de interfaz de usuario
llamados Widgets, para construir aplicaciones AJAX con
GUIs atractivas. Al igual que en la mayoría de los
lenguajes de programación, los componentes de la UI
son agrupados en paneles que determinan la ubicación
de los mismos. A continuación veamos una completa
aplicación que utiliza un botón y un manejador de
eventos:
public class Hola implements EntryPoint
{
public void onModuleLoad()
{
Button b = new Button("Chuzame", new
ClickListener()
{
public void onClick(Widget sender)
{
Window.alert("Hola, geek");
}
});
RootPanel.get().add(b);
}
}
USANDO GWT
• GWT soporta una gran cantidad
de widgets que son útiles en el
desarrollos de aplicaciones AJAX,
incluyendo árboles, pestañas,
barras de menú y menús de
dialogo. GWT también soporta
invocación de métodos remotos
(RPC) y otras características.
USANDO GWT
ARQUITECTURA
GWT
ARQUITECTURA DE GWT
GWT tiene cuatro componentes
principales:
• Java-to-JavaScript Compiler.
• Hosted Web Browser.
• JRE Emulation Library.
• GWT Web UI Class Library
GWT Java-to-JavaScript Compiler.
• La función del componente es traducir el código
desarrollado en Java al lenguaje JavaScript compatible
con los navegadores mas utilizados.
Hosted Web Browser.
• Este componente ejecuta
la aplicación Java sin
traducirla a JavaScript,
en modo host usando la
máquina virtual de Java.
JRE Emulation Library.
• Contiene las bibliotecas más
importantes de las clases de
Java. GWT emula parte de la
API de Java.
• http://code.google.com/intl/esES/w
ebtoolkit/doc/1.6/RefJreEmulation.
html
java.lang
java.lang.annotation
java.util
java.io
java.sql
GWT Web UI Class Library.
• Contiene un conjunto de
elementos de interfaz de
usuario que permite la
creación de objetos tales
como textos, cajas de
texto, imágenes ,
botones y otros widgets.
DEPURACIÓN
Y TEST
DEPURACIÓN
• Durante el desarrollo de una
aplicación, se pueden ver
inmediatamente los cambios
realizados en el código
mediante el navegador de
modo alojado (hosted mode)
de GWT. No es necesario
volver a compilar el código en
JavaScript.
DEPURACIÓN
• La comprobación de tipo
estático en lenguaje Java
permite detectar una clase
de errores (errores
ortográficos, tipos no
coincidentes) en el
momento de la creación
del código, no durante la
ejecución del programa, lo
que aumenta la
productividad y reduce los
errores..
DEPURACIÓN
• A partir de GWT 2.0 se puede depurar desde el
navegador (Out-of-process Hosted Mode (OOPHM),
Podemos ejecutar la aplicación en el navegador de
nuestra elección y utilizar herramientas como firebug
mientras depuramos desde Eclipse.
TESTEO
• GWT incluye la clase base
GWTTestCase que proporciona
la integración con Junit.
• GWT lanza una instancia del
hosted mode para ejecutar los
test.
• Mediante la herramienta
junitCreator genera todo lo
necesario para poder ejecutar
los test.
• También podemos utilizar
herramientas como Selenium o
WebDriver para realizar los test
de la interfaz de usuario.
COMPILACIÓN
COMPILACIÓN
• Los desarrolladores de GWT creen
firmemente que GWT genera mejor
codigo javaScript que el que
podemos obtener desarrollandolo
manualmente.
• El compilador tambien realiza una
optimizacion del tamaño de los
archivos GWT para que el envio al
cliente sea lo mas rapido posible
EJEMPLOS DE GWT
GOOGLE WAVE
Exposicion GWT

Exposicion GWT

  • 1.
    Integrantes: Jhon Cometa José LuisDorado Luis Armando Medina.
  • 2.
    MANIFIESTO GWT. • Lamisión de GWT es mejorar radicalmente la experiencia de los usuarios con la web permitiendo a los desarrolladores utilizar las herramientas Java existentes para construir aplicaciones Ajax independientes del navegador.
  • 3.
    • Google WebToolkit (GWT) es un framework de desarrollo en Java de código abierto, que te permite escapar de la “matriz” de tecnologías usadas actualmente para escribir aplicaciones AJAX, las cuales son difíciles de manejar y propensas a errores. Con GWT, puedes desarrollar y depurar aplicaciones AJAX usando el lenguaje de programación Java en el entorno de desarrollo de tu preferencia (me refiero al sistema operativo y a los IDEs). Cuando haz acabado tu aplicación (que la has escrito en Java), GWT compila y traduce dicho programa a JavaScript y HTML compatible con cualquier navegador web.
  • 4.
    CARACTERÍSTICAS DE GWT. •Componentes de la interfaz de usuario dinámicos y re- utilizables Crea un Widget para construir otros. Coloca los Widgets automáticamente en Paneles. Envía tus Widget a otros desarrolladores en archivos JAR.
  • 5.
    CARACTERISTICAS DE GWT •RPC realmente fácil Para comunicarte desde el navegador que lanza tu aplicación con tu servidor web, solamente necesitas definir clases de Java serializables para las peticiones y respuestas. En producción, GWT serializa automáticamente las peticiones del navegador y de- serializa las repuestas desde el servidor web. El mecanismo de RPC de GWT puede incluso manejar jerarquía de polimorfismo en clases, y puedes manejar las posibles excepciones.
  • 6.
    CARACTERISTICAS DE GWT •Administración del historial del navegador Las aplicaciones en AJAX no necesitan utilizar el botón “atrás” (back) del navegador. Y GWT no es la excepción, es decir, no es necesario que llames a otras páginas para realizar las diferentes acciones, ni recargar el navegador ni nada.
  • 7.
    • Depuración entiempo real Para cuando tu aplicación esté lista, el código de la misma es traducido a JavaScript, pero mientras lo estás desarrollando este corre sobre una Java virtual machina (JVM). Lo que significa que en la fase de Desarrollo tienes la posibilidad de depurar tu aplicación con los avanzados sistemas de debugging y manipulación de excepciones incluidos en IDEs como Eclipse. CARACTERISTICAS DE GWT
  • 8.
    CARACTERISTICAS DE GWT •Compatibilidad con los navegadores Tus aplicaciones en GWT serán automáticamente soportadas por navegadores como FireFox, Internet Explorer, Mozilla, Safari, y Opera sin ningún tipo de operación para la detección de los mismos, en la mayoría de los casos.
  • 9.
    CARACTERISTICAS DE GWT •Integración con Junit Mediante la integración de JUnit en GWT tu puedes probar tus aplicaciones y depurarlas en un navegador mientras las construyes, incluso se pueden testear llamadas asíncronas a procedimientos remotos RPC.
  • 10.
    • Internacionalización Crea aplicacionesy librerías de Internacionalización rápida y fácilmente. CARACTERISTICAS DE GWT
  • 11.
    PORQUE TRADUCIR CODIGÓ JAVAA JS La tecnología Java ofrece una plataforma de desarrollo productiva, y con GWT, se puede convertir en una plataforma sólida para el desarrollo de tus aplicaciones AJAX. Aquí están algunos de los beneficios de desarrollar con GWT: • Puedes usar cualquiera de tus IDEs favoritos (Eclipse, IntelliJ, JProfiler, JUnit). • Los errores comunes en JavaScript (errores de sintaxis, por ejemplo) son fácilmente detectados mientras desarrollas la aplicación, y no cuando el usuario final lo esté ejecutando.
  • 12.
    PORQUE TRADUCIR CODIGÓ JAVAA JS • El “refactoring” automático en Java está muy de moda en estos días. • Los diseños en Java basados en la programación orientada a objetos es fácil de comunicar y entender, por ende hace la base de tu código AJAX más comprensible con menos documentación.
  • 13.
    USANDO GWT • EnGWT puedes usar componentes de interfaz de usuario llamados Widgets, para construir aplicaciones AJAX con GUIs atractivas. Al igual que en la mayoría de los lenguajes de programación, los componentes de la UI son agrupados en paneles que determinan la ubicación de los mismos. A continuación veamos una completa aplicación que utiliza un botón y un manejador de eventos:
  • 14.
    public class Holaimplements EntryPoint { public void onModuleLoad() { Button b = new Button("Chuzame", new ClickListener() { public void onClick(Widget sender) { Window.alert("Hola, geek"); } }); RootPanel.get().add(b); } } USANDO GWT
  • 15.
    • GWT soportauna gran cantidad de widgets que son útiles en el desarrollos de aplicaciones AJAX, incluyendo árboles, pestañas, barras de menú y menús de dialogo. GWT también soporta invocación de métodos remotos (RPC) y otras características. USANDO GWT
  • 16.
  • 17.
    ARQUITECTURA DE GWT GWTtiene cuatro componentes principales: • Java-to-JavaScript Compiler. • Hosted Web Browser. • JRE Emulation Library. • GWT Web UI Class Library
  • 18.
    GWT Java-to-JavaScript Compiler. •La función del componente es traducir el código desarrollado en Java al lenguaje JavaScript compatible con los navegadores mas utilizados.
  • 19.
    Hosted Web Browser. •Este componente ejecuta la aplicación Java sin traducirla a JavaScript, en modo host usando la máquina virtual de Java.
  • 20.
    JRE Emulation Library. •Contiene las bibliotecas más importantes de las clases de Java. GWT emula parte de la API de Java. • http://code.google.com/intl/esES/w ebtoolkit/doc/1.6/RefJreEmulation. html java.lang java.lang.annotation java.util java.io java.sql
  • 21.
    GWT Web UIClass Library. • Contiene un conjunto de elementos de interfaz de usuario que permite la creación de objetos tales como textos, cajas de texto, imágenes , botones y otros widgets.
  • 23.
  • 24.
    DEPURACIÓN • Durante eldesarrollo de una aplicación, se pueden ver inmediatamente los cambios realizados en el código mediante el navegador de modo alojado (hosted mode) de GWT. No es necesario volver a compilar el código en JavaScript.
  • 25.
    DEPURACIÓN • La comprobaciónde tipo estático en lenguaje Java permite detectar una clase de errores (errores ortográficos, tipos no coincidentes) en el momento de la creación del código, no durante la ejecución del programa, lo que aumenta la productividad y reduce los errores..
  • 26.
    DEPURACIÓN • A partirde GWT 2.0 se puede depurar desde el navegador (Out-of-process Hosted Mode (OOPHM), Podemos ejecutar la aplicación en el navegador de nuestra elección y utilizar herramientas como firebug mientras depuramos desde Eclipse.
  • 27.
    TESTEO • GWT incluyela clase base GWTTestCase que proporciona la integración con Junit. • GWT lanza una instancia del hosted mode para ejecutar los test. • Mediante la herramienta junitCreator genera todo lo necesario para poder ejecutar los test. • También podemos utilizar herramientas como Selenium o WebDriver para realizar los test de la interfaz de usuario.
  • 28.
  • 29.
    COMPILACIÓN • Los desarrolladoresde GWT creen firmemente que GWT genera mejor codigo javaScript que el que podemos obtener desarrollandolo manualmente. • El compilador tambien realiza una optimizacion del tamaño de los archivos GWT para que el envio al cliente sea lo mas rapido posible
  • 30.
  • 31.