JAVA Básico - Parte 1 (Qué es JAVA?)
Tags: java, spanish, beginners, tutorial
Published: 2023-03-28 20:26:36

<sub><sup>Créditos imagen: [Imagen de lucabravo en Freepik](https://www.freepik.es/foto-gratis/encendido-computadora-portatil-gris_12661377.htm#query=java&position=0&from_view=keyword&track=sph)</sup></sub>
---

## ¿Qué es JAVA?
JAVA es un lenguaje de programación creado en 1991 por James Gosling mientras trabajaba en Sun Microsystems. Es un lenguaje multiplataforma que, como pocos, tiene un rendimiento formidable en cada plataforma en la que se despliega.

En 2009, Sun Microsystems fue comprado por Oracle, lo que llevó a que James Gosling abandonara la empresa en 2010.

JAVA existe en dos presentaciones: JAVA SE (Standard Edition) y JAVA EE (Enterprise Edition). En términos simples, la diferencia entre ambas versiones se basa en las herramientas y el tiempo de soporte que posee cada una. Para aprender y desarrollar casi cualquier cosa que desees, la versión Standard te servirá. La base y la sintaxis del lenguaje están presentes en ambas versiones, aunque la versión Enterprise es mayormente usada por empresas que poseen aplicaciones web de última generación.

Todo lo que aprendas y hagas con la versión Standard de JAVA se ejecutará sin problemas en la versión Enterprise.

El gran éxito de JAVA durante los 90 y 2000 se debió a su filosofía 

> WORA (Write Once Run Anywhere) - "Escribe una vez, corre en todo". 

Esta filosofía es la que impulsa a JAVA a que, con un solo lenguaje y sin mayores cambios, tus programas se ejecuten en el sistema operativo de un móvil, Windows, Linux, MacOS, etc.

## JDK (Java Developer Kit)
El JDK es un paquete con las herramientas necesarias para poder desarrollar en JAVA. Se compone principalmente de tres herramientas:

1. JRE (Java Runtime Environment): Aquí se encuentra fundamentalmente la máquina virtual de JAVA (JVM), más algunas herramientas que la hacen funcionar. Es esencial y es lo que realmente hace que JAVA sea multiplataforma. En términos extremadamente simples, esta máquina virtual es la que ejecuta el código escrito en JAVA. Por eso, cuando escribes algo en JAVA, no lo escribes para un sistema operativo, sino para la JRE. Este es el secreto de JAVA y su filosofía WORA: tus programas corren sobre la JRE, lo que permite abstraerlos del sistema operativo que los ejecute.

2. Compilador JAVA: Esta herramienta transforma nuestros archivos de lenguaje JAVA en archivos de "bytecode" para que puedan ser ejecutados por la JRE. 

3.  API de desarrollo: Es el conjunto de herramientas que nos brinda la base para desarrollar nuestros programas. Por ejemplo, todo el código relacionado con la definición de clases, scopes, variables, paquetes, etc. Es todo lo que permite que, al escribir, no tengamos que definir qué es una "clase" o qué es una "función main".


![Compilación de JAVA](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/03q360gpb0sp3v7nsqd0.png)



## Las versiones de JAVA

![Versiones y soporte de JAVA](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7m1rwpdr1sk2fdb14v4f.png)
En cuanto a las versiones de Java, hay mucho de qué hablar. En la tabla anterior, estamos obviando todas las versiones anteriores a la versión 5.

En cada versión, se mejoran aspectos de seguridad y rendimiento, y se agregan herramientas a la API de desarrollo que expanden las posibilidades del lenguaje, como las herramientas para realizar programación funcional, por ejemplo.

Actualmente, Java se actualiza cada 6 meses. Es decir, si hoy, por ejemplo, estuviéramos en la versión 20 de Java, en 6 meses más tendríamos la versión 21 de Java. Obviamente, tener tantas versiones puede ser un lío cuando queremos desarrollar programas seguros que tengan soporte por más de 6 meses. Aquí es donde entran las versiones LTS (Soporte a Largo Plazo).

Las versiones LTS tienen un soporte de 3 años, sin dejar de salir versiones con soporte de 6 meses.

## Open JDK
Desde Java 11, Oracle cobra una licencia por el uso de Java en "producción". En ambientes de desarrollo y testing, no hay problema en descargar Java desde el sitio de Oracle, donde solo creando una cuenta tendrás acceso a los JDK.

Sin embargo, para la versión SE de Java, Oracle dispone de una implementación de código abierto de Java llamada OpenJDK. En donde puedes descargar los kits de desarrollo sin las limitaciones de Oracle, pero siempre seguras y con soporte de la comunidad.

Puedes encontrarla en la página oficial del proyecto OpenJDK [Open JDK](https://openjdk.org).

OpenJDK existe desde Java 6, impulsada por Sun Microsystems desde el año 2006 y soportada por la comunidad y compañías como Red Hat.

## Conclusiones
Vimos cómo funciona esencialmente el JDK de Java, qué herramientas posee y cómo crea su magia para ser multiplataforma. También vimos cómo, desde un archivo .java, pasa a ser .class, las versiones de Java y la importancia de las versiones LTS de Java. Finalmente, vimos dónde puedes conseguir los kits de desarrollo de Java: desde Oracle directamente, con las limitaciones que te da la compañía, o con la versión de código abierto que aporta OpenJDK.