Menu

REDUX en Angular

angularredux - January 02, 2018 por Carlos Rojas | Edita este Post.
Angular CLI1.6.1Angular5.0

A medida que tu aplicacion va creciendo y vas creando más y más componentes cada vez es mas dificil saber quien cambia el estado de los datos. Es por esto que se habla del patron de Administración de estado Redux.

¿ Que es Redux ?

Redux es un contenedor de estado predictivo para apps en Javascript.

Este te ayuda a escribir aplicaciones que se comporten consistentemente, se ejecute como en diferentes entornos ( Cliente, Servidor y Nativo ) y sean faciles de probar.

Beneficios.

  • Arquitectura escalable de datos.
  • Mayor control en el flujo de datos.
  • Programación Funcional.
  • Control de estados.
  • E stado global e inmutable

Los tres principios de Redux.

ÚNICA FUENTE DE LA VERDAD

El estado de toda tu aplicación está almacenado en un árbol guardado en un único store.

EL ESTADO ES DE SOLO LECTURA

La única forma de modificar el estado es emitiendo una acción, un objeto describiendo qué ocurrió.

LOS CAMBIOS SE REALIZAN EN FUNCIONES PURAS

Para especificar cómo el árbol de estado es transformado por las acciones, se utilizan reducers puros.

Como usamos esto en Angular ?

Existén dos librerias que en la actualidad te permiten implementar este patrón en tus Apps con Angular, estas son angular-redux y ngrx.

ngrx es la libreria que los expertos en Angular recomiendan y posiblemente se convierta en el estandar.

Por donde comenzar ?

Te recomiendo este 30 dias con RXjs hecho por Jorge Cano el cual te explica los principios en los que se basa ngrx.

He creado el canal redux-angular en el slack de ng-classroom donde con todos los interesados podremos resolver nuestras dudas :)

Espero sea de utilidad este post y empecemos a utilizar esta arquitectura en nuestras aplicaciones.

¡Compártelo!