Breve historia de Java

By afarfan
  • Nacimiento de Java

    Nacimiento de Java
    Java fue creada por Sun Microsystems en 1991 como una herramienta de programación como parte de un proyecto denominado Green Project
  • Orientación de Java hacia un entorno web

    Los objetivos de Gosling eran implementar una máquina virtual y un lenguaje con una estructura y sintaxis similar a C++. Entre junio y julio de 1994, tras una sesión maratoniana de tres días entre John
    Gaga, James Gosling, Patrick Naughton, Wayne Rosing y Eric Schmidt, el equipo reorientó la plataforma hacia la Web.
  • Presentación de Java a ejecutivos de Sun Microsystems

    Durante 1994 se les hizo una demostración de HotJava y la plataforma Java a los ejecutivos de Sun. Java 1.0a pudo descargarse por primera vez en 1994.
  • Presentación al público de Java y HotJava

    En 1995, durante las conferencias de SunWorld, fueron presentados al público Java y HotJava, el navegador Web.
    El acontecimiento fue anunciado por John Gage, el director científico de Sun Microsystems. El acto estuvo acompañado por una pequeña sorpresa adicional, de que Java sería soportado en los navegadores de Netscape.
  • Publicación de la JDK 1.0 la primera versión de Java

    Sun fundó el grupo empresarial JavaSoft para que se encargase del desarrollo tecnológico. Dos semanas más tarde la primera versión de Java fue publicada.
  • Lanzamiento de JDK 1.1

    Dentro de las mejoras se encuentran:
     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
     RMI (Remote Method Invocation)
  • Lanzamiento de J2SE 1.2

    Presentada bajo la denominación Java 2 y el nombre "J2SE" (Java 2 Platform, Standard Edition) reemplazó a JDK para distinguir la plataforma base de J2EE (Java 2 Platform, Enterprise Edition) y J2ME (Java 2 Platform, Micro Edition). Otras mejoras añadidas incluían:
     Reflexión en la programación
     API gráfica ( Swing) integrada en las clases básicas
     Máquina virtual (JVM) equipada con un compilador JIT
     Java Plug-in
     Java IDL, para interoperabilidad con CORBA
  • Lanzamiento de J2SE 1.3

    Los cambios más notables de esta versión fueron:
     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 bibliotecas principales (anteriormente disponible como una extensión)
     Java Platform Debugger Architecture (JPDA)
  • Lanzamiento de J2SE 1.3

    Los cambios más notables de esta versión fueron:
     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 bibliotecas principales (anteriormente disponible como una extensión)
     Java Platform Debugger Architecture (JPDA)
  • Lanzamiento de J2SE 1.4

    Los cambios más notables fueron:
     Palabra reservada assert
     Expresiones regulares modeladas al estilo de las expresiones regulares Perl
     Encadenación de excepciones.
     non-blocking NIO (New Input/Output)
     Logging API
     API I/O para la lectura y escritura de imágenes JPEG o PNG
     Parser XML integrado y procesador XSLT (JAXP)
     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)
  • Lanzamiento J2SE 5.0

    Originalmente numerado 1.5, esta notación aún es usada internamente. Los cambios más notables fueron:
     Plantillas (genéricos)
     Metadatos — 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.
     Autoboxing/unboxing
     Enumeraciones
     Varargs
     Bucle for mejorado
  • Lanzamiento Java SE6

    En esta versión, Sun cambió el nombre J2SE por Java SE y eliminó el ".0" del número de versión. Los cambios más importantes de esta versión son:
     Nuevo marco de trabajo y APIs que hacen posible la combinación de Java con lenguajes como PHP, Python, Ruby y JavaScript.
     Incluye motor Rhino, de Mozilla, una implementación de Javascript en Java.
     Cliente completo de Servicios Web y soporta especificaciones como JAXWS 2.0, JAXB 2.0, STAX y JAXP.
     Mejora en interfaz gráfica y en rendimiento.
  • Lanzamiento de Java SE7

    Los cambios más importantes introducidos en esta versión son:
     Soporte para XML dentro del propio lenguaje.
     Un nuevo concepto de superpaquete.
     Soporte para closures.
     Introducción de anotaciones estándar para detectar fallos en el software.
     No oficiales:
     NIO2.
     Java Module System.
     Java Kernel.
     Nueva API para el manejo de Días y Fechas, la cual reemplazará las antiguas clases Date y Calendar.
     Posibilidad de operar con clases BigDecimal usando operandos.
  • Lanzamiento de Java SE8

    Los cambios más importantes introducidos en esta versión son:
     Incorpora de forma completa la librería JavaFX.
     Diferentes mejoras en seguridad.
     Diferentes mejoras en concurrencia.
     Añade funcionalidad para programación funcional mediante expresiones Lambda.
     Mejora la integración de JavaScript.
     Nuevas API para manejo de fechas y tiempo (date - time).
  • Lanzamiento de Java SE9

    La característica distintiva de Java SE 9 es el sistema de módulo de plataforma Java, también conocido como Project Jigsaw, lo que hace que sea más fácil para los desarrolladores ensamblar y mantener aplicaciones sofisticadas de manera confiable.
    El sistema de módulos también hace al JDK más flexible, permitiendo a los desarrolladores agrupar únicamente las partes de JDK necesarias para ejecutar una aplicación al implementarla en la nube.