nunca habia trabajado con Function, esto abre un abanico de posibilidades
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
Aportes 27
Preguntas 5
nunca habia trabajado con Function, esto abre un abanico de posibilidades
NO SE LES OLVIDE QUE DESPUES DE LA LLAVE DE CIERRE DE LA FUNCION PONER EL ;
Un método también puede ser una función, la diferencia es que las funciones también son tipos y al ser tipos se puede realizar operaciones con ellas:
involucrarse como variables
pasarlas como parámetros
recibirlas como retorno de ejecución
En mi caso, para ver la definición de Function en el IntelliJ IDEA no me aparece como Go To > Go To sino:
Go To > Declaration or Usages. (serán diferencias en versiones 🤷♀️).
 {
Function<Integer,Integer> squareFunction= new Function<Integer,Integer>(){
@Override
public Integer apply(Integer t) {
// TODO Auto-generated method stub
return t*t;
}
};
System.out.println(squareFunction.apply(2));
}
}
Es imposible tratar de arrancar el código directamente del repositorio usando InteliJIdea, por el momento se puede trabajar con Eclipse, ¿Alguien pudo ejecutarlo directamente con InteliJIdea?
Genial el shortCut de psvm
Volví a mirar los vídeos de nuevo hasta este punto, hice apuntes a mano en un cuaderno y estuve usando Intellij y de a poco, voy masticando y entendiendo todo esto que es nuevo para mi. Sin dudas es otro estilo de programación, que requiere su tiempo para poder ser comprendido.
muy bien explicado
Creí que esto era de otro planeta pero es dentro de todo básico en Js
Estupenda clase instructor Sinuhé, sirve para comprender los fundamentos de funciones en Java.
Una función recibe un parametro y produce un resultado.
Cuando se declara, se debe indicar que tipo de parametro va a recibir y que tipo de resultado va retornar.
También puedes tipear main y darle enter para generar el método
La rama para esta clase es 04-funciones-en-java.
Casi estaba sorprendido con eso de functional programing en Java. Pues resulta que el famoso tipo de Function en Java es una Interfaz y lo que estamos haciendo son clases anonimas. Es un buen hack, no se me hubiera ocurrido XD.
shortcute: psvm = public static void main(String[] args) /// sout = System.out.println("");
¿Alguno sabe como obtener los {} de colores que tiene el profe por jerarquia? es muy util a la hora de debugear
Excelente explicación, lo que me pareció curioso es que se tiene que reescribir el método apply por cada nueva función que creemos.
Genial 😃
Genial, yo con solo escribir main me sale para escribir automaticamente todo el metodo main.
escribiendo los shortcut main o psvm te genera toda la estructura de un metodo main
Es similar a la creación de funciones expresivas en JavaScript
es posible pasar mas de un argumento con diferentes tipos de datos(int,double,etc…) ???
Como le hiciste para editar el nombre del metodo en todas las coincidencias?, Se que con shift + ALT puedes seleccionar varias lineas pero no vi que hicieras eso.
En eclipse tuve que instalar un decompilador y cambiar el jre por jdk
Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.