¿Qué son los IDE (Integrated Development Environments)?

Los IDEs o Integrated Development Environments o Entorno de desarrollo integrado son editores de código que ademas puede servirnos para depurar y facilitarnos las diferentes tareas necesarias en el desarrollo de cualquier tipo de aplicación ya que incorporan un conjunto de herramientas como editores contextuales, visuales, refactoring, paletas de componentes de interfaz de usuario, consola de salidas, etc que nos facilitan el desarrollo de aplicaciones.

Es posible que un mismo IDE pueda funcionar con diferentes lenguajes de programación, un buen ejemplo de ello es Eclipse que usaremos para JAVA

Algunas caracteristicas de los IDEs que podemos usar:

- Software Libre y Código Fuente Abierto: Eclipse y NetBeans
- Propietario: IBM Rational Application Developer (RAD), Oracle JDeveloper
- Ambos: IntelliJ IDEA

¿Qué es la JCP (Java Community Process)?

La JCP o Java Community Process es la comunidad de desarrollo de especificaciones de tecnologías JAVA, estas especificaciones establecidad permiten que JAVA sea Estándar, es decir, asegura que cada fabricante de software desarrolla su implementación garantizando compatibilidad y portabilidad, elementos característicos en JAVA.

¿Qué es el JDK (Java Development Kit )?

La JDK es la Plataforma de Desarrollo JAVA. Se trata de la suma de todo lo que contiene la JRE (Java Runtime Environment) más una serie de herramientas de desarrollo como un compilador, debugger, compactador, documentador, etc. necesarios para desarrollar applets y aplicaciones de escritorio.
En la JDK también se encuentran herramientas de seguridad y de despliegue de aplicaciones.

Programa .java y .class ¿Qué son?

Cuando escribimos un programa en JAVA se guarda el código fuente bajo una extensión ".java"

Posteriormente estos archivos son compilados al lenguaje de máquina de la máquina virtual JAVA (JVM). Los archivos compilados tienen extensión ".class"

Más adelante, estos archivos compilados son traducidos por la máquina virtual java para por ser ejecutados en cualquier computadora.


¿Qué es la Máquina Virtual JAVA?

¿Qué es la Máquina Virtual JAVA?

La Máquina Virtual Java (JVM) es el entorno en el que se ejecutan los programas Java, su misión principal es la de garantizar la portabilidad de las aplicaciones Java.

Hablabamos que uno de las principales caracteristicas de JAVA tuvo con su concepción de “escribir solo una vez y ejecutar en cualquier lugar” y para lograr esa independencia de los programas Java, sobre el sistema operativo y el hardware en que se ejecutan es donde toma importancia la Máquina Virtual JAVA o Java Virtual Machine o simplemente JVM.

Si función es amplia pero podemos señalar que entre sus tareas está proporcionar la vista de un nivel de abstracción superior, permitiendo la independencia de la plataforma.

Se denomina máquina virtual porque "crea" una computadora virtual que establece las instrucciones (bytecodes) que esta computadora puede ejecutar. El intérprete Java específico ejecuta las instrucciones que se guardan en los archivos cuya extensión es .class. Las tareas principales de la JVM son las siguientes:
  • Reservar espacio en memoria para los objetos creados
  • Liberar la memoria no usada (garbage collection).
  • Asignar variables a registros y pilas
  • Llamar al sistema huésped para ciertas funciones, como los accesos a los dispositivos
  • Vigilar el cumplimiento de las normas de seguridad de las aplicaciones Java
Esta última tarea, es una de las más importantes que realiza la JVM.

¿Qué significa API?

¿Qué significa API?

Las siglas API provienen de Application Programming Interface y se tratan de un conjunto de librerias de código JAVA compilado que se incluyen en la Java Runtime Environment (JRE) o Entorno de Ejecución JAVA.
Conviene conocerlos porque nos facilitarán el trabajo a la hora de programar.

