Lo estaba esperando desde que anahí dijo que lo harian xD
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
Sinuhé Jaime Valencia
Aportes 49
Preguntas 2
Lo estaba esperando desde que anahí dijo que lo harian xD
Ese carnal fue mi profe en la uni , ❤️ Sier
Beneficios de la programación funcional:
Testing: al tener el código más granular, se facilita la ejecución de pruebas.
Legibilidad: funciones más explicitas en cuanto a lo que hacen y no en como lo hacen.
Comportamientos más definidos: los comportamientos son definidos a traves de funciones simples (siendo estas faciles de entender).
Concurrencia: es posible liberar muchos procesos simultaneos a partir de una sola función.
Menos manejo de estados: no nos preocupamos por la complejidad que puede agregar otros paradigmas de programación como POO.
No hay que instalar nada adicional: es natural en Java.
Necesitaba mucho este curso. En mi empresa no aceptan un pull request si no sigue este paradigma.
Nice T-shirt 😃
Otras características de la Programación funcional:
¿Qué es la programación funcional?
La programación funcional es una forma de programar, un estilo de programación. Es un estilo más enfocado a tener casos específicos en el cual nos preocupamos en qué resolver.
En Java veremos dos cosas:
Funciones
Datos
Básicamente la programación funcional se enfoca en qué resolver, no en cómo resolverlo.
Lo importante es tener una función que pueda resolver el problema, no importa su procedencia.
En la parte de los datos vamos a aprender que son los datos mutables e inmutables. Esto es muy importante porque nos va a diferentes tipos de funciones según los datos que tengamos.
Beneficios de la programación funcional
Llevo años trabajando con Java y programación funcional, pero siempre es bueno reforzar conocimientos.
Me agrada como explica este profe. Se ve bien el curso!
Este Carnal parte de la comunidad j4guanatos y es un Master en Kotlin
Ya era hora de que sacaran este curso, hay muchas ofertas de trabajo donde piden saber este paradigma y justo acabo de terminar la carrera de Java 😄
Este curso no aparece en la ruta de Java 😦
Estaba esperando este curso ! excelente!
me mato la camiseta y que ya entiendo esos chistes
Programming Functional is cool
¿Este cosquilleo de emocion en el estomago sera normal? 😬
Dato curioso, Haskell es usado para programar la criptomoneda cardano
Quien ya repetio otra vez el curso, para entenderle mejor?
o pensaba que era hal - life 3
… Vemos! necesito este curso 😃
Que buena camisa tiene el instructor.
¿Qué es la programación funcional?
La programación funcional es un estilo de programación como al que le gusta programar con objetos, es un estilo en el que nos preocupamos por qué resolver
Java 8 en adelante tiene la posibilidad de hacer programación funcional y para ello necesitaremos saber que son Funciones y Datos
Funciones
Tener una función que pueda resolver el problema no importa la procedencia
Datos
Datos mutables e inmutables, muy importante para poder dar diferentes tipos de funciones según el tipo de datos que tengamos
Beneficios programación funcional
Vamos a Darle
Beneficios:
Nos enfocaremos en que resolver, explicitas en cuanto que es lo que hacen y no como lo hacen.
Resolver un problema.
Testing resolviendo pequeños problemas, pruebas de una funcion en vez de hacer pruebas en todo el sistema.
La concurrencia se hace mas facil, mas dinamica, ya que se pueden liberar muchos procesos simultaneos, apartir de la misma funcion.
No tenemos que tener control sobre los objetos que existen en memoria, por que tenemos funciones y son unicas.
Comportamientos definidos ya que tendremos funciones mas simples, estas podemos leerla rapidamente y ver que es lo que hacen.
Menor manejo de estados es decir ya no tenemos que preoparnos que objeto tiene el dato en el momento.
No hay que instalar nada ya viene incluido en el lenguaje, no tenemos que preocuparnos por librerias de terceros.
Les invito a mi charla sobre cómo manejar efectos secundarios en programación funcional con efectos algebraicos =)
https://www.meetup.com/es/Quito-Lambda-Meetup/events/mscxlpybchbkc/?fbclid=IwAR3bDlxMG-_9vIFtMwdOTnNVmFC7AgGarNEOKj73-E6galZ0D5cavXWj8WU
Wow! Vamos (^o^)
Me alegro que incluyan este curso en la carrera.
¡¡¡ Me parece brutal la remera del profesor !!!
Pongan este curso en la carrera !
Se ve bien el curso… veamos que tal 😃
Excelente introducción instructor Sinuhé, es un gusto ser parte de este curso y estoy emocionado de poder aprender este estilo de programación.
✅
Mi definición de programación funcional:
Es un paradigma de programación que utiliza funciones para resolver casos específicos, creando una solución a partir de los datos disponibles.
Apenas empieza el curso y ya me cae bien el profe jajaja
Me encanta como explica este profe! Estoy en el curso de Java Spring y me toco venirme a repasar Lambda. Pero a profundizar. ❤️
¿QUE ES LA PROGRAMACIÓN FUNCIONAL?
Es un estilo de programación enfocado a casos donde nos preguntamos que resolver
¿CUALES SON LOS BENEFICIOS?
Va muy lentoooo
Llevo tan sólo dos minutos del primer video de este curso y veo que es muuuy prometedor, el profe se ve que explica bien (Y)
Alli vamo!!
Me gusto la introduccion y suena genial todo.
¿Programación funcional es lo mismo que programación estructurada? ¿Es lo mismo JAVA que JAVA SE? Gracias por las respuestas.
Creo que este curso era super necesario!! Como me alegro de que se le esté dando amor a un lenguaje tan complejo y potente como Java!
La programación funcional es un paradigma de programación declarativa. En este estilo de programación las funciones son ciudadanas de primera clase, porque sus expresiones pueden ser asignadas a variables como se haría con cualquier otro valor; además de que pueden crearse funciones de orden superior.
Excelente a aprender este nuevo paradigma que lo e escuchado pero nunca lo he usado.
Oh yeah este curso promete!
La programación funcional nos es más que un paradigma de programación, es decir, es una forma en la cual podemos resolver diferentes problemáticas.
Cuando nos encontramos desarrollamos software utilizando este paradigma, estaremos trabajando principalmente con funciones, evitaremos los datos mutables, así como el hecho de compartir estados entre funciones.
El concepto de programación funcional hace referencia a la programación declarativa, que se enfoca en el que necesitamos que haga… similar a como lo maneja una consulta SQL select * from clientes where nombre like ‘A%’;, en este caso no nos estamos preocupando en el cómo lo hizo. A simple vista podemos identificar que estamos obteniendo un listado de clientes que su nombre ininca por la letra A.
Bueno empezamos!!!, esto lo estaba esperando.
Estoy super emocionado, hace tiempo quería ver un curso como este !!
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?