La historia de JAVA

Hola, es un auténtico placer tenerte por aquí!! Hoy vamos a hablar de JAVA. Veremos el origen de JAVA, sus características más importantes y su funcionamiento interno, espero que te guste.  

Por qué nació JAVA?

En 1985, Sun Microsystems estaba intentando desarrollar una nueva tecnología para programar todo tipo dispositivos inteligentes de nueva generación. El equipo en principio considero utilizar C++, pero decidieron rechazarlo por varios motivos.

  • Para sistemas con recursos limitados, C++ necesitaba demasiada memoria.
  • Excesiva complejidad, en C++ los programadores tenían que administrar manualmente la memoria del sistema, una tarea compleja y que provocaba muchos errores. 
Para liberar de esta tarea al programador JAVA desarrolló un Garbage collector, que permitía una asignación y liberación automática de la memoria a medida que se ejecutaba un programa. Con ello se evitaba toda la aritmética de punteros de lenguajes como C. Al final esto hace que JAVA sea un lenguaje más fácil de aprender y menos propenso a errores, sobre todo para personas que están empezando a aprender a programar. Sin embargo, esto limita sus capacidades, no tenemos la información necesaria para saber en que posición de memoria se encuentra cada variable, esto es especialmente útil para gestionar de forma más eficiente la memoria de los Sistemas Operativos. Es por ello, que para el desarrollo de SO se utilizan lenguajes como C o C++. Como se puede observar en la imagen de arriba. En palabras del propio James Gosling:
 « JAVA es C++ sin pistolas, ni cuchillos «
Otro de los objetivos principales, era crear una plataforma que pudiera adaptarse fácilmente a todo tipo de dispositivos, es aquí donde entra en acción la JVM(maquina virtual de JAVA), más tarde hablaremos de ella.

¿Cuál es el origen del nombre de JAVA?

James Gosling

JAVA realmente nace de la mano de James Gosling y su equipo en 1989, en principio trabajaron durante 18 meses en lo que se conocía como «The Green Project», este proyecto en realidad trataba de crear un lenguaje que pudiera ser utilizado para programar pequeños electrodomésticos. 

Más tarde(1991), pasó a llamarse “Oak”, en referencia a un roble que había en las oficinas de Sun Microsystems. Finalmente, por una serie de problemas legales, termina con el nombre de JAVA. En realidad el nombre de «Oak», ya estaba registrado, es por ello que en la empresa se realizó una tormenta de ideas.

El objetivo era encontrar un nombre que fuera vivo y dinámico, y que fuera fácil de deletrear y de recordar. Salieron muchos nombres, entre ellos Silk, WebDancer, WebSpinner, Pepper, etc. Al final se decidió llamarle JAVA.

El significado real de la palabra tiene que ver con una variedad de café que se empezó a cultivar en indonesia, en la isla de JAVA. Dicha isla tiene unas condiciones climáticas ideales para el cultivo de café. Es por ello que la isla de JAVA es uno de los principales productores de café del mundo.

Además esta variedad de café se consumía tanto, que en algunos lugares se utiliza el término JAVA para referirse al café de forma general.  Por todo ello, el logotipo de JAVA es una taza de café.

El verdadero objetivo de JAVA

En definitiva, el objetivo de JAVA era crear un lenguaje similar a C++ que facilitara la tarea al programador, con orientación a objetos y con una máquina virtual propia. Se pretendía desarrollar un lenguaje que pudiera ser usado sobre cualquier arquitectura y sobre cualquier tipo de dispositivo. Es por ello que se crea bajo el principio “Write Once, Run Anywhre” (escríbelo una vez, ejecútalo en cualquier sitio).

Tras unos años en desarrollo, Sun Microsystems finalmente lo presentó en agosto de 1995, y poco después, el 23 de enero de 1996, se lanza la primera versión, el JDK 1.0. A partir de ese momento han ido apareciendo nuevas versiones con continuas mejoras sobre el lenguaje.

Actualmente JAVA es uno de los lenguajes más utilizados y está instalado en miles de millones de dispositivos, desde teléfonos móviles y tarjetas de crédito hasta supercomputadoras.

Logotipo original de JAVA(1996)

