Applets

En Java, un applet es un programa que puede incrustarse en un documento HTML, es decir, en una página web. Cuando un navegador carga una página web que contiene un applet, este se descarga en el navegador web y comienza a ejecutarse. Esto permite crear programas que cualquier usuario puede ejecutar con tan solo cargar la página web en su navegador.

Ventajas de los Applets

Los applets de Java suelen tener las siguientes ventajas:

  • Son multiplataforma (funcionan en Linux, Windows, Mac OS y en cualquier sistema operativo para el cual exista una Java Virtual Machine).
  • El mismo applet puede trabajar en “todas” las versiones de Java, y no sólo la última versión del plugin. Sin embargo, si un applet requiere una versión posterior del Java Runtime Environment (JRE), el cliente se verá obligado a esperar durante la descarga de la nueva JRE.
  • Es compatible con la mayoría de los navegadores web.
  • Puede ser almacenado en la memoria caché de la mayoría de los navegadores web, de modo que se cargará rápidamente cuando se vuelva a cargar la página web, aunque puede quedar atascado en la caché, causando problemas cuando se publican nuevas versiones.
  • Puede tener acceso completo a la máquina en la que se está ejecutando, si el usuario lo permite.
  • Puede ejecutarse a velocidades comparables a la de otros lenguajes compilados, como C++ (dependiendo de la versión de la JVM).
  • Puede trasladar el trabajo del servidor al cliente, haciendo una solución web más escalable tomando en cuenta el número de usuarios o clientes.

Desventajas de los Applets

Los applets de Java suelen tener las siguientes desventajas:

  • Requiere el plugin de Java, que no está disponible por defecto en todos los navegadores web.
  • No puede iniciar la ejecución hasta que la JVM esté en funcionamiento, y esto puede tomar tiempo la primera vez que se ejecuta un applet.
  • Si no está firmado como confiable, tiene un acceso limitado al sistema del usuario – en particular no tiene acceso directo al disco duro del cliente o al portapapeles.
  • Algunas organizaciones sólo permiten la instalación de software a los administradores. Como resultado, muchos usuarios (sin privilegios para instalar el plugin en su navegador) no pueden ver los applets.
  • Un applet podría exigir una versión específica del JRE.

Características de Java

Las características principales que nos ofrece Java son:

1. Lenguaje Simple

Se lo conoce como lenguaje simple porque viene de la misma estructura de C y C++; ya que C++ fue un referente para la creación de Java por eso utiliza determinadas características de C++ y se han eliminado otras.

2. Orientado a Objetos

Toda la programación en Java en su mayoría está orientada a objetos, ya que al estar agrupados en estructuras encapsuladas es más fácil su manipulación.

3. Distribuido

Permite abrir sockets, establecer y aceptar conexiones con los servidores o clientes remotos; facilita la creación de aplicaciones distribuidas ya que proporciona una colección de clases para aplicaciones en red.

4. Robusto

Es altamente fiable en comparación con C, se han eliminado muchas características con la aritmética de punteros, proporciona numerosas comprobaciones en compilación y en tiempo de ejecución.

5. Seguro

La seguridad es una característica muy importante en Java ya que se han implementado barreras de seguridad en el lenguaje y en el sistema de ejecución de tiempo real.

6. Indiferente a la Arquitectura

Java es compatible con los más variados entornos de red, cualquiera sean estos desde Windows 95, Unix a Windows NT y Mac, para poder trabajar con diferentes sistemas operativos. Java es muy versátil ya que utiliza byte-codes que es un formato intermedio que sirve para transportar el código eficientemente o de diferentes plataformas (Hardware – Software).

7. Portable

Por ser indiferente a la arquitectura sobre la cual está trabajando, esto hace que su portabilidad sea muy eficiente, sus programas son iguales en cualquiera de las plataformas, ya que Java especifica tamaños básicos, esto se conoce como la máquina virtual de Java.

8. Interpretado y Compilado a la Vez

Java puede ser compilado e interpretado en tiempo real, ya que cuando se construye el código fuente este se transforma en una especie de código de máquina.

9. Multihebra o Multihilos

Java tiene una facilidad de cumplir varias funciones al mismo tiempo, gracias a su función de multihilos ya que por cada hilo que el programa tenga se ejecutarán en tiempo real muchas funciones al mismo tiempo.

10. Dinámico

El lenguaje Java es muy dinámico en la fase de enlazado, sus clases solamente actuarán en medida en que sean requeridas o necesitadas con esto permitirá que los enlaces se puedan incluir incluso desde fuentes muy variadas o desde la red.

11. Produce Applets

En Java se pueden crear aplicaciones independientes y applets.

  • Independientes porque se pueden comportar como cualquier programa escrito en cualquier lenguaje.
  • Por otra parte los applets considerados pequeños programas, tienen la capacidad de ejecutar funciones muy complejas.

12. Alto Rendimiento

Java es considerado de alto rendimiento por ser tan veloz en el momento de correr los programas y por ahorrarse muchas líneas de código.

¿En qué Consiste la Máquina Virtual Java?

Una máquina virtual Java (en inglés Java Virtual Machine, JVM) es una máquina virtual de proceso nativo, es decir, ejecutable en una plataforma específica, capaz de interpretar y ejecutar instrucciones expresadas en un código binario especial (el bytecode Java), el cual es generado por el compilador del lenguaje Java.

El código binario de Java no es un lenguaje de alto nivel, sino un verdadero código máquina de bajo nivel, viable incluso como lenguaje de entrada para un microprocesador físico. Como todas las piezas del rompecabezas Java, fue desarrollado originalmente por Sun.

La JVM es una de las piezas fundamentales de la plataforma Java. Básicamente se sitúa en un nivel superior al Hardware del sistema sobre el que se pretende ejecutar la aplicación, y este actúa como un puente que entiende tanto el bytecode, como el sistema sobre el que se pretende ejecutar.

Tipos de Datos en Java

2Q==