Java

JAVA es un lenguaje de programación de carácter general, basado en C, desarrollado por Sun Microsystems y lanzado al mercado en agosto del 95.

Principales características:
Orientado a objetos:
Maneja encapsulado, herencia y polimorfismo.
Independiente de la plataforma:
Su código objeto, llamado APPLET lleva la extensión CLASS, es independiente de la plataforma (Win, Mac, Linux etc) debido a que este objeto es interpretado por un modulo Run-Time que si depende de la plataforma. Esto lo hace muy adecuado para Internet y hoy los principales navegadores pueden ejecutar aplicaciones en JAVA. La desventaja es que las aplicaciones se interpretan que es mas lento que cuando las aplicaciones se ejecutan como en C. En realidad dependiendo de la aplicación puede llegar a ser hasta 30 veces mas lento que C.
Seguro:
Debido a que no corre directamente en el computador cliente, sino que lo hace en una maquina virtual (Java Virtual Machine), quedando ademas confinado dentro de ella y no puede acceder a otros recursos de nuestro computador.

Pequeño:
El interprete (Run Time) para Windows solo toma algo mas de 200 KB de RAM al ejecutar una aplicación.

1. Que es JAVA ?

Aunque el lenguaje JAVA es mas fácil que el C++, ya que lo simplificaron mucho, se trata de un lenguaje de programación de alto nivel y por tanto es muchísimo mas difícil (para quien no tiene conocimientos previos) que el HTML por ejemplo, que en realidad no es mas que una sencilla manera de formatear la presentación del texto en las paginas del Web.

Pero una cosa es programar en Java y otra mucho mas sencilla es usar programas ya existentes.

En resumen los Applets son pequeños programas escritos en lenguaje JAVA, que podemos colocar en nuestro servidor, junto con el resto de archivos que componen un sitio del Web y si el navegador cliente es capaz de interpretar JAVA, el archivo sera transferido e interpretado en el computador cliente.

Se conoce un Applet por su extensión .class Debo mencionar ahora algún muy importante y es que debes respetar escrupulosamente la disposición de las mayúsculas y minúsculas en su nombre (en este caso se debe poner SineText.class y no sinetext.class, por ejemplo).

Si en una de nuestras paginas hemos incrustado un Applet, cuando un usuario cargue la pagina, recibirá del servidor el Applet correspondiente (al igual que ocurre con una imagen, sonido o video) y se ejecutara en su navegador, si este soporta JAVA.

Soportan JAVA el Netscape 2.x o superior, Explorer 3.0 o superior, o HotJava (navegador desarrollado por Sun, y escrito totalmente en Java). Quien use un navegador no compatible, no vera la ejecución del programa (ni siquiera lo cargara), aunque podemos informarle de este hecho con un mensaje.

Como prueba inmediata para comprobar si tu navegador es compatible con Java, observa lo que ves a continuación:

Si ves el lema: WebMaestro Crea tu pagina del Web!" desplazándose en una linea sinusoidal, es que tu navegador es compatible con Java. (Pulsando con el ratón, se invierte el sentido del desplazamiento).

Si, por el contrario, ves el mensaje estático "[Aquí debería haber un applet de Java]", es que tu navegador no es compatible con Java, o que siéndolo, tiene inhabilitada la carga de programas de Java.

Con un Applet se pueden conseguir efectos visuales y sonoros (incluso ambos a la vez), textos en movimiento, utilidades (por ej: relojes), pequeños programas educativos, juegos interaractivos, presentaciones multimedia, etc. En definitiva, cualquier cosa que se pueda conseguir con un programa pequeño.

No es que haya ninguna limitación teórica en el tamaño de estos programas. La razon de que sean pequeños es la misma por la que no es razonable colocar en una pagina gigantescos archivos de imagen o sonido, es decir, no hay que alargar en exceso su tiempo de carga. (Un Applet normalmente mide entre 1 y 10 KBytes).

Sintaxis completa de la etiqueta APPLET

<APPLET>
CODE = nombre del Applet
WIDTH = pixels HEIGHT = pixels
[CODEBASE = URL basico]
[]
[ALT = Text alternativo]
[NAME = appletInstanceName]
[ALIGN = alineamiento]
[HSPACE = pixels][VSPACE = pixels]
[texto HTML alternativo]
</APPLET>

CODE = nombre del Applet
El nombre del archivo class con su ruta relativa si es necesario. No se pueden especificar rutas absolutas.

WIDTH = pixels HEIGHT = pixels
Ancho y alto en pixels del área que sera mostrada.

CODEBASE = ruta base
Parametro opcional que indica la ruta donde se encuentra el Applet.

Este para,etro opcional puede ser repetido el numero de veces que sea necesario y define los parámetros y les asigna un valor. En la mayoría de los casos es necesario pesarle algunas parámetros (aunque esto depende del autor del Applet) y en otros casos los tomara por defecto, por lo que hay que leer la documentación de cada Applet distinto.

