Autor

Autodidacta del código desde pequeñito en un viaje a través de un montón de lenguajes y tecnologías. En la actualidad especializado en React, anteriormente en Ruby on Rails y en el futuro... ¡quién sabe!

Redactor en

Sagas vs Thunk

En contraste al flujo de datos aparentemente completo que ofrece Redux para nuestra aplicación, hay una cosa que no hace por nosotros: recoger dichos datos de un servicio web ya que Redux no se ocupa de los “efectos secundarios”.

De la forma en la que React y Redux plantean una programación funcional, el resultado de una función debe ser siempre predecible en función a los parámetros de inicio.

Dicho de otra forma: un reductor siempre devolverá el mismo resultado si se le pasa un estado y una acción determinados y un componente React siempre se mostrará igual si se le pasan unas propiedades conocidas.

Esto está muy bien ya que nuestra aplicación tendrá siempre un comportamiento predecible y seguro. Pero falta algo importante: las llamadas a servicios web, lectura y escritura de cookies, uso de las API’s del navegador como geolocalizador, base de datos, operaciones en el tiempo, etc…

Ninguna aplicación puede existir sin estos “efectos secundarios”, particularmente las llamadas a servicios, por lo cual surgen librerías middleware para Redux que nos permiten hacernos cargo de ellos.

Mientras que el más extendido desde el inicio es Thunk, Sagas es considerado un favorito por la comunidad y este post intentaré explicar por qué.

sigue leyendo…