Applet
La definición más extendida de applet, muy bien resumida
por Patrick Naughton, indica que un applet es "una pequeña aplicación
accesible en un servidor Internet, que se transporta por la red, se instala
automáticamente y se ejecuta in situ como parte de un documento
web". Claro que así la definición establece el entorno (Internet,
Web, etc.). En realidad, un applet es una aplicación pretendidamente
corta (nada impide que ocupe más de un gigabyte, a no ser el pensamiento
de que se va a transportar por la red y una mente sensata) basada en un
formato gráfico sin representación independiente: es decir,
se trata de un elemento a embeber en otras aplicaciones; es un componente
en su sentido estricto.
Un ejemplo en otro ámbito de cosas podría ser el siguiente: Imaginemos una empresa, que cansada de empezar siempre a codificar desde cero, diseña un formulario con los datos básicos de una persona (nombre, dirección, etc.). Tal formulario no es un diálogo por sí mismo, pero se podría integrar en diálogos de clientes, proveedores, empleados, etc. El hecho de que se integre estática (embebido en un ejecutable) o dinámicamente (intérpretes, DLLs, etc.) no afecta en absoluto a la esencia de su comportamiento como componente con que construir diálogos con sentido autónomo.
Pues bien, así es un applet. Lo que ocurre es que, dado que no
existe una base adecuada para soportar aplicaciones industriales Java en
las que insertar nuestras miniaplicaciones (aunque todo se andará),
los applets se han construido mayoritariamente, y con gran acierto comercial
(parece), como pequeñas aplicaciones interactivas, con movimiento,
luces y sonido... en Internet.
Diferencias entre un applet y una aplicación java
Las mayores diferencias entre los Applets y las aplicaciones
se encuentran en el campo de la seguridad y consisten en que los Applets:
-No se pueden ejecutar fuera de un visualizador
-No tiene acceso a los archivos de disco
-Tienen acceso limitado a las redes
Por otro lado, las aplicaciones necesitar contener un método main(), que es el que se ejecuta en su inicio. Se podría desarrollar un código que fuera al mismo tiempo un Applet y una Aplicación, generando una clase derivada de Applet y que contuviera un método main().