ALT='Texto alternativo'
Parámetro opcional es usado para mostrar un texto cuando el navegador soporta JAVA, pero no puede correrlo.

NAME='Nombre'
Este parámetro opcional especifica un nombre para la instancia Applet que da la posibilidad de comunicarse entre dos Applets.

ALIGN = alineamiento
Especifica el alineamiento de la ventana. Puedes usar: left, right, top, texttop, middle, absmiddle, baseline, bottom, absbottom.

VSPACE=pixeles HSPACE=pixeles
Especifica el espacio al rededor de la ventana en pixeles.

[texto HTML alternativo]
Especifica el texto alternativo que sera mostrado en caso el navegador cliente no soporte JAVA. Si estas usando un navegador que no soporta Java, no podra ver el efecto del Applet y este mensaje es mostrado. Es invisible para los que si están viendo ejecutarse el Applet.

Lo primero de todo, es necesario tener el Applet, luego colocar la etiqueta <APPLET CODE=nombre.class>... </APPLET> que se coloca donde queramos dentro del cuerpo del documento.

Ejemplos:

Ejemplo 1: SineText.class (4,6 KB) de Mattias Tollet

Se trata de un Applet que hace que un texto (elegido por el usuario) se desplace formando una onda sinusoidal, en dirección reversible con un click del ratón. Se pueden escoger los colores del fondo y de las letras, elegir entre algunos tipos de fuentes, su tamaño, velocidad de desplazamiento, etc.

En este applet, su autor ha definido los siguientes parámetros:

Text
Texto que se va a ver.
Rate
Numero de imágenes por segundo.
Font
Fuente: Helvetica (defecto), TimesRoman o Courier.
FontSize
Tamaño de la fuente.
TextStyle
Estilo de la fuente: Plain, Bold (defecto) o Italic.
Speed
Velocidad de desplazamiento 1-10 (5 es por defecto)
Direction
Dirección inicial del desplazamiento. Left (defecto) o Right.
Background
Color del fondo. (negro es por defecto)
ForeGround
Color del texto. (rojo es por defecto)
<APPLET CODE=SineText.class WIDTH=500 HEIGHT=100> 
</APPLET>

Con esto se le indica al navegador que cargue el applet, cuyo código compilado es SineText.class, que se encuentra en el mismo directorio que el propio documento HTML, y que le reserve un área de 500x100 pixels. Como no hemos a definir ningún parámetros todos serán los que ha escogido su autor por defecto.

Aquí añadimos algunos parámetros al ejemplo anterior (el orden en el que se colocan es indiferente) y también variaremos el tama¤o del area de la ventana a 600x75.

Lo siento, pero no puedes ver este Applet funcionando porque tu navegador no es compatible con JAVA. Actualizarte !!!

Se puede poner un mensaje para que lo lean los que usan un navegador no compatible JAVA y este mensaje es invisible para los que si están viendo ejecutarse el Applet.

Ejemplo 2: DigClk.class (4,6 KB) de William Ogle Jr

Aquí habría un reloj si tu navegador soportase JAVA

Hay veces que el Applet requiere de archivos adicionales para funcionar (generalmente archivos de imagen o sonido). En este reloj necesita las imágenes de los dígitos. Por lo que ademas de instalar el archivo DigClk.class, hay que instalar los archivos de imagen de los dígitos en un directorio que se debe llamar necesariamente decimales (porque asi lo ha dispuesto el autor del applet).

Ejemplo 3: NervousText.class de Sun

<APPLET CODE=NervousText.class width=400 height=75 align=center>
<PARAM NAME="text" VALUE="This is the Applet Viewer.">
</APPLET>

Donde se pueden conseguir applets de Java ?

Pequeño tutor de JAVA
Tutorial de JAVA Augustin Froufe
Catalogo de Applets muy bien organizado y documentado (Mexico).
The Java(TM) Boutique Donde se pueden encontrar mas de cien applets, distribuidos en categorias y con con sus correspondientes instrucciones.
Gamelan Otro sitio muy interesante con un catalogo de recursos muy extenso.
Mercado del Plata Argentina
Apuntes varios sobre JAVA
Instituto tecnologico de informatica
Earth Web
Quien esta interesado en iniciarse en el aprendizaje del lenguaje JAVA podra encontrar direcciones de manuales en español en:

La Agenda, de Manuel Barberán, en la seccion JAVA
Lanzador Internet, de Daniel Lopez Avellaneda

2. Common Gateway Interface - CGI

El CGI permite procesar programas escritos en cualquier lenguaje, aunque los mas usados en Internet son el Perl y el C. Estos programas corren en el servidor y tienen la ventaja de no cargar al cliente.