
¡Lee con atención el contenido de esta lección! Se explica como realizar los ejercicios que irás encontrando a lo largo del curso.
¿Que añade Java 8 para hablar del mayor cambio introducido nunca en Java?
¡Veamos un pequeño aperitivo de lo que será el resto del curso!
En esta lección mostramos en vídeo como trabajar con los problemas propuestos en el curso.
Los default methods son un añadido a las interfaces que darán soporte a muchas de las novedades de Java 8.
Ahora, es posible que las interfaces incluyan métodos con implementación. En esta lección apuntaremos a las posibilidades que esto ofrece, pero durante el curso iréis viendo muchos más ejemplos de su potencial.
Otra opción para añadir código en las interfaces, a parte de los default methods, son los métodos estáticos.
Quizás sea un "hermano pequeño" del cambio presentado en la lección anterior, pero no por ello hay que restar importancia al potencial de los static methods en las interfaces.
Y llega el último gran cambio en las interfaces que "prepara el terreno" para las lambda expression.
Desde siempre, las interfaces con un solo método han tenido una especial importancia en nuestros diseños. Llega ahora el momento de formalizar este "protagonismo" bautizándolas como "Functional Interfaces".
Los programadores de Java siempre nos hemos preocupado por los tipos de nuestras variables. ¿Que tipo tienen estos recién llegados "lambda expressions"?
Veámoslo en esta lección
En esta lección profundizaremos en la forma que tienen las lambda expression. Que variantes hay, de que depende su aspecto y que opciones tenemos.
Ahora que ya sabemos que es una "functional interface" veremos que catálogo de funciones nos ofrece el JDK.
Hay muchas, pero no os preocupéis: entendiendo algunas reglas básicas sabremos cual escoger según nuestras necesidades.
Una alternativa al uso de las lambda expressions es utilizar directamente métodos ya existentes.
En esta lección veremos como referenciar a distintos tipos de métodos para proporcionar nuestras implementaciones de interfaces funcionales.
¿Te imaginas programar sin null y sin NullPointerExceptions?
Ahora es posible: bienvenido a Optional
Los streams permiten definir "flujos de trabajo" sobre agrupaciones de datos.
Son los nuevos complementos a las Collection para trabajar de forma "funcional". En esta lección realizamos una primera aproximación a ellos.
Las operaciones en un stream se organizan en forma de secuencia o cadena. Es el llamado "stream pipeline".
En esta lección veremos las partes de este "pipeline" y los principales tipos de operaciones.
¿En que orden se ejecutan las operaciones de un pipeline?
Puede parecer una pregunta trivial pero no lo es. En esta lección veremos como es este orden y, más importante, ¡como evitar errores por no conocerlo!
Aunque las operaciones de reduce explicadas en la lección anterior sean muy potentes, no siempre son la mejor opción.
En esta lección veremos que problemas de rendimiento pueden presentar y ofreceremos una alternativa para solucionarlo.
Siguiendo con la idea de la lección anterior: a veces una estructura "mutable" es la más adecuada para ir construyendo el resultado.
En esta lección veremos que posibilidades nos ofrece el JDK para las operaciones más habituales sobre los streams.
¿Es posible realizar las operaciones de un stream de forma paralela? La respuesta es un sí, pero ....
En esta lección veremos como indicar a un stream que su ejecución sea paralela y que limitaciones presenta.
Dejamos los streams y vamos a otras aportaciones hechas en Java 8.
Basándonos en lo explicado en las lecciones anteriores, veamos la "revolución" que ha sufrido el framework de Collections.
Otro gran beneficiado de los cambios de Java 8 ha sido Comparator.
Veamos como este veterano ha rejuvenecido en la nueva versión.
En este punto ya hay poco que decir:
Enhorabuena por tu esfuerzo, suerte en el uso de Java 8 y ¡muchas gracias!
Enlaces con referencias útiles para complementar el material del curso
Este curso introduce las novedades de Java 8, principalmente las nuevas interfaces funcionales y las lambda expression.
El curso está compuesto de lecciones cortas y centradas en un tema concreto. ¡Ya es bastante complejo asimilar todas las novedades de Java 8 como para aprender cinco cosas al mismo tiempo!
Cada tema, pues, introducirá un nuevo concepto, usando lo aprendido anteriormente y ofreciendo ejercicios para asimilar el contenido.
Y hablando de ejercicios .... Por favor, ¡hazlos!
Los ejercicios son muy prácticos: importa el proyecto en el Eclipse y el mismo editor te indicará cuando los has realizado correctamente o no. ¡Imposible más comodidad!
Recuerda: La teoría sirve para poder hacer los ejercicios. Solo en la práctica es cuando se produce el nuevo conocimiento.
Así pues: empieza con los videos y después de cada tema, súbete las mangas y ¡empieza a trabajar con las lambda expressions!
Recuerda: