Desde la primera version de Java en 1996, Java se ha vuelto popular en un gran numero de programadores, estudiantes, maestros. Java en México representa el lenguaje de programación mas usado en el gobierno federal. Es libre  (antes de Java 12) y tiene un gran soporte de la comunidad.

Mi primera certificación en Java la tuve en 2006, recuerdo que después de trabajar mucho tiempo con PHP, C y Delphi me apasionaba Java, aunque había hecho ya varias cosas con Java principalmente en el area de herramientas CASE de documentación de proyectos con reingeniería y usando XMI para el intercambio de documentos UML.

Desde Java 1.1 hasta Java 7 del 2011, se fue aumentando la capacidad del lengua extendiendo y creando nuevas características basadas en el mismo enfoque.

En marzo del 2014 vimos la llegada de Java 8, sin duda un cambio profundo en su historia.

¿Que era lo bueno de este cambio profundo Java 8?

La facilidad de escribir códigos, nosotros pasamos de un ordenar una lista:

Collections.sort(inventario, new Comparator<Tuna>(){
  public int compare(Tuna t1, Tuna t2){
   return t1.getPeso().compareTo(t2.getPeso());
  }
});

Y podemos realizarlo simplemente con estas lineas de codigo:

inventario.sort(comparing(Tuna::getPeso));

¿Genial cierto?

Bueno se bien que los que comenzaron con Java después del 2015 esto es fácil de digerir, pero los que llevamos mas de 15 años en Java esto es algo grandioso. Ya que nos permite ahorrar tiempo de escribir código.

Antes de Java 8 los «expertos» en el lenguaje nos hablaban del uso de hilos para aprovechar mejor los cores de las maquinas donde se ejecutaban (dije maquina, puede ser laptop, servidor, etc.). en Java 8 el paralelismo se divide en características que nos hacen mas fácil aceptar y hacer uso de ellos:

  • La API de streams
  • Técnicas de pasar código a métodos (como Javascript)
  • Métodos default en las interfaces… por FIN!!!!

Java 8 provee una nueva API llamada Streams, esta api nos brinda soporte para operaciones paralelas a procesos de datos y reemsambles. Debes de pensar en esto, tu dices de una forma general que quieres y es la API de streams la que se encarga de buscar la mejor manera de realizarlo a bajo nivel.

Como resultado de esto no necesitas preocuparte por escribir un código syncronize, Que no solo es propenso a que cometamos errores, sino que ademas es costoso en una maquina multinucleos.

¿Quieren saber mas de Java 8,9,10,11? bueno pues los invito a seguirme en mis redes sociales como @abrahamstalin ahi los espero y no me priven de la oportunidad de decirles hola.

P.D. Doy cursos en CDMX a grupos desde 5 a 20 personas.

Última modificación: 11 noviembre, 2019

Autor