Applets

Publicado: Sábado, 13 \13\UTC junio \13\UTC 2009 en 12. Comunicaciones en Java

Los applets son programas que se ejecutan sobre un navegador Web. El único requisito para poder ejecutar estos programas es que el navegador sea compatible con Java. En la actualidad, la mayoría de los navegadores cumplen este requisito.

Mi primer Applet

La creación de applets difiere ligeramente de la creación de las aplicaciones que hemos visto hasta ahora. Las diferencias se deben, principalmente, a dos motivos:

  • El navegador Web trabaja en modo gráfico. Realmente no todos los navegadores Web lo hacen, pero sí una gran mayoría. Así que, por ejemplo en nuestro primer applet, imprimiremos el típico mensaje “Hola mundo” por pantalla, pero esta vez deberemos crear un espacio para poder “pintar” el mensaje en pantalla.
  • El comportamiento distinto de las páginas Web. De manera parecida a lo que ocurría cuando hablábamos del ciclo de vida de los hilos, los applets también tendrán un ciclo de vida propio. Esto lo estudiaremos más adelante, en esta misma entrada.

Bien, una vez comentadas las diferencias, empecemos a construir nuestro primer ejemplo. Seguiremos utilizando nuestro IDE Eclipse, que nos servirá perfectamente para nuestro trabajo.

Así que abriremos un nuevo proyecto en Java y dentro de este agregaremos una nueva clase llamada HolaMundoApplet que contendrá el siguiente código:

___________________________

import java.applet.*;

import java.awt.*;

public class HolaMundoApplet extends Applet{

public void paint(Graphics g) {

g.drawString(“¡Hola Mundo!”, 10, 10 );

}

}

___________________________

Código de HolaMundoApplet.java

Explicación del código:

  • Importamos los paquetes java.applet.* y java.awt.*. El primero contiene la clase Applet y el segundo la clase Graphics.
  • No existe método main(). En su lugar se hereda de la clase java.applet.Applet.
  • Método paint(). Nos servirá para imprimir por pantalla el contenido del applet. Aquí utilizamos para imprimir en modo gráfico el método drawString() de la clase java.awt.Graphics.

A continuación, ejecutaremos el código con el botón Ejecutar. A diferencia de la ejecución de una aplicación, observaréis que se abre una nueva ventana en la que aparecerá el mensaje ¡Hola Mundo!. Esta ventana está específicamente diseñada para visualizar applets y se llama AppletViewer.

Si todo ha ido bien y habéis observado correctamente el mensaje, vamos a por el segundo paso, que será visualizar el programa (applet) en un navegador Web. Para ello, crearemos con el programa que más nos guste un fichero denominado HolaMundoApplet.html con el siguiente código:

___________________________

<HTML>

<HEAD>

<TITLE>Mi primer Applet</TITLE>

</HEAD>

<BODY>

Mi primer Applet os saluda:

<APPLET CODE=”HolaMundoApplet.class” WIDTH=150 HEIGHT=25>

</APPLET>

</BODY>

</HTML>

___________________________

Código de HolaMundoAplet.java

Explicación del código:

  • Utilizamos la etiqueta <APPLET> para indicar que vamos a utilizar un Applet.
  • Utilizamos el atributo CODE para especificar el nombre de la clase que contiene el applet. En nuestro caso, HolaMundoApplet.class.
  • Utilizamos los atributos WIDTH y HEIGHT para especificar el tamaño de nuestro applet. En el ejemplo, 150 pixeles de ancho por 25 pixeles de alto.

El tercer y último paso será unir todo lo hecho hasta ahora para que funcione. Creamos un directorio y dentro de este copiamos dos ficheros: el fichero HolaMundoApplet.html y el fichero HolaMundoApplet.class que se encuentra en el directorio bin del espacio de trabajo (workspace) de nuestro proyecto.

Ahora ya podemos ejecutar nuestro primer applet en Java, simplemente con un doble clic en el fichero HolaMundoApplet.html. Se abrirá nuestro navegador Web y aparecerá el siguiente mensaje:

Mi primer Applet os saluda: ¡Hola Mundo!

Ciclo de vida de un Applet

Observad el siguiente gráfico.

Ciclo de vida de un Applet

En él se muestra el ciclo de vida de un applet. Las diferentes fases de un applet son las siguientes:

  1. Método init(). Se llama cuando se carga el applet y realiza las inicializaciones necesarias para su correcto funcionamiento.
  2. Método start(). Se llama cuando la página comienza a ejecutarse.
  3. Método stop(). Se llama cuando se abandona la página que contiene el applet.
  4. Método destroy(). Se llama para liberar los recursos del applet.

Además, también nos interesará redefinir una serie de métodos que contiene la clase. Nosotros, en nuestro ejemplo, hemos redefinido la clase paint() que nos ha servido para imprimir el mensaje ¡Hola Mundo! de manera gráfica.

Ejecución de un applet en diferentes plataformas

Una de las principales ventajas de los applets respecto a cualquiera de las aplicaciones que hemos visto hasta ahora es que la ejecución del applet únicamente requiere el uso de un navegador Web con compatibilidad Java.

Es decir, que cualquier dispositivo que tenga un navegador con estas características es susceptible de ejecutar un applet, con todo lo que esto significa.

Por ejemplo, el código que hemos desarrollado en el anterior apartado puede ser ejecutado desde cualquier plataforma.

Actualmente, parece que la tendencia de ejecutar Java en dispositivos pequeños, como teléfonos móviles, pdas, etcétera, se dirige al uso de MIDlets de Java, que se ejecutan en navegadores Web “ligeros”. Y se deja de lado a los applets, que ahora parecen enfocados únicamente a navegadores Web “pesados”, que se ejecutan en ordenadores.


Creative Commons License
Applets by Cristian Jorge Garcia Marcos is licensed under a Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0 España License.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s