Redux: A predictable state container

Yan Magalhães

Full Stack Web Developer na

Primeiramente ...

Vamos compartilhar Galera!

Aplicações Javascript se tornaram mais complexas.

State - "Fonte única de verdade"

Redux

Criado por Dan Abramov, é um container de estados previsíveis para aplicações JS

http://redux.js.org/

Inspirações:

  • Elm
  • Arquitetura Flux(CQRS, Event Sourcing)
  • Implementações do Flux

Flux

Modelo de arquitetura fundamento no conceito Single Direction Data Flow.

https://github.com/yanmagale/awesome-flux

Características:

  • Hot Reloading e Time Travel Debugging
  • Possui uma única Store
  • Store: "source of true"; "read only"
  • Não possui Dispatcher
  • Funções Puras
  • Dados imutáveis

Composição

  • Actions
  • Store
  • Reducers
  • Views(root component)

HORA DO CÓDIGO

redux-thunk

redux-form

redux-saga

redux-*

https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367#.cz1v27yjy

 Caso você necessite:

  • Aplicação possui Dados dinâmicos
  • Equipe grande de desenvolvimento(ou não)
  • Código mais explícito, mais testável e previsível
  • Necessidade de exibir o mesmo dado, de formas diferentes na interface
  • Dados imutáveis
  • Programação Funcional
  • Trabalhar com eventos
  • Controlar eventos no front end
  • Trabalhar com componentes separados

Redux pode ser uma ótima solução.

Dicas e Referências

http://redux.js.org/

https://egghead.io/courses/getting-started-with-redux

https://learnredux.com/

/yanmagale

/yaanmagale

https://yanmagalhaes.com.br

Obrigado Galera \o/

https://slides.com/yanmagale/react-redux

Redux - A predictable state container

By Yan Magalhães

Redux - A predictable state container

Palestra sobre Redux, apresentada no React-BH, em Belo Horizonte, 16/03/2017

  • 1,221