Nanocurso.La orientación a objetos (OOP) ha sido el paradigma de facto durante las últimas décadas en programación. OOP se basa fuertemente en la noción de estado mutable y, en la mayoría de los casos, en programación imperativa clásica en el nivel de control. Necesidades que requieren aumentar la escalabilidad de la aplicaciones actuales (por ejemplo, multi-threading o reactive programming) obligan principios y patrones distintos para equilibrar productividad, eficiencia y mantenibilidad. La programación funcional (FP) se ofrece como una excelente vía alterna que se alinea muy bien con ese requerimiento de equilibrio y que se puede acoplar con OOP de manera elegante, promoviendo un poderoso estilo declarativo de abstracción. La mayoría de los lenguajes OOP permiten en la actualidad una faceta en FP. En esta cápsula hacemos un estudio fundamentado y pragmático, del caso de Java y su progresiva evolución hacia una faceta en FP, buscando destacar y obtener beneficios en la forma de realizar la programación en situaciones comunes, para las cuales se darán ejemplos prácticos. La cápsula introduce la realización de FP en Java en una primera iteración de 8 horas.