Lo estaba esperando desde que anahí dijo que lo harian xD
Introducción a la programación Funcional
Programación Funcional en Java: Conceptos y Aplicaciones Prácticas
Entendiendo las partes de la programación funcional
Funciones en Programación Funcional: Conceptos Básicos
Funciones como Ciudadanos de Primera Clase en Programación
Funciones Puras: Concepto y Ejemplos Prácticos
Efectos Secundarios en Programación y su Impacto en el Código
Funciones de Orden Superior en Programación
Funciones Lambda en Programación Funcional Java
Inmutabilidad de Datos en Programación Funcional con Java
Functional Programming en Java
Programación Funcional en Java SE: Conceptos y Prácticas
Programación Funcional en Java: Práctica y Ejemplos en IntelliJ
Programación Funcional en Java: Creación y Uso de Funciones
Programación Funcional con Predicados en Java
Interfaz Consumer y Supplier en Java: Uso y Ejemplos Prácticos
Funciones Java para Transformación de Datos y Operaciones Binarias
Creación y Uso de Interfaces Funcionales Personalizadas en Java
Métodos de Referencia en Programación Funcional Java
Inferencia de tipos en Java: funciones y métodos
Uso de Expresiones Lambda en Java: Sintaxis y Aplicaciones
Interfaz Funcional en Java: Creación y Uso de Métodos Default
Encadenamiento de Llamadas en Programación Orientada a Objetos
Composición de Funciones en Programación Funcional
Optional y Streams: Datos mas interesantes
Uso de la Clase Optional en Java para Manejo de Valores Nulos
Manipulación de Streams en Java: Operaciones y Limitaciones
Programación Funcional en Java: Uso de Streams y Operaciones Terminales
Operaciones de Stream en Java: Intermedias y Finales
Operaciones y Concurrente con Stream en Java
Operaciones Terminales en Java Streams
Operaciones Intermedias en Streams de Java
Conversión de Strings a Listas de Enteros en Java
Todo junto: Proyecto Job-search
Construcción de Proyecto para Buscar Empleo Usando APIs
Configuración y Uso de Gradle en Proyectos Java con IntelliJ
Creación de una Herramienta de Búsqueda de Trabajo en Terminal
Creación de Puntos de Entrada y Dependencias en Proyectos Java
Creación de APIs RESTful con Feign y Spring Boot
Creación de una Interfaz de Línea de Comandos con JCommander
Validación de Argumentos en Terminal con Clases en Ciel
Procesamiento de Argumentos y Solicitudes API en Java
Creación de API para búsqueda de empleos con Java y CLI
Conclusiones
Programación Funcional en Java: Conceptos y Aplicaciones
La programación funcional ha ganado popularidad en los últimos años, pero sigue rodeada de ciertos mitos sobre su dificultad. En esencia, es un paradigma de programación, es decir, un estilo de programar que se centra en la resolución de problemas de una manera específica. Aunque muchos piensan en ella como un campo reservado para expertos en cálculos complejos, lo cierto es que es accesible, incluso en lenguajes orientados a objetos como Java.
Java, tradicionalmente un lenguaje orientado a objetos, ha incorporado características de programación funcional desde su versión 8. Esto ofrece a los desarrolladores la posibilidad de aplicar este paradigma sin cambiar de lenguaje.
Este enfoque tiene varios beneficios:
Java ya incluye las herramientas necesarias para adoptar la programación funcional. No necesitas integrar librerías de terceros ni aprender un nuevo lenguaje. Puedes:
Explorar funciones lambda: Representan funciones anónimas y son esenciales en este paradigma.
// Ejemplo de función lambda en Java
List<String> nombres = Arrays.asList("Ana", "Pedro", "Juan");
nombres.forEach(nombre -> System.out.println(nombre));
Utilizar Streams: Facilitan operaciones sobre colecciones de datos, desde filtrados hasta mapeos.
Implementar inmutabilidad: Usa estructuras de datos inmutables para mejorar rendimiento y seguridad.
La programación funcional en Java es más que una moda; es una herramienta poderosa que simplifica el código y potencia las aplicaciones. Si eres desarrollador, considera incorporarla en tu día a día para aprovechar sus múltiples ventajas.
Aportes 50
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?