Curso de Programación Funcional con Java SE

Clases del Curso de Programación Funcional con Java SE

Instruido por:
Sinuhé Jaime Valencia
Sinuhé Jaime Valencia
Básico
4 horas de contenido
Ver la ruta de aprendizaje
Job Search
Proyecto del curso
Job Search

Aprende a crear una API para búsqueda de trabajo utilizando programación funcional y lleva a la práctica todo lo que aprenderás durante este curso.

Curso de Programación Funcional con Java SE

Curso de Programación Funcional con Java SE

Progreso del curso:0/39contenidos(0%)

Contenido del Curso
Tutoriales de estudiantes
Preguntas de estudiantes

Progreso del curso:0/39contenidos(0%)

Introducción a la programación Funcional

Material Thumbnail

¿Qué es la Programación Funcional?

06:09 min

Entendiendo las partes de la programación funcional

Material Thumbnail

¿Qué es una función?

03:15 min

Material Thumbnail

Funciones como ciudadanos de primera clase

02:39 min

Material Thumbnail

Funciones puras

04:05 min

Material Thumbnail

Entendiendo los efectos secundarios

03:12 min

Material Thumbnail

Funciones de orden mayor

02:28 min

Functional Programming en Java

Repositorio del curso

00:06 min

Configuración del entorno de trabajo

02:48 min

Material Thumbnail

Revisando el paquete java.util.function: Function

04:03 min

Material Thumbnail

Revisando el paquete java.util.function: Predicate

04:57 min

Material Thumbnail

Revisando el paquete java.util.function: Consumer y Supplier

03:54 min

Material Thumbnail

Revisando el paquete java.util.function: Operators y BiFunction

07:10 min

Material Thumbnail

Entendiendo dos jugadores clave: SAM y FunctionalInterface

08:51 min

Material Thumbnail

Operador de Referencia

04:46 min

Material Thumbnail

Analizando la inferencia de tipos

03:53 min

Material Thumbnail

Comprendiendo la sintaxis de las funciones lambda

12:47 min

Material Thumbnail

Usando metodos default en nuestras interfaces

04:59 min

Material Thumbnail

Dándole nombre a un viejo amigo: Chaining

03:52 min

Material Thumbnail

Entendiendo la composición de funciones

06:06 min

Optional y Streams: Datos mas interesantes

Material Thumbnail

La clase Optional

12:59 min

Material Thumbnail

Entendiendo los Streams

10:18 min

Material Thumbnail

¿Qué son los Stream listeners?

07:21 min

Operaciones y Collectors

05:07 min

Material Thumbnail

Streams de tipo específico y Paralelismo

05:51 min

Operaciones Terminales

06:18 min

Operaciones Intermedias

09:18 min

Todo junto: Proyecto Job-search

Material Thumbnail

job-search: Un proyecto para encontrar trabajo

01:17 min

Material Thumbnail

Vista rápida a un proyecto de Gradle

03:23 min

Material Thumbnail

Revisando las opciones para nuestro CLI

01:51 min

Material Thumbnail

Librerías adicionales para nuestro proyecto

05:54 min

Material Thumbnail

Entendiendo la API de jobs

09:31 min

Material Thumbnail

Diseñando las Funciones Constructoras de nuestro Proyecto

13:05 min

Material Thumbnail

Agregando validaciones de datos

04:32 min

Material Thumbnail

Diseñando las funciones de transformacion de datos

11:38 min

Material Thumbnail

Creando flujos extras de transformación de Datos

08:31 min

Conclusiones

Material Thumbnail

Un repaso a lo aprendido

00:37 min

nuevosmás votadossin responder
GARCIA RESTREPO EDWARD FREDY
GARCIA RESTREPO EDWARD FREDY
Estudiante

Sinuhé, estoy siguiendo el ejercicio de la clase mutable (MutablePerson) y quiero replicar el resultado modificando los datos con la función impura badFuncion() pero en los recursos no se ve o de que otra forma podría remplazar esta función y así comprender con precisión el concepto.

1
Ivan Castaneda Contreras
Ivan Castaneda Contreras
Estudiante

Osea una lambda no es lo mismo que una función creada por una interfaz?

1
Michelle Balcázar Ortiz
Michelle Balcázar Ortiz
Estudiante

Cuando abro el proyecto en intelliJ no me genera la carpeta SRC, he investigado sobre el gradle y sus configuraciones pero nada me ha funcionado, también cuando descargo el repo no me aparece la carpeta jobs-search-reporter. ¿Alguna solución?

1
Christian Giraldo Ospina
Christian Giraldo Ospina
Estudiante

si uso el foreach() como puedo ver el indice i?

1
Raúl López Hernando
Raúl López Hernando
Estudiante

A la hora de ejecutar la TriFunction para obtner el resultado me da el siguiente error

java: package jdk.vm.ci.meta does not exist

Alguien sabria decirme cuan es el problema?

1
Omar Villada
Omar Villada
Estudiante

Alguien sabe por qué cuando abro el proyecto en inteliji las clases me aparecen con la extensión .class?

1
Héctor jesus
Héctor jesus
Estudiante

alguien sabe como como generar un distZip con maven?

1
Dewin Fabián Acosta Jiménez
Dewin Fabián Acosta Jiménez
Estudiante

En el método Function, ¿porqué se usó un ; antes de implementar los prints?

0
Mencrypto
Mencrypto
Estudiante

Tengo una duda, en la firma del método parse el tercer parámetro es un Consumer con parámetro JCommander

static Optional<List<Object>> parseArguments(JCommander jCommander, String[] arguments, Consumer<JCommander> onError) 

Pero se le pasa una referencia de esta forma: JCommander::usage

Stream<CLIArguments> streamOfCLI =
                parseArguments(jCommander, args, JCommander::usage)
                .orElse(Collections.emptyList())
                .stream()
                .map(obj -> (CLIArguments) obj);

Pero si vamos a la clase JCommander el método usage, no recibe parámetros y no es estático, entonces ¿Por qué lo acepta como Consumer?

El método está así:

  public void usage() {
        StringBuilder sb = new StringBuilder();
        usageFormatter.usage(sb);
        getConsole().println(sb.toString());
    }
0
Luis Betancourt
Luis Betancourt
Estudiante

Cuando hablamos de uno de los principios SOLID, menciona que la clase debe ser cerrada a la modificación pero abierta a la extensión no aplicaría para este caso (como podría extender esta clase final)?

1