Java – Versiones

  • JDK 1.0 (23 de Enero de 1996)

* 8 paquetes, 212 clases
* Nombre clave del proyecto: Oak

  • JDK 1.1 (19 de Febrero de 1997)

* 23 paquetes, 504 clases

– Reestructuración intensiva del modelo de eventos AWT (Abstract Windowing Toolkit)
– Clases internas (inner classes)
– JavaBeans
– JDBC (Java Database Connectivity), para la integración de bases de datos
– Reflexión soportando Introspección, pero sin posibilidad de modificaciones en tiempo de ejecución.
– RMI (Remote Method Invocation).

  • J2SE 1.2 (8 de Diciembre de 1998)

* 59 paquetes, 1520 clases
* Nombre clave del proyecto: Playground

Esta y las siguientes versiones fueron denominadas como Java 2 y el nombre “J2SE” (Java 2 Platform, Standard Edition) que reemplazó a “JDK” para distinguir la plataforma base de J2EE (Java 2 Platform, Enterprise Edition) y J2ME (Java 2 Platform, Micro Edition).

– La palabra reservada (keyword) strictfp.
– Reflexión en la programación.
– La API gráfica ( Swing) fue integrada en las clases básicas.
– La máquina virtual (JVM) de Sun fue equipada con un compilador JIT (Just in Time) por primera vez.
– Java Plug-in
– Java IDL, una implementación de IDL (Interfaz para Descripción de Lenguaje) para la interoperabilidad con CORBA
– Colecciones (Collections)

  • J2SE 1.3 (8 de mayo de 2000)

* 77 paquetes, 1595 clases
* Nombre clave del proyecto: Kestrel

– La inclusión de la máquina virtual de HotSpot JVM (la JVM de HotSpot fue lanzada inicialmente en abril de 1999, para la JVM de J2SE 1.2)
– RMI fue cambiado para que se basara en CORBA.
– JavaSound
– Se incluyó el Java Naming and Directory Interface (JNDI) en el paquete de librerías principales (anteriormente disponible como una extensión).
– Java Platform Debugger Architecture (JPDA)
– Synthetic proxy classes.

  • J2SE 1.4 (6 de febrero de 2002)

* 103 paquetes, 2175 clases
* Nombre clave del proyecto: Merlin.

Este fue el primer lanzamiento de la plataforma Java desarrollado bajo el Proceso de la Comunidad Java como JSR 59.

– Palabra reservada assert (Especificado en JSR 41.)
– Expresiones regulares modeladas al estilo de las expresiones regulares Perl.
– Encadenación de excepciones Permite a una excepción encapsular la excepción de bajo nivel original.
– Non-blocking NIO (New Input/Output) (Especificado en JSR 51.)
– Logging API (Specified in JSR 47.)
– API I/O para la lectura y escritura de imágenes en formatos como JPEG o PN
– Parser XML integrado y procesador XSLT (JAXP) (Especificado en JSR 5 y JSR 63.)
– Seguridad integrada y extensiones criptográficas (JCE, JSSE, JAAS) Java Web Start incluido (El primer lanzamiento ocurrió en Marzo de 2001 para J2SE 1.3) (Especificado en JSR 56.)
– Incluido Java Web Start (Java Web Start fue publicado por primera ves en Marzo, 2001 para J2SE 1.3) (Especificado en JSR 56.)

– Preferences API (java.util.prefs)

  • J2SE 5.0 (30 de septiembre de 2004)

* 131 paquetes, 2656 clases
* Nombre clave del proyecto: Tiger

Originalmente numerado como la versión 1.5, permanece como nombre interno de la versión.

– Plantillas (genéricos) – provee conversión de tipos (type safety) en tiempo de compilación para colecciones y elimina la necesidad de la mayoría de conversion de tipos (type casting). (Especificado por JSR 14).
– Metadatos – también llamados anotaciones, permite a estructuras del lenguaje como las clases o los métodos, ser etiquetados con datos adicionales, que puedan ser procesados posteriormente por utilidades de proceso de metadatos. (Especificado por JSR 175).
– Autoboxing/unboxing – Conversiones automáticas entre tipos primitivos (Como los int) y clases de envoltura primitivas (Como Integer). (Especificado por JSR 201).
– Enumeraciones – la palabra reservada enum crea una typesafe, lista ordenada de valores (como Dia.LUNES, Dia.MARTES, etc.). Anteriormente, esto solo podía ser llevado a cabo por constantes enteras o clases construidas manualmente (enum pattern). (Especificado por JSR 201).
– Varargs (número de argumentos variable) – El último parámetro de un método puede ser declarado con el nombre del tipo seguido por tres puntos (e.g. void drawtext(String… lines)). En la llamada al método, puede usarse cualquier número de parámetros de ese tipo, que serán almacenados en un array para pasarlos al método
– Bucle for mejorado – La sintaxis para el bucle for se ha extendido con una sintaxis especial para iterar sobre cada miembro de un array o sobre cualquier clase que implemente Iterable, como la clase estándar Collection, de la siguiente forma:

void displayWidgets (Iterable<Widget> widgets) {
     for (Widget w: widgets) {
         w.display();
     }
}

Este ejemplo itera sobre el objeto Iterable widgets, asignando, en orden, cada uno de los elementos a la variable w, y llamando al método display() de cada uno de ellos. (Especificado por JSR 201.)

  • Java SE 6 (11 de Diciembre de 2006)

* Nombre clave del proyecto: Mustang

Estuvo en desarrollo bajo la JSR 270. En esta versión, Sun cambió el nombre “J2SE” por Java SE y eliminó el “.0” del número de versión.

– Soporte para Win9x abandonado. Java 6 (UpDate 7) es la ultima versión compatible con estas versiones de windows, posiblemente esto sea por los cambios dramáticos en el UpDate 10.
– Incluye un nuevo marco de trabajo y APIs que hacen posible la combinación de Java con lenguajes dinámicos como PHP, Python, Ruby y JavaScript.
– Incluye el motor Rhino, de Mozilla, una implementación de Javascript en Java.
– Incluye un cliente completo de Servicios Web y soporta las últimas especificaciones para Servicios Web, como JAX-WS 2.0, JAXB 2.0, STAX y JAXP.
– Java Compiler API (JSR 199): una API que permite seleccionar e invocar un compilador.
– Soporte JDBC 4.0 (JSR 221).
– Mejoras dramáticas en la performance del core.
– Mejoras en GUI: integración de SwingWorker en la API, ordenado y filtrado de tablas y verdadero doble-buffering en Swing (eliminando el efecto de “gray-area”).
– Mejoras en la JVM: optimización del performance de la sincronización y el compilador, nuevos algoritmos en el Colector de Basura y menos start-up time en aplicaciones.

Update 10 (15 de Octubre de 2008)
Java SE 6 Update 10 (anteriormente conocido como Java SE 6 Update N) no hace cambios en ninguna API publica pero mejora la funcionabilidad para el usuario final.
– Java Deployment Toolkit, un set de funciones JavaScript para facilitar la distribución de de applets y aplicaciones a través de Java Web Start.
– Java Kernel, un instalador pequeño que incluye solo lo mas comúnmente usado del JRE, los demás paquetes son descargados cuando son necesitados.
– Actualizador mejorado.
– Java Quick Starter, para mejorar el tiempo de start-up.
– Mejorada la performance de gráficos Java2D en Windows, usando Direct3d y aceleración por hardware.
– Un nuevo “Look and Feel” llamado Nimbus basado en synth.
– Next-Generation Java Plug-In: ahora los applets se ejecutan en procesos separados y soportan capacidades de las aplicaciones en Web Start.

Update 11 (3 de Diciembre de 2008)

Update 12 (…)
– Incluye plug-in 64-bit (para navegadores 64-bit.
– Soporte para Windows Server 2008
– Mejora de rendimiento en aplicaciones Java y JavaFx.

Update 14 (28 de Mayo de 2009)
– Mejoras en el rendimiento del compilador JIT HotSpot.
– Punteros comprimidos para maquinas 65-bit.
– Soporte para el colector de basura de baja pausa G1 (Garbage First).

El parámetro -XX:+DoEscapeAnalysis en la JVM indica al compilador JIT HotSpot que use análisis de escape (Escape Analysis) para determinar si los objetos locales pueden ubicarse en la pila (stack) en cambio del montículo (heap).

Se detecta un problema con esta Update, los depuradores parecen no detectar los breakpoints. Se soluciona temporalmente el problema utilizando el parámetro -XX:+UseParallelGC o retornando a la Update 13.

Update 15 (…)

Update 16 (11 de Agosto de 2009)
Se soluciona el problema introducido en la Update 14 por el cual los Depuradores no detectaban los breakpoints.

Update 17 (4 de Noviembre de 2009)

Update 18 (13 de Enero de 2010)

Update 19 (30 de Marzo de 2010)

Update 20 (15 de Abril de 2010)

Update 21 (7 de Julio de 2010)

Update 22 (12 de Octubre de 2010)

Update 23 (8 de Diciembre de 2010)

Update 24 (15 de Febrero de 2011)

Update 25 (21 de Abril de 2011)
Se incluye la compilación escalonada (“tiered compilation”) que permite a la maquina virtual en modo Servidor iniciarse rápidamente como en modo Cliente. Esta función se puede activar con los parámetros -server y -XX:+TieredCompilation .

Update 26 (7 de Junio de 2011)


Fuente:
* Traducido desde http://en.wikipedia.org/…

Más información:
* Oracle – Update Release Notes


, ,

  1. Deja un comentario

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: