-
Nacimineto de Java
Sun Microsystems inicio un proyecto liderado por James Gosling con el propósito de crear un lenguaje para la televisión interactiva. Inicialmente llamado Oak, pero cambiado a Java debido a una empresa existente llamada Oak Technology. -
Cambio de orientación
Tras varias sesiones entre los miembros del equipo, se decidió reorientar Java a la Web. Naughton, miembro destacado del proyecto, creó entonces un prototipo de navegador, WebRunner, despues renombrado a HotJava. -
JDK Alpha and Beta
Se anunciaron públicamente Java y HotJava, la promesa inicial era "Write Once, Run Anywhere".
Su filosofía seguía una serie de objetivos:
1. Usar el paradigma de la programación orientada a objetos.
2. Permitir la ejecución de un mismo programa en múltiples sistemas operativos.
3. Incluir por defecto soporte para trabajo en red.
4. Diseñarse para ejecutar código en sistemas remotos de forma segura.
5. Ser fácil de usar y tomar lo mejor de otros lenguajes orientados a objetos, como C++. -
JDK 1.0: Primera versión estable
Fue la primera versión estable.
Hasta JDK 1.0.1, las palabras clave Private y Protected podían usarse juntas para crear otra forma de protección que solía actuar como una restricción a métodos o variables principalmente a subclases de una clase determinada. En JDK 1.0.2, esta capacidad se ha eliminado. -
JDK 1.1
Caracterissticas añadidas:
El concepto de Inner Class
JavaBeans
JDBC
RMI
El modelo de eventos de AWT fue totalmente remodelado.
Reflection (que solo admitía Introspection, la modificación no era posible en tiempo de ejecución).
Compilador JIT (Just In Time) en plataformas Microsoft Windows, producido para JavaSoft por Symantec
Soporte de internacionalización y Unicode con origen en Taligent. -
J2SE 1.2
Reemplazó a JDK para reconocer la plataforma base de J2EE (Java 2 Platform, Enterprise Edition) y J2ME.
Características añadidas:
Java plug-in.
Java IDL, una implementación IDL para la interoperabilidad CORBA.
Collections framework.
La API gráfica de Swing se integró en las clases principales.
La JVM de Sun estaba equipada con un compilador JIT por primera vez. -
J2SE 1.3
Características añadidas:
HotSpot JVM incluido.
RMI se modificó para admitir la compatibilidad opcional con CORBA.
JNDI (Java Naming and Directory Interface).
Java Platform Debugger Architecture (JPDA) incluido.
JavaSound.
Clases de proxy sintéticas. -
Regulación de Java por el JCP
La evolución del lenguaje ha pasado a ser regulada por el JCP (Java Community Process), que usa Java Specification Requests (JSRs) para proponer y especificar cambios en la plataforma Java. El lenguaje en sí mismo está especificado en la Java Language Specification (JLS). -
J2SE 1.4
Fue la primera plataforma Java que se lanzó bajo el Java Community Process (JCP). Características añadidas:
Bibliotecas mejoradas.
Expresiones regulares de Perl incluidas.
Encadenamiento de excepciones proporcionado.
Soporte IPv6.
API de registro.
API de E / S de imagen para leer y escribir imágenes en formatos como JPEG y PNG.
Analizador XML y procesador XSLT integrados.
Extensiones de seguridad y criptografía (JCE, JSSE, JAAS) integradas. -
J2SE 5.0
Se cambio de la versión 1.5 a la 5.0 para "reflejar mejor el nivel de madurez, estabilidad, escalabilidad y seguridad del J2SE" Características añadidas:
Proporcionó seguridad de tipo en tiempo de compilación para colecciones.
Metadatos o anotaciones usados.
Autoboxing / unboxing.
Enumeraciones.
Mejorado para cada bucle.
Semántica de ejecución mejorada para programas Java de subprocesos múltiples.
Importaciones estáticas. -
Java SE 6
Java reemplazó el nombre J2SE por Java SE y eliminó el .0 del número de versión. Características añadidas:
Se eliminó el soporte para versiones anteriores de Win9x.
Soporte de lenguaje de secuencias de comandos.
API genérica para una estrecha integración con lenguajes de secuencias de comandos.
Soporte de servicio web mejorado.
Soporte JDBC 4.0.
Utiliza una API de compilador de Java para invocar un compilador de Java mediante programación. -
Oracle compra Sun Microsystems
Por 7.400 millones de dólares, Oracle compro Sun Microsystems, y con ello a Java y muchos otros proyectos. Algunos de los máximos responsables de Sun dimitieron de sus cargos justo después de la adquisición, destacando a James Gosling que se marcho con la premisa de que había "un entorno de trabajo extremadamente desagradable". -
Java SE 7
Características añadidas:
Soporte JVM para lenguajes dinámicos.
Puntero comprimido de 64 bits.
Cadenas agregadas en el interruptor.
Gestión automática de recursos en declaración de prueba.
Se permiten guiones bajos en literales numéricos.
Literales enteros binarios.
Interfaz de tipo mejorada para crear instancias genéricas.
Captura y lanzamiento mejorados.
Se proporcionan conjuntos de reglas de implementación de Java. -
Java SE 8
Características añadidas:
Soporte a nivel de idioma para expresiones Lambda.
Permitió a los desarrolladores incrustar código JavaScript en aplicaciones.
Anotación de Java Types.
API de fecha y hora proporcionada.
Repetición de anotaciones.
Lanzamiento de aplicaciones JavaFX.
Eliminación de generación permanente. -
Java SE 9
Características añadidas:
Modularización del JDK bajo Project Jigsaw.
API de moneda y dinero proporcionada.
Estrecha integración con JavaFX.
Implementación Java de flujos reactivos.
Más actualizaciones de simultaneidad.
Proporcionado Java Linker.
Escalado y dimensionado automático. -
Java SE 10
Características añadidas:
Inferencia de tipo de variable local
Compilador JIT
Uso compartido de datos de clases de aplicaciones
Versiones basadas en tiempo
GC completo en paralelo para G1
Interfaz recolector de basura
Extensiones adicionales de etiquetas Unicode
Certificados raíz
Handshakes locales de subprocesos
Asignación de montón en dispositivos de memoria alternativos
Eliminó la herramienta de generación de encabezados nativos
Consolida el bosque JDK -
Java SE 11
Características añadidas:
Constantes dinámico Clase-File
Epsilon: un recolector de basura no-op
Sintaxis local-variable para los parámetros de Lambda
Baja sobrecarga de perfiles Montón
HTTP Client (Estándar)
Transport Layer Security (TLS) 1.3
Registradores de vuelo
JavaFX , Java EE y CORBA módulos se han eliminado de JDK.