Algunos paquetes de la API JAVA son:

- java.lang: contiene clases esenciales como números, strings, objetos, seguridad y threads. Es el único paquete que se incluye automáticamente en todo programa Java.

- java.io: contiene las clases que manejan la Entrada/Salida, Serialización de objetos.

- java.util: contiene clases útiles que permiten manejar estructuras de datos o colecciones, fechas, hora, excepciones, etc.

- java.net: contiene clases como URL, TCP, UDP, IP, etc. que permiten implementar aplicaciones distribuidas. Provee soporte para sockets.

- java.awt: contiene clases para el manejo de la GUI, pintar gráficos e imágenes.

- java.applet: contiene clases útiles para la creación y manipulación de applets y recursos para reproducción de audio.

- java.sql: contiene clases para el manejo de base de datos relaciones.

Para obtener información de la API JAVA recomendamos visitar:
http://java.sun.com/j2se/1.5.0/docs/api/

Hablaremos más sobre cada uno de estos API en los próximos post

¿Qué es la JRE (Java Runtime Environment)?

¿Qué es la JRE (Java Runtime Environment)?
Sencillamente es lo que necesitamos para ejecutar JAVA, se trata del Entorno de Ejecución JAVA encargado de brindar los servicios necesarios para que un programa escrito en JAVA pueda ser ejecutado.
Está compuesto por:

- Una Máquina Virtual Java (JMV)

- Un conjunto de librerias o APIs que contienen código JAVA compilado.

Las Ediciones JAVA - JSE (Java Standar Edition), J2EE (Java 2 Enterprise Edition) y J2ME (JAVA 2 Micro Edition).

Las Ediciones JAVA son principalemente tres:

- J2SE (Java 2 Standar Edition) Es la base para todas las plataformas, esta siempre debes tenerla porque provee los fundamentos para las restantes, con ella se puede programar y ejecutar aplicaciones de escritorio y applets. Está compuesta por el JRE (Java Runtime Environment) y el JDK (Java Development Kit )

- J2EE (Java 2 Enterprise Edition) Se trata de una plataforma multiusuario y distribuida para desarrollo y despliegue de aplicaciones empresariales JAVA. Requiere tener instalado el JS2E

- J2ME (JAVA 2 Micro Edition): Es la plataforma de desarrollo de aplicaciones para dispositivos de escasos recursos como los dispositivos móviles. Requiere tener instalado el JS2E

El concepto de JAVA : “escribir solo una vez y ejecutar en cualquier lugar”

El concepto de JAVA : “escribir solo una vez y ejecutar en cualquier lugar”

Uno de las principales carecticas que convirtió a JAVA en el lenguaje preferido por en la actualidad, pricipalmente en la distribución de código en INTERNET es su concepto de “escribir solo una vez y ejecutar en cualquier lugar

Si bien esta idea de un único paquete estándar aplicable a todos los tipos de equipos no pudo ser realizada como se esperó al inicio, se superó el problema de la diversidad de sistemas con el concepto de EDICIONES JAVA que atienden las distintas necesidades de los sistemas, permitiendo desarrollar y ejecutar aplicaciones JAVA “en todos lados”, ya sea teléfonos en celulares, computadoras de escritorios con distintos sistemas operativos, servidores, PDA, etc.

La plataforma JAVA está disponible en tres ediciones:

- JSE (Java Standar Edition)
- J2EE (Java 2 Enterprise Edition)
- J2ME (JAVA 2 Micro Edition).

Hablaremos de cada una de ellas en las próximas entregas

El lenguaje y la Plataforma Java

El lenguaje y la plataforma

Java abarca dos aspectos:

- Un Lenguaje de Programación

- Una Plataforma de Software


La Plataforma de Software Java provee esencialmente dos elementos:

* La Java Virtual Machine: Una máquina virtual con su propio set de instrucciones.

* La Java Platform API: Una interfaz para la programación de aplicaciones.