Java surgió en 1991 cuando un grupo de ingenieros de Sun Microsystems trataron de diseñar un nuevo lenguaje de programación destinado a programar pequeños dispositivos electrónicos. La dificultad de estos dispositivos es que cambian continuamente y para que un programa funcione en el siguiente dispositivo aparecido, hay que rescribir el código. Por eso la empresa Sun quería crear un lenguaje independiente del dispositivo.
Pero no fue hasta 1995 cuando pasó a llamarse Java, dándose a conocer al público como lenguaje de programación para computadores. Java pasa a ser un lenguaje totalmente independiente de la plataforma y a la vez potente y orientado a objetos. Esa filosofía y su facilidad para crear aplicaciones para redes TCP/IP ha hecho que sea uno de los lenguajes más utilizados en la actualidad.
El factor determinante para su expansión fue la incorporación de un intérprete Java en la versión 2.0 del navegador Web Netscape Navigator, lo que supuso una gran revuelo en Internet. A principios de 1997 apareció Java 1.1que proporcionó sustanciales mejoras al lenguaje. Java 1.2, más tarde rebautizado como Java 2, nació a finales de 1998.
El principal objetivo del lenguaje Java es llegar a ser el nexo universal que conecte a los usuarios con la información, esté ésta situada en el ordenador local, en un servidor Web, en una base de datos o en cualquier otro lugar.
Para el desarrollo de programas en lenguaje Java es necesario utilizar un entorno de desarrollo denominado JDK (Java Development Kit), que provee de un compilador y un entorno de ejecución (JRE – Java Run Environment) para los bytecodes generados a partir del código fuente. Al igual que las diferentes versiones del lenguaje han incorporado mejoras, el entorno de desarrollo y ejecución también ha sido mejorado sucesivamente.
Java 2 es la tercera versión del lenguaje, pero es algo más que un lenguaje de programación, incluye los siguientes elementos:
- Un lenguaje de programación: Java.
- Un conjunto de bibliotecas estándar que vienen incluidas en la plataforma y que son necesarias en todo entorno Java. Es el Java Core.
- Un conjunto de herramientas para el desarrollo de programas, como es el compilador de bytecodes, el generador de documentación, un depurador, etc.
- Un entorno de ejecución que en definitiva es una máquina virtual que ejecuta los programas traducidos a bytecodes.
El siguiente esquema muestra los elementos fundamentales de la plataforma de desarrollo Java 2.
La plataforma Java 2 no para de crecer debido a su amplio uso, añadiendo continuamente tecnologías que aportan nuevas funcionalidades. Entre otras, actualmente existen:
- J2SE: Entorno de Sun relacionado con la creación de aplicaciones y applets en lenguaje Java para su ejecución en equipo y servidores.
- J2EE: Pensada para la creación de aplicaciones web Java empresariales y del lado del servidor.
- Java FX: Permite crear e implementar Aplicaciones de Internet Enriquecidas (RIAs), cuya interfaz se comparta igual en distintas plataformas.
- Java Embedded: Plataforma creada para su ejecución en sistemas embebidos. Está muy relacionada con el conocido Internet of Things (Internet de las cosas).
- Java Card: tecnología que permite la ejecución de pequeñas aplicaciones Java en tarjetas inteligentes.
Un applet es un componente de una aplicación que se ejecuta en el contexto de otro programa, por ejemplo un navegador web. El applet debe ejecutarse en un contenedor, que lo proporciona un programa anfitrión, mediante un plugin, o en aplicaciones como teléfonos móviles que soportan el modelo de programación por applets.
Aplicaciones que buscan mejorar la experiencia y productividad del usuario ofreciendo las ventajas de las aplicaciones web y aplicaciones tradicional de escritorio.
Concepto que se refiere a la interconexión digital de objetos cotidianos con Internet.