- ¿Qué es Java?
- ¿Qué es la plataforma Java?
- Definición y significado de Java
- ¿Para qué se utiliza Java?
- Historia del Lenguaje de Programación Java
- Versiones de Java
- Características de Java
- Componentes del lenguaje de programación Java
- Kit de desarrollo de Java (JDK)
- ¿Por qué usar JDK?
- Máquina Virtual Java (JVM):
- ¿Por qué JVM?
- Entorno de ejecución de Java (JRE)
- ¿Por qué usar JRE?
- Diferentes tipos de plataformas de Java
- ¿Qué es un PC?
- ¿Qué es el Lenguaje Ensamblador?
- ¿Qué son el ensamblador y el compilador?
- ¿Cómo funciona la máquina virtual Java?
- ¿Cómo es Java independiente de la plataforma?
¿Qué es Java?
Java es un lenguaje de programación de propósito general, basado en clases y orientado a objetos, diseñado para tener menos dependencias de implementación. Es una plataforma informática para el desarrollo de aplicaciones. Por lo tanto, Java es rápido, seguro y fiable. Es ampliamente utilizado para el desarrollo de aplicaciones Java en ordenadores portátiles, centros de datos, consolas de juegos, superordenadores científicos, teléfonos móviles, etc.
¿Qué es la plataforma Java?
La Plataforma Java es un conjunto de programas que ayudan a los programadores a desarrollar y ejecutar aplicaciones de programación Java de forma eficiente. Incluye un motor de ejecución, un compilador y un conjunto de bibliotecas en él. Es un conjunto de programas informáticos y especificaciones. James Gosling desarrolló la plataforma Java en Sun Microsystems, y la Corporación Oracle la adquirió posteriormente.
En este tutorial de Java, aprenderás-
- ¿Qué es Java?
- ¿Qué es la plataforma Java?
- Definición y significado de Java
- ¿Para qué se utiliza Java?
- Historia del lenguaje de programación Java
- Versiones de Java
- Características de Java
- Componentes del lenguaje de programación Java
- Diferentes tipos de plataformas Java
- ¿Qué es un PC?
- ¿Qué es el lenguaje ensamblador?
- ¿Qué son el ensamblador y el compilador?
- ¿Cómo funciona la máquina virtual Java?
- ¿Cómo es la independencia de la plataforma Java?
Este vídeo presenta la plataforma Java, y explica por qué Java es una plataforma además de un lenguaje de programación.
Haga clic aquí si el vídeo no es accesible
Definición y significado de Java
Java es un lenguaje multiplataforma, orientado a objetos y centrado en la red. Se encuentra entre los lenguajes de programación más utilizados. Java también se utiliza como plataforma informática.
Es considerado como uno de los lenguajes de programación rápidos, seguros y fiables preferidos por la mayoría de las organizaciones para construir sus proyectos.
¿Para qué se utiliza Java?
Aquí hay algunas aplicaciones importantes de Java:
- Se utiliza para el desarrollo de Apps Android
- Ayuda a crear Software Empresarial
- Amplia gama de Aplicaciones Móviles java
- Aplicaciones de Computación Científica
- Se utiliza para Big Data Analytics
- Programación en Java de dispositivos de Hardware
- Se utiliza para tecnologías del lado del servidor como Apache, JBoss, GlassFish, etc.
Historia del Lenguaje de Programación Java
Aquí están los hitos importantes de la historia del lenguaje Java:
- El lenguaje Java se llamó inicialmente OAK.
- Originalmente, se desarrolló para manejar dispositivos portátiles y decodificadores. Oak fue un fracaso masivo.
- En 1995, Sun cambió el nombre a «Java» y modificó el lenguaje para aprovechar el floreciente negocio de desarrollo de la www (World Wide Web).
- Más tarde, en 2009, Oracle Corporation adquirió Sun Microsystems y se hizo con la propiedad de tres activos clave del software de Sun: Java, MySQL y Solaris.
Versiones de Java
Aquí hay una breve historia de todas las versiones de Java con su fecha de lanzamiento.
Versiones de Java | Fecha de lanzamiento |
JDK Alpha y Beta | 1995 |
JDK 1.0 | 23 de enero de 1996 |
JDK 1.1 | 19 de febrero de 1997 |
J2SE 1.2 | 8 de diciembre de 1998 |
J2SE 1.3 | 8 de mayo de 2000 |
J2SE 1.4 | 6 de febrero de 2002 |
J2SE 5.0 | 30 Sep 2004 |
Java SE 6 | 11 Dic 2006 |
Java SE 7 | 28 Jul 2011 |
Java SE 8 | 18 de marzo de 2014 |
Java SE 9 | 21 de septiembre de 2017 |
Java SE 10 | 20 de marzo de 2018 |
JAVA SE 11 | 25 de Sep 2018 |
JAVA SE 12 | 19 Mar 2019 |
JAVA SE 13 | 17 Sep 2019 |
JAVA SE 14 | 17 Mar 2020 |
JAVA SE 15 | 15 Sep 2020 (última versión de Java) |
Características de Java
Aquí están algunas características importantes de Java:
- Es uno de los lenguajes de programación más fáciles de aprender.
- Escribe el código una vez y ejecútalo en casi cualquier plataforma informática.
- Java es independiente de la plataforma. Algunos programas desarrollados en una máquina pueden ejecutarse en otra.
- Está diseñado para construir aplicaciones orientadas a objetos.
- Es un lenguaje multihilo con gestión automática de la memoria.
- Está creado para el entorno distribuido de Internet.
- Facilita la computación distribuida ya que está centrada en la red.
Componentes del lenguaje de programación Java
Un programador Java escribe un programa en un lenguaje legible por humanos llamado Código Fuente. Por lo tanto, la CPU o los Chips nunca entienden el código fuente escrito en cualquier lenguaje de programación.
Estos ordenadores o chips sólo entienden una cosa, que se llama lenguaje o código de máquina. Estos códigos de máquina se ejecutan en el nivel de la CPU. Por lo tanto, serían códigos máquina diferentes para otros modelos de CPU.
Sin embargo, no hay que preocuparse por el código de máquina, ya que la programación tiene que ver con el código fuente. La máquina entiende este código fuente y los traduce en código comprensible por la máquina, que es un código ejecutable.
Todas estas funcionalidades ocurren dentro de los siguientes 3 componentes de la plataforma Java:
Kit de desarrollo de Java (JDK)
JDK es un entorno de desarrollo de software utilizado para hacer applets y aplicaciones Java. La forma completa de JDK es Java Development Kit. Los desarrolladores de Java pueden utilizarlo en Windows, macOS, Solaris y Linux. El JDK les ayuda a codificar y ejecutar programas Java. Es posible instalar más de una versión de JDK en el mismo ordenador.
¿Por qué usar JDK?
Aquí están las principales razones para usar JDK:
- JDK contiene las herramientas necesarias para escribir programas Java y JRE para ejecutarlos.
- Incluye un compilador, lanzador de aplicaciones Java, Appletviewer, etc.
- El compilador convierte el código escrito en Java en código de bytes.
- El lanzador de aplicaciones Java abre un JRE, carga la clase necesaria y ejecuta su método principal.
Máquina Virtual Java (JVM):
Máquina Virtual Java (JVM) es un motor que proporciona un entorno de ejecución para impulsar el código o las aplicaciones Java. Convierte el bytecode de Java en lenguaje de máquina. JVM es una parte del entorno de ejecución de Java (JRE). En otros lenguajes de programación, el compilador produce código máquina para un sistema determinado. Sin embargo, el compilador de Java produce código para una máquina virtual conocida como Java Virtual Machine.
¿Por qué JVM?
Aquí están las razones importantes de usar JVM:
- JVM proporciona una forma independiente de la plataforma para ejecutar el código fuente de Java.
- Tiene numerosas bibliotecas, herramientas y marcos.
- Una vez que se ejecuta un programa Java, se puede ejecutar en cualquier plataforma y ahorrar mucho tiempo.
- JVM viene con JIT (Just-in-Time) compilador que convierte el código fuente de Java en lenguaje de máquina de bajo nivel. Por lo tanto, se ejecuta más rápido que una aplicación normal.
Entorno de ejecución de Java (JRE)
JRE es una pieza de software que está diseñada para ejecutar otro software. Contiene las bibliotecas de clases, la clase del cargador y la JVM. En términos simples, si quieres ejecutar un programa Java, necesitas JRE. Si no eres un programador, no necesitas instalar JDK, sino sólo JRE para ejecutar programas Java.
¿Por qué usar JRE?
Aquí están las principales razones de usar JRE:
- JRE contiene bibliotecas de clases, JVM, y otros archivos de apoyo. No incluye ninguna herramienta para el desarrollo de Java como un depurador, compilador, etc.
- Utiliza importantes clases de paquetes como math, swing, util, lang, awt, y bibliotecas de tiempo de ejecución.
- Si usted tiene que ejecutar applets de Java, entonces JRE debe ser instalado en su sistema.
Diferentes tipos de plataformas de Java
Hay cuatro tipos diferentes de plataformas de lenguaje de programación Java:
1. Plataforma Java, edición estándar (Java SE): La API de Java SE ofrece la funcionalidad principal del lenguaje de programación Java. Define toda la base de tipo y objeto a clases de alto nivel. Se utiliza para la creación de redes, la seguridad, el acceso a bases de datos, el desarrollo de interfaces gráficas de usuario (GUI) y el análisis sintáctico de XML.
2. Plataforma Java, Enterprise Edition (Java EE): La plataforma Java EE ofrece una API y un entorno de ejecución para desarrollar y ejecutar aplicaciones de red altamente escalables, a gran escala, de varios niveles, fiables y seguras.
3. Plataforma del lenguaje de programación Java, Micro Edition (Java ME): La plataforma Java ME ofrece una API y una máquina virtual de tamaño reducido que ejecuta aplicaciones del lenguaje de programación Java en dispositivos pequeños, como los teléfonos móviles.
4. Java FX: JavaFX es una plataforma para el desarrollo de aplicaciones ricas de Internet que utiliza una API de interfaz de usuario ligera. Utiliza gráficos acelerados por hardware y motores multimedia que ayudan a Java a aprovechar las ventajas de los clientes de mayor rendimiento y un aspecto moderno y API de alto nivel para conectarse a fuentes de datos en red.
Para entender el lenguaje de programación Java, tenemos que entender algún concepto básico de cómo un programa de ordenador puede ejecutar un comando y ejecutar la acción.
¿Qué es un PC?
Un ordenador es un dispositivo electrónico capaz de realizar cálculos. Todos sabemos que está compuesto por un monitor, un teclado, un ratón y una memoria para almacenar información. Pero el componente más importante del ordenador es un PROCESADOR. Éste se encarga de todo el pensamiento del ordenador, pero la cuestión es cómo lo hace. ¿Cómo entiende el texto, las imágenes, los vídeos, etc.?
¿Qué es el Lenguaje Ensamblador?
El ordenador es un dispositivo electrónico, y sólo puede entender señales electrónicas o señales binarias. Por ejemplo, la señal electrónica de 5 voltios puede representar el número binario 1, mientras que 0 voltios puede representar el número binario 0. Así que su PC está continuamente bombardeado con estas señales.
Los ocho bits de estas señales se agrupan para interpretar textos, números y símbolos.
Por ejemplo, el símbolo # es identificado por el ordenador como 10101010. Del mismo modo, el patrón para añadir una función se representa por 10000011.
Esto se conoce como computación de 8 bits. El procesador actual es capaz de decodificar el tiempo de 64 bits. Pero, ¿cuál es la relación de este concepto con el lenguaje de programación JAVA? Entendamos esto como un ejemplo.
Supongamos que quieres decirle al ordenador que sume dos números (1+2) representados por unos números binarios (10000011), ¿cómo se lo vas a decir a tu ordenador? Sí, vamos a utilizar el lenguaje ensamblador para que se ejecute nuestro código.
«El lenguaje ensamblador es la forma más elemental de los lenguajes de desarrollo de software».
Vamos a dar la orden a un ordenador en este formato, como se muestra a continuación. Su código para sumar dos números en este lenguaje sería en este orden.
- Almacenar el número 1 en la posición de memoria digamos A
- Almacenar el número 2 en la posición de memoria digamos B
- Añadir el contenido de la posición A & B
- Almacenar los resultados
¿Pero cómo vamos a hacer esto? En los años 50, cuando los ordenadores eran enormes y consumían mucha energía, se convertía el código ensamblador en el código máquina correspondiente a 1 y 0 mediante hojas de mapeo. Más tarde, este código se perforaría en las tarjetas de la máquina y se introduciría en el ordenador. El ordenador leerá estos códigos y ejecutará el programa. Esto sería un proceso largo entonces hasta que el ASSEMBLER vino a ayudar.
¿Qué son el ensamblador y el compilador?
Con el avance de la tecnología, se inventaron los dispositivos i/o. Se podía teclear directamente el programa en el PC utilizando el ASSEMBLER. Este lo convierte en el código máquina correspondiente (110001..) y lo alimenta a su procesador. Volviendo a nuestro ejemplo de adición de (1+2), el ensamblador convertirá este código en código máquina y saldrá.
Eso aparte, también tendrá que hacer llamadas para crear funciones proporcionadas por el sistema operativo para mostrar la salida del código.
Pero sólo el ensamblador no está involucrado en este proceso; también requiere el compilador para compilar el código largo en un pequeño trozo de códigos. Con el avance de los lenguajes de desarrollo de software, todo este código ensamblador podría reducirse a una sola línea print f 1+2 A con el software llamado COMPILER. Se utiliza para convertir tu código en lenguaje c en código ensamblador. El ensamblador lo convierte en el correspondiente código máquina. Este código máquina será transmitido al procesador. El procesador más común usado en PC o Computadoras es el procesador Intel.
Aunque los compiladores actuales vienen con ensamblador pueden convertir directamente su código de lenguaje superior en código máquina.
Ahora, supongamos que el sistema operativo Windows se ejecuta en este procesador Intel, la combinación del sistema operativo más el procesador se llama PLATAFORMA. La plataforma más común en el mundo es Windows e Intel se llama Plataforma Wintel. Las otras plataformas populares son AMD y Linux, Power PC, y Mac OS X.
Ahora, con un cambio de procesador, las instrucciones de ensamblaje también cambiarán. Por ejemplo:
- La instrucción Add en Intel puede llamarse ADDITION para AMD
- O Math ADD para Power PC
Y, con un cambio de Sistema Operativo, el nivel y la naturaleza de las llamadas a nivel de SO’ también cambiarán.
Como desarrollador, quiero que mi programa de software funcione en todas las plataformas para maximizar mis ingresos. Así que tendría que comprar compiladores separados que conviertan mi comando print f en el código máquina nativo.
Pero los compiladores son caros, y existe la posibilidad de que haya problemas de compatibilidad. Así que comprar e instalar un compilador separado para diferentes sistemas operativos y procesadores no es factible. Entonces, ¿cuál puede ser una solución alternativa? Introduzca el lenguaje Java.
¿Cómo funciona la máquina virtual Java?
Al utilizar la máquina virtual de Java, este problema puede ser resuelto. Pero cómo funciona en diferentes procesadores y S.O. Vamos a entender este proceso paso a paso.
Paso 1) El código para mostrar la suma de dos números es System.out.println(1+2), y se guarda como archivo .java.
Paso 2) Usando el compilador de java el código se convierte en un código intermedio llamado bytecode. La salida es un archivo .class.
Paso 3) Este código no es entendido por ninguna plataforma, sino sólo por una plataforma virtual llamada Máquina Virtual Java.
Paso 4) Esta Máquina Virtual reside en la RAM de tu sistema operativo. Cuando la Máquina Virtual es alimentada con este bytecode, identifica la plataforma en la que está trabajando y convierte el bytecode en el código máquina nativo.
Mientras trabajas en tu PC o navegas por la web, siempre que veas cualquiera de estos iconos, ten por seguro que la máquina virtual de java está cargada en tu memoria RAM. Pero lo que hace que Java sea lucrativo es que el código, una vez compilado, puede ejecutarse no sólo en todas las plataformas de PC, sino también en móviles u otros aparatos electrónicos que soporten Java.
Por lo tanto,
«Java es un lenguaje de programación además de una plataforma»
¿Cómo es Java independiente de la plataforma?
Al igual que el compilador de C, el compilador de Java no produce código ejecutable nativo para una máquina en particular. En su lugar, Java produce un formato único llamado bytecode. Se ejecuta según las reglas establecidas en la especificación de la máquina virtual. Por lo tanto, Java es un lenguaje independiente de la plataforma.
El bytecode es comprensible para cualquier JVM instalada en cualquier sistema operativo. En resumen, el código fuente de java puede ejecutarse en todos los sistemas operativos.
Resumen:
- Java es un lenguaje de programación multiplataforma, orientado a objetos y centrado en la red Java es un lenguaje de programación de propósito general, basado en clases y orientado a objetos.
- La Plataforma Java es una colección de programas que ayudan a los programadores a desarrollar y ejecutar aplicaciones Java de forma eficiente.
- Significado de Java: Java es un lenguaje de programación multiplataforma y centrado en la red.
- Se utiliza principalmente para el desarrollo de aplicaciones Android y software empresarial.
- 2009, Oracle Corporation adquirió Sun Microsystems y se hizo con la propiedad de tres activos clave del software de Sun: Java, Solaris y MySQL.
- La última versión de Java se lanzó el 15 de septiembre de 2020
- La mejor característica del Java es que es uno de los lenguajes de programación más fáciles de aprender.
- Cuatro tipos de plataformas de lenguaje de programación Java son: 1) Java Platform, Standard Edition (Java SE) 2) Java Platform, Enterprise Edition (Java EE) 3) Java Platform, Micro Edition (Java ME) 4) JavaFX
- Un ordenador es un dispositivo electrónico capaz de realizar cálculos.
- El ordenador sólo entiende señales electrónicas o señales binarias.
- El ensamblador es una tecnología avanzada que convierte el núcleo de la fuente en el correspondiente código máquina (110001..) y lo alimenta a su procesador.