Redux es una biblioteca de JavaScript de código abierto para administrar el estado de la aplicación . Se usa más comúnmente con bibliotecas como React o Angular para crear interfaces de usuario . Similar a (e inspirado por) la arquitectura Flux de Facebook , fue creado por Dan Abramov y Andrew Clark.
Autor (es) original (es) | Dan Abramov y Andrew Clark |
---|---|
Versión inicial | 2 de junio de 2015 [1] |
Lanzamiento estable | 4.1.0 / 24 de abril de 2021 [2] |
Repositorio | |
Escrito en | Mecanografiado |
Plataforma | Software multiplataforma |
Tipo | Biblioteca de JavaScript |
Licencia | Licencia MIT |
Sitio web | redux |
Descripción
Redux es una pequeña biblioteca con una API simple y limitada diseñada para ser un contenedor predecible para el estado de la aplicación. Opera de manera similar a una función reductora , un concepto de programación funcional .
Historia
Redux fue creado por Dan Abramov y Andrew Clark en 2015. [3] Abramov comenzó a escribir la primera implementación de Redux mientras se preparaba para una conferencia [4] en React Europe [5] sobre recarga en caliente. Abramov comenta: "Estaba tratando de hacer una prueba de concepto de Flux en la que pudiera cambiar la lógica . Y me permitiría viajar en el tiempo. Y me permitiría volver a aplicar las acciones futuras en el cambio de código". [6]
A Abramov le sorprendió la similitud del patrón Flux con una función reductora. "Estaba pensando en Flux como una operación de reducción a lo largo del tiempo ... sus tiendas, acumulan estado en respuesta a estas acciones. Estaba pensando en llevar esto más lejos. ¿Qué pasaría si su tienda de Flux no fuera una tienda sino una función de reducción?" [3]
Abramov se acercó a Andrew Clark (autor de la implementación de Flux Flummox) como colaborador. Entre otras cosas, le da crédito a Clark por hacer posible el ecosistema de herramientas de Redux, ayudando a crear una API coherente , implementando puntos de extensión como middleware y mejoradores de tienda. [3]
En febrero de 2019, useReducer
se introdujo como un gancho de React en la versión 16.8. Proporciona una API que es coherente con Redux, lo que permite a los desarrolladores crear tiendas similares a Redux que son locales a los estados de los componentes. [7]
Referencias
- ^ Etiqueta de lanzamiento inicial
- ^ "Lanzamientos - ReactJS / Redux" . GitHub .
- ^ a b c Abramov, Dan. "La historia de React y Flux con Dan Abramov" . Tres desarrolladores y un quizás . Consultado el 7 de abril de 2018 .
- ^ "Dan Abramov - Live React: recarga en caliente con viaje en el tiempo en react-europe 2015" . Youtube .
- ^ "ReactEurope 2015 - Live React: recarga en caliente con viajes en el tiempo" . ReactEurope .
- ^ Abramov, Dan. "Progresión, curiosidad y agotamiento con Dan Abramov" . TylerMcGinnis.com . Consultado el 7 de abril de 2018 .
- ^ React v16.8: El de los ganchos