Swift Funcional

  • 1

    ¿Qué es la programación funcional?

    En este video empezamos por el principio: explicando qué es la programación funcional y por qué este estilo es distinto al que todos conocemos. Sí, hemos dicho distinto, no difícil.

El curso

Hemos dividido el curso en un total de ocho módulos incluyendo un proyecto final donde aplicarás todo lo aprendido durante el curso.
¡Vamos a ver el resumen de cada módulo!

      • Módulo 1: Introducción

        Ver descripción

      • Cómo toda gran historia, empezamos con un prólogo. Veremos qué es la programación funcional y cuáles son sus principios básicos. Aviso de spoiler: estos vídeos están ya disponibles en nuestra web. Totalmente gratuitos para todos. ¿A qué esperas para empezar a aprender?
      • Módulo 2: Recursión

        Ver descripción

      • Desde tiempos inmemoriales, la recursión a sido el niño incomprendido de la clase. La pobre ha sufrido de todo, desde que es mala malísima, hasta decir que es el peor invento desde la Comic Sans. Pues bien, en este módulo, vamos a ver que no sólo esto es mentira, sino que la recursión es una de las herramientas más poderosas que tenemos a nuestro alcance. Aunque eso sí, para ello, tendremos que saber utilizarla correctamente, ya sabes, un gran poder… conlleva una gran responsabilidad.
        • Recursividad (8:56)
        • Funciones recursivas (7:29)
        • Tail recursion (12:33)
      • Módulo 3: Funciones

        Ver descripción

      • Las funciones juegan un papel muy importante en la programación funcional. Por algo se llamará funcional… ¿verdad?. En este módulo aprenderemos que las funciones no son ese simple saco de código al que estamos acostumbrados, si no que, en lenguajes tan fantásticos como este, son algo más. Y cómo no, aprenderemos a sacarle el máximo partido posible.
        • Funciones como ciudadanos de primera clase (17:13)
        • Closures (9:33)
        • Aplicación parcial o currying (19:33)
        • Continuation passing style (CPS) (12:36)
        • Composición de funciones 1 de 3 (13:21)
        • Composición de funciones 2 de 3 (10:39)
        • Composición de funciones 3 de 3 (13:42)
      • Módulo 4: Transformaciones funcionales

        Ver descripción

      • Desde que apareció Swift, se ha hablado mucho de funciones como map, filter o forEach y seguro que las has visto en funcionamiento, usándose de cualquier forma. ¡Incluso sin saber exactamente que es lo que hacen! Esto no lo podemos permitir, así que en esta sección, aprenderemos cómo están implementadas todas estas funciones (y alguna más). Para así poder aprender a utilizarlas de una forma segura y aprovechando todo el potencial que nos ofrecen.
        • Map (19:14)
        • Filter (9:26)
        • Reduce (11:56)
        • FlatMap (18:24)
        • Zip, Foreach, Sort/ed (22:08)
      • Módulo 5: Patrones funcionales

        • Sección 1: Functores

          Ver descripción

        • ¡Estaban tardando! Ya empezamos con los conceptos raros. Tranquilo, no hay de que preocuparse. A lo largo de esta sección aprenderás que es un functor… verás que los llevas utilizando muchísimo tiempo, ¡y tú sin saberlo! Y lo más importante de todo, aprenderás a quitarle el miedo a estos conceptos tan extraños para los “junior” de la programación funcional.
          • Functor Optional (16:48)
          • Functor Collection (7:45)
          • Functor Result (11:18)
        • Sección 2: Monoides

          Ver descripción

        • Si, no estás equivocado, a partir de aquí es donde nos metemos en la chicha funcional pura y dura. Esta vez hablaremos de los monoides, otro concepto con el que la gente se suele asustar, y que sin embargo, llevan utilizando desde que aprendieron a programar. Y para ello, cómo no, lo haremos desde una perspectiva práctica, esta vez, con una pequeña librería de validación que luego podrás utilizar en tus proyectos y quedar ante tus seguidores de GitHub como el programador Swift más funcional del mundo mundial.
          • Monoides (14:36)
          • Uso de valores como retorno (15:37)
          • CombinANDo validadores (18:37)
          • ValidadOR (10:23)
          • Monoide no es un insulto (13:33)
        • Sección 3: Mónadas

          Ver descripción

        • Y aquí está, ya ha llegado. El concepto de los conceptos. El patrón más famoso de la programación funcional y la principal causa de que el resto de programadores vean a la programación funcional como algo inalcanzable. Pues se acabó, a partir de esta sección sabrás qué demonios es una mónada, cómo usarlas y cómo crear tus propias mónadas. ¡Ah! ¡sí! y los más importante, le encontrarás sentido a la famosa frase: “una mónada no es más que un monoide en la categoría de los endofunctores”.
          • ¿Qué es una mónada? (18:46)
          • ¡Qué monada de Result! (5:45)
        • Sección 4: Aplicativos

          Ver descripción

        • Y para acabar de ponerle la guinda a nuestro pastel de patrones funcionales, conoceremos a los aplicativos. Éstos juegan un importante papel a la hora de utilizar todos los conceptos anteriores en el mundo real del día a día del programador móvil.
          • ¿Qué es un aplicativo? (12:19)
          • Marchando un aplicativo de validación (19:12)
          • ¡Esto no hay quien lo lea! (11:39)
        • Sección 5: Poniéndolo todo en práctica

          Ver descripción

        • Y como ya sabemos que no vale sólo con entender las cosas, vamos a hacer un ejemplo completo de uso de todos nuestros patrones funcionales: Functores, Mónadas y Aplicativos. Sí, para que nadie diga “¿Y esto para qué sirve?”.
          • ¿Es que nadie piensa en el código asíncrono? (21:20)
          • Functorizando el Future (4:20)
          • ¡Qué monada de Future! (16:01)
          • Aplicando el Future (25:33)
          • ¿Es que nadie piensa en el código síncrono? (3:12)
          • Validaciones (6:44)
          • Operadores del futuro (11:37)
          • Últimos retoques (23:14)
      • Módulo 6: RxSwift

        Ver descripción

      • La librería del momento. El tema de conversación del 85% de charlas de programación. La programación reactiva está conquistando el mundo poco a poco, y puesto que guarda muchas similitudes con la programación funcional… ¡no nos vamos a quedar atrás! En esta sección aprenderás los principios de la programación reactiva utilizando RxSwift y encontrando a la vez los puntos de unión que guarda esta con la programación funcional.
        • La programación reactiva (18:06)
        • Vaya monada de Observable (14:08)
      • Módulo 7: Extras

        Ver descripción

      • Y por si os quedáis con ganas de más, algunos vídeos extras para que sigáis aprendiendo programación funcional 🙂
        • Operadores personalizados (6:11)
      • Proyecto Final

        Ver descripción

      • Shhhhhh… es un secreto 😉

¿A qué esperas para aprender programación funcional utilizando Swift?

¡Lo quiero!