Programación Funcional en Javascript

 

Nicolas Restrepo

Frontend developer

Soft dev team

@nic_restrepo

¿Paradigma de programación?

  • Programación imperativa
  •  Programación Orientada a Objetos 
  • Programación Declarativa

- Programación Funcional

  • Programación Dinámica

Imperativa vs Declarativa

indico el ¿cómo?

  • Describe un problema en términos de instrucciones y condiciones para llegar a un resultado
  • Modifica el estado de un programa al permitir la mutación de valores

indico el ¿Qué?

  • Describe un problema en terminos de proposiciones y afirmaciones, sin especificar los pasos para resolverlo
  • Evita cambiar el estado de un programa al prevenir la mutación de valores

¿Qué es la programación Funcional?

"functional programming refers to the declarative evaluation of pure functions to create immutable programs by avoiding externally observable side effects"

 

 

funcional programing in javascript | Luis Atencio

¿Función?

conjunto de Instrucciones relacionadas con un objetivo

Función Pura

  • Dado unos parámetros de entrada de idéntico valor, la función siempre devolverá el mismo resultado.
  • El cómputo de la función, su lógica, no implica ningún efecto observable colateral fuera de ella.

Otras funciones puras

Otras funciones inpuras

Higher Order Functions

¿Inmutabilidad?

  • algo es inmutable cuando no se puede modificar.
  • una forma de asegurarnos que nuestro objeto no se modifica en lugares inesperados

immutable.js

Sin iteraciones!!!!

map()

filter()

reduce()

Programacion Funcional en Javascript

By nicolas restrepo

Programacion Funcional en Javascript

  • 511