Principales características de JAVA

  • Es un lenguaje orientado a objetos.
  • En JAVA cada programa únicamente se escribe una vez y se compila una vez. La ejecución de los programas JAVA es independiente de la plataforma. “write once, run anywhere”.
  • El secreto de su gran versatilidad reside en la Máquina Virtual JAVA (JVM). La JVM es una extensión del sistema real con el que se trabaja, que permite ejecutar el código resultante de un programa JAVA ya compilado, independientemente de la plataforma donde se ejecute.
  • Es necesario disponer de una JVM en la plataforma desde donde vayamos a ejecutar programas diseñados en JAVA.
  • JAVA no permite que los programas accedan a la memoria del sistema de forma no autorizada, lo que lo hace más seguro que otros lenguajes de programación.
  • JAVA está diseñado para ser escalable, lo que significa que se puede aumentar el tamaño de un programa sin afectar su rendimiento.
Introducción a JAVA

Si te interesa el tema y quieres verlo en un formato distinto. Te dejo también el vídeo donde explico hago una introducción al lenguaje JAVA.

¿Cómo funciona JAVA?

Un programa en JAVA consta de una o más clases interdependientes. Dichas clases son compiladas a un código intermedio llamado BYTECODE JAVA. A su vez, la JVM es la encargada de interpretar ese código intermedio. Es decir, la JVM hace de intermediario entre el BYTECODE JAVA y el Hardware del ordenador. 

El proceso es el siguiente:

En primer lugar creamos un archivo con extensión .java, que es el código fuente de nuestro algoritmo. Más tarde ese código es compilado y obtenemos un archivo con extensión .class. Ese archivo class es el BYTECODE JAVA.

A continuación, ese BYTECODE JAVA es interpretado por la Máquina virtual JAVA, y mediante un compilador JIT se obtiene el código máquina

En último lugar, el código máquina es ejecutado por el Hardware del dispositivo.

El archivo .class en BYTECODE JAVA es exactamente el mismo, independientemente de la plataforma. Es la JVM la que se encarga de interpretar ese BYTECODE y convertirlo en código máquina específico para ese hardware (dispositivo/arquitectura).

Cada tipo de HW obtiene un código máquina distinto.

Hola Mundo en JAVA

A continuación se muestra un ejemplo del típico Hola Mundo en JAVA, en él se puede observar la sintaxis necesaria para imprimir el mensaje «Hola Mundo!» por consola.

Preparando el entorno de JAVA

¿Qué hace falta para ejecutar un programa creado en JAVA?

JAVA Runtime Environment (JRE) 

Máquina Virtual JAVA (JVM), está incluida en el JRE

JAVA Development Kit (JDK)

Editor de código (VS CODE)

Te interesa empezar a programar en JAVA?, te dejo un vídeo donde explico cómo preparar el entorno para poder empezar a programar en JAVA.

Reproducir video acerca de Curso JAVA desde cero

Curso de programación en JAVA

Y para terminar te dejo el curso de programación en JAVA que he desarrollado para el módulo de programación de los CFGS de DAM y DAW.

El objetivo de este curso es que aprendas a programar completamente desde cero. No se necesitan conocimientos previos de ningún tipo para poder empezar.

Es un curso que profundiza en todos los aspectos de la programación. Aunque el curso estará orientado al lenguaje de programación JAVA, se dará una visión mucho más amplia a la programación, con el objetivo de que puedas aprender nuevos lenguajes con facilidad.

La primera unidad, es un acercamiento al mundo de la programación. Esta primera unidad la dedicaremos a entender la lógica de la programación sin orientarla a un lenguaje de programación concreto. Y luego, más adelante, viene ya el grueso del curso, aprender a programar en el lenguaje JAVA.

ÚLTIMAS PUBLICACIONES
Icono cookies
Icono cookies

Utilizamos cookies para asegurar que damos la mejor experiencia al usuario. Si continúa navegando, consideramos que acepta nuestro uso de Cookies. Puede obtener más información en nuestra política de Cookies

Utilizamos cookies para asegurar que damos la mejor experiencia al usuario. Si continúa navegando, consideramos que acepta nuestro uso de Cookies. Puede obtener más información en nuestra política de Cookies