Java

Evolución de JAVA

  • Period: to

    Aparición de la Programación Orientada a Objetos

    Para hablar de la historia de java, debemos remontarnos a los años 80, donde C podía considerarse el lenguaje por antonomasia. Era un lenguaje versátil, que podía actuar a bajo nivel y resolvía problemas muy complejos. Era la cima de la programación estructurada, para resolver estos complejos algoritmos, se generaban grandes procedimientos con un código muy complicado de mantener a largo plazo. Por ello empezó a surgir como alternativa la programación orientada a objetos con C++.
  • OAK - Proyecto Green

    OAK - Proyecto Green
    En 1991, la empresa Sun Microsystems crea el lenguaje Oak (de la mano del llamado proyecto Green). Mediante este lenguaje se pretendía crear un sistema de televisión interactiva. Este lenguaje sólo se llegó a utilizar de forma interna. Su propósito era crear
    un lenguaje independiente de la plataforma y para uso en dispositivos electrónicos.
  • Establecimiento de Java

    Establecimiento de Java
    En 1995 el proyecto Green pasa a llamarse Java y se da a conocer al público. Adquiere notoriedad rápidamente. Java pasa a ser un lenguaje totalmente independiente de la plataforma y a la vez potente y orientado a objetos.
    Los programas Java no son ejecutables, no se compilan como los programas en C o C++. En su lugar son interpretados por una aplicación conocida como la máquina virtual de Java (JVM).
  • Java 1.1

    Java 1.1
    Aparece en 1997 e incorpora al lenguaje varias clases que faltaban como Readers /Writers ,Calendars y Bundles . Pero sin ningún lugar a duda su mayor aportación es la inclusión del estandar de JavaBeans y el API de JDBC para conexión a bases de datos. Este último supone un salto importante en cuando a la utilización del lenguaje.
  • Java 1.2

    En 1998 aparece otra evolución importante con la llegada del framework de Collections y el API de Swing que permite desarrollar interfaces de ventanas más complejos.
  • JAVA 1.4

    Se produce un salto importante en cuanto a nuevas APIs. Se incorpora un fuerte soporte de XML , Expresiones Regulares , Criptografía etc.
  • JAVA 1.5 o 5.0

    También denomina Java 5 se producen dos saltos importantes a nivel del core del lenguaje. Por una parte la inclusión de tipos Genéricos que se echaban en falta en el mundo de las colecciones. Por el otro lado la inclusión del concepto de metadatos con el uso de anotaciones. Se amplía el soporte de APIs orientadas a programación concurrente.
  • Java SE 6

    Java SE 6
    Los cambios más importantes introducidos en esta versión son:
    - 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.
    - Mejoras en la interfaz gráfica y en el rendimiento.
  • Java SE 7

    • 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.
  • Java 1.8

    Llega Java 8 el gran salto en cuanto al lenguaje se refiere. Se abren las puerta a la programación funcional con el uso de expresiones Lambda y Streams. Se realiza una revisión de APIS y se actualiza de forma importante la gestión de fechas.
  • Java SE 8

    • 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).
  • Java SE 9

    Algunos de los cambios más importantes de esta nueva plataforma se basan en el soporte para la modularización (separando el JRE del JDK y mejorando la seguridad y rendimiento del ecosistema), mejora notable de rendimiento (algo muy necesario, especialmente en proyectos ya de un tamaño considerable o de las aplicaciones de Android) y compatibilidad con nuevos estándares solicitados por los propios desarrolladores de la plataforma.
  • Java SE 10

    Java  SE 10
    • Inferencia de tipos en variables locales
    • Consolidar todos los repositorios del JDK en uno solo
    • Una interfaz limpia y unificada para el GarbageCollector
    • Mejoras en el CDS (Class-Data Sharing)
    • Se elimina la herramienta de generación de encabezado nativo (javah)
    • Asignación de memoria en dispositivos de memoria alternativos
    • Compilador experimental JIT basado en Java
    • Certificados Root