Función = Tiene un nombre.
Lambda = Función que no tiene un nombre.
Por qué usar lambdas?
Es un comportamiento único.
Es una regla que solo se requiere en un lugar.
Es una función muy simple (1 línea).
Introducción a la programación Funcional
¿Qué es la Programación Funcional?
Entendiendo las partes de la programación funcional
¿Qué es una función en Java?
Funciones como ciudadanos de primera clase
Funciones puras
Entendiendo los efectos secundarios
Funciones de orden mayor
Funciones lambda
Inmutabilidad
Functional Programming en Java
Repositorio del curso
Configuración del entorno de trabajo
Revisando el paquete java.util.function: Function
Revisando el paquete java.util.function: Predicate
Revisando el paquete java.util.function: Consumer y Supplier
Revisando el paquete java.util.function: Operators y BiFunction
Entendiendo dos jugadores clave: SAM y FunctionalInterface
Operador de Referencia
Analizando la inferencia de tipos
Comprendiendo la sintaxis de las funciones lambda
Usando metodos default en nuestras interfaces
Dándole nombre a un viejo amigo: Chaining
Entendiendo la composición de funciones
Optional y Streams: Datos mas interesantes
La clase Optional
Entendiendo los Streams
¿Qué son los Stream listeners?
Operaciones y Collectors
Streams de tipo específico y Paralelismo
Operaciones Terminales
Operaciones Intermedias
Collectors
Todo junto: Proyecto Job-search
job-search: Un proyecto para encontrar trabajo
Vista rápida a un proyecto de Gradle
Revisando las opciones para nuestro CLI
Librerías adicionales para nuestro proyecto
Entendiendo la API de jobs
Diseñando las Funciones Constructoras de nuestro Proyecto
Agregando validaciones de datos
Diseñando las funciones de transformacion de datos
Creando flujos extras de transformación de Datos
Conclusiones
Un repaso a lo aprendido
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Convierte tus certificados en títulos universitarios en USA
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Sinuhé Jaime Valencia
Aportes 22
Preguntas 1
Función = Tiene un nombre.
Lambda = Función que no tiene un nombre.
Por qué usar lambdas?
Es un comportamiento único.
Es una regla que solo se requiere en un lugar.
Es una función muy simple (1 línea).
Uno cuando escucha lambda hasta se asusta pero todo bien
La mejor explicación que he visto sobre las lambdas
Las funciones lambda ($\lambda$) tienen su origen en el cálculo lambda creado por Alonzo Church en la década de los años 30’s, donde (de forma simplificada) proponía que era posible obtener un resultado a partir de funciones anónimas.
⠀
Por lo tanto, una función Lambda es una función anónima, es decir, una función que no posee un nombre. Por ejemplo:
Function foo = ...
: foo
no es anónima.int foo(int x) {...}
foo
no es anónima.x -> ...
: Sí es una función anónimaAlgunas de las utilidades de las funciones anónimas son:
Muy bien, entonces las funciones lambdas se nos presentan sin nombre en comparación al otro tipo de funciones, tienen una estructura más sencilla y su principal uso es para momentos particulares de la aplicación. Muchas gracias por la explicación instructor Sinuhé.
cómo es posible que una función tenga menos de 1 linea? 🤔
Es importante usar lambdas cuando la función es específica de un sólo uso, ya que también ahorras espacio en memoria, y proceso de garbage collect, ya que registrar la función para un solo uso, ocupa memoria en la variable (el nombre de la función) y una vez que finaliza el bloque del programa donde está la función, el garbage collector debe limpiar ese espacio en memoria (o eso me han dicho 😃)
Parten de un concepto matemático de los años 30 (Alonzo Church).
Obetener resultados a partir de funciones anónimas.
Son funciones anónimas
¿Por que usarlas?
Es un comportamiento de uso único
Una regla que solo se requiere en un lugar
Es una función extremadamente simple.
Una lambda sigue siendo una función.
“Donde las funciones no tienen nombre/ Where the functions has no name”.
Buen nombre para un tema musical 😀
Las lambdas son parecidos o tiene la misma lógica que los Arraw function de JS???
Llevaba mucho tiempo esperando un curso especializado en programación funcional, con su teoría,
Más aún en Java,
Muy interesante … como bien se menciona en Javascript es muy comun usar lambda, creo que vale la pena mencionar que no se debe confundir con el termino ocupado en lenguajes formales y automatas.
Funciones Lamba
Son funciones anónimas
Es un comportamiento de uso único, una regla que solo requiere de un solo lugar, es una función simple.
Genial, muchas gracias profe 😃
Gracias, genial conocer el concepto de lambda.
no conocía este termino… super… muchas gracias! 😃
Lambda son funciones sin nombre
Interesante!
Las funciones lambda son aquellas que no tienen un nombre definido son usadas para realizar operaciones simples y puntuales en nuestra aplicación y que no son necesarias en otra parte.
Me suena a funciones anonimas
Ahora se viene lo chido !
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?