SlideShare uma empresa Scribd logo
React e Reatividade
by José Barbosa
Acompanhe
nosso
podcast:
http://blog.lambda3.com.br/category/p
odcast
@kidchenko
https://twitter.com/kidchenko
Fullstack na Lambda3;
Developerç
Agilista;
Empreendedor digital;
Apaixonado por JS;
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
ANGULAR
COMPONENT
STYLE
JOSÉ BARBOSA
@kidchenko
@lambdatres
Eu uso angular também, mas o assunto de hoje é...
As stack do facebook vai dominar a web!?
REACT
REACT
REACT
JOSÉ BARBOSA
@kidchenko
@lambdatres
Você já viu um
manifesto?
React e reactividade Meetup Facebook Developer Circles
Nós acreditamos que é necessária uma abordagem
coerente para arquitetura de sistemas... ...nós queremos
sistemas Responsivos, Resilientes, Elásticos e Orientados
a Mensagens. Nós chamamos isso de Sistemas Reativos.
Essas transformações estão acontecendo por causa dos
requisitos que mudaram drasticamente nos últimos
anos... ...Hoje há aplicações em produção em todos os
lugares, desde aplicativos móveis até aplicações na
nuvem com clusters rodando milhares processadores
multi-core. Geralmente os usuários esperam respostas
em milisegundos e 100% de disponibilidade.
– The Reactive Manifesto
Onde existe uma tela...
1995-2015
Os 4 princípios reativos
Responsive
• Que responde em tempo hábil;
• Uma aplicação responsiva é o que queremos;
• Responsividade é impossível sem escalabilidade e resiliência;
“A responsive system is quick to react to all users — under blue skies
and grey skies — in order to ensure a consistently positive user
experience.”
:c
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
Resilient
• O sistema continua respondendo em caso de falha;
• Qualquer sistema que não é resiliente ficará fora do ar depois de uma
falha;
React e reactividade Meetup Facebook Developer Circles
Elastic/Scale
• O sistema continua responsivo mesmo sob variações de demanda;
• Projetos que não tenham pontos de contenção ou gargalos centrais;
• Prove métricas relevantes e em tempo real;
Message Driven
• Não bloqueante;
• Programação Assíncronia;
• Message-driven = event-driven, actor-based, ou combinação das
duas;
React e reactividade Meetup Facebook Developer Circles
Event Driven
React e reactividade Meetup Facebook Developer Circles
Programação Reativa é?
“Reactive programming is
programming with
asynchronous data streams.”
Stream?
“A stream is a sequence
of ongoing events ordered in
time”
React e reactividade Meetup Facebook Developer Circles
“Anything can be a stream: variables,
user inputs, properties, caches, data
structures, etc.”
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
Observables
• Não é nada novo;
React e reactividade Meetup Facebook Developer Circles
Streams are like you
twitter feed
Streams vs Collections
• Você pode fazer “merge” de duas streams. Você pode fazer “filter”,
“map”
• Streams são o centro da reatividade
React e reactividade Meetup Facebook Developer Circles
Trends?
Porque react?
• Declarativo;
• V do MV*;
• Componentes!!!
• Virtual DOM
React e reactividade Meetup Facebook Developer Circles
Declarative
Imperative
http://blog.percolatestudio.com/engineering/reactive-user-interfaces/
http://blog.thefirehoseproject.com/posts/elixirl-rule-development-2017-2020-beyond/
React e reactividade Meetup Facebook Developer Circles
Virtual DOM
• FAST! FAST! FAST!
• Isomorfismo;
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React Compoent Lifecycle
webpack
React Native
F8 App
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
React e reactividade Meetup Facebook Developer Circles
Referências
• https://medium.com/@garychambers108/understanding-flux-
f93e9f650af7#.a4c52d40n
• http://blog.thefirehoseproject.com/posts/elixirl-rule-development-
2017-2020-beyond/
• http://blog.percolatestudio.com/engineering/reactive-user-
interfaces/
Duvidas?
Obrigado!
@kidchenko
https://twitter.com/kidchenko
m.me/kidchenko

Mais conteúdo relacionado

PDF
Programação funcional que funciona
PDF
O papel e a carreira do arquiteto de software
PDF
Clean Architecture
PPTX
Testes Automatizados
PPTX
Arquitetura de referência Drupal 7 e 8. Da Natura e Taller para a comunidade ...
PDF
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
PDF
DevOps é cultura, processo ou cargo ?
PPTX
DevOps - A Origem
Programação funcional que funciona
O papel e a carreira do arquiteto de software
Clean Architecture
Testes Automatizados
Arquitetura de referência Drupal 7 e 8. Da Natura e Taller para a comunidade ...
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
DevOps é cultura, processo ou cargo ?
DevOps - A Origem

Mais procurados (20)

PDF
aGITe antes de versionar
PDF
TDC2016SP - Trilha Quebrando um monolítico J2EE, uma história de trás das tri...
PDF
IFSP 2015 - Cultura DevOps
KEY
DevOps, NoOps...afinal que raios é isso?
PPTX
Estratégias de Estruturação de Código-fonte e Controlo de Versão
PPTX
Como a Natura vem diminuindo seu custo de operação total com Drupal - DrupalC...
PDF
Arquitetura em camadas em python e quanto isso pode ajudar
PPTX
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
PDF
DevOps: princípios e práticas para a Entrega Contínua
PPT
Desvendando ASP.NET MVC
PDF
Ir para cloud com arquitetura de microservices resolverá o meu problema?
PDF
Cultura DevOps e integração entre infra e devel
PDF
DevOps no mundo real - QCON 2014
PPTX
Começando errado com php
PDF
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
PDF
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
PDF
Do código à produção com Gitlab (mundo python)
PPTX
DevOps com Exemplos Práticos - QConRio 2014
PDF
Discutindo DevOps na pratica, por Danilo Sato
PDF
Além do MVP com PHP - TDC POA 2015
aGITe antes de versionar
TDC2016SP - Trilha Quebrando um monolítico J2EE, uma história de trás das tri...
IFSP 2015 - Cultura DevOps
DevOps, NoOps...afinal que raios é isso?
Estratégias de Estruturação de Código-fonte e Controlo de Versão
Como a Natura vem diminuindo seu custo de operação total com Drupal - DrupalC...
Arquitetura em camadas em python e quanto isso pode ajudar
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
DevOps: princípios e práticas para a Entrega Contínua
Desvendando ASP.NET MVC
Ir para cloud com arquitetura de microservices resolverá o meu problema?
Cultura DevOps e integração entre infra e devel
DevOps no mundo real - QCON 2014
Começando errado com php
DevOps II - Ambientes padronizados e Monitoramento da Aplicação | Monografia II
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
Do código à produção com Gitlab (mundo python)
DevOps com Exemplos Práticos - QConRio 2014
Discutindo DevOps na pratica, por Danilo Sato
Além do MVP com PHP - TDC POA 2015
Anúncio

Destaque (15)

PDF
Curso Android Básico
PDF
TDC 2016 - Rodando JavaScript Server com Wildfly
PDF
NetBeans Day 2015 - Node.js, HTML5, JBoss Forge, and Other Awesome New NetBea...
PPTX
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
PPTX
NetBeans Day 2016 - Getting the best of NetBeans IDE
PDF
TDC 2016 - Simplificando a segurança de sua aplicação com Java EE
PDF
Curso de ReactJS
PDF
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
PDF
React + Flux (Alt)
PDF
React Native na globo.com
PDF
JavaOne 2016 - Kotlin: The Language of The Future For JVM?
PDF
TDC2016SP - Trilha Frameworks JavaScript
PPTX
TDC2016SP - Trilha Frameworks JavaScript
PPTX
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
PDF
TDC 2014 - Arquitetura front-end com AngularJS
Curso Android Básico
TDC 2016 - Rodando JavaScript Server com Wildfly
NetBeans Day 2015 - Node.js, HTML5, JBoss Forge, and Other Awesome New NetBea...
JavaOne 2014 - Scalable JavaScript Applications with Project Nashorn [CON6423]
NetBeans Day 2016 - Getting the best of NetBeans IDE
TDC 2016 - Simplificando a segurança de sua aplicação com Java EE
Curso de ReactJS
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
React + Flux (Alt)
React Native na globo.com
JavaOne 2016 - Kotlin: The Language of The Future For JVM?
TDC2016SP - Trilha Frameworks JavaScript
TDC2016SP - Trilha Frameworks JavaScript
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
TDC 2014 - Arquitetura front-end com AngularJS
Anúncio

Semelhante a React e reactividade Meetup Facebook Developer Circles (20)

PPT
TDC2016SP - Web Moderna além do Front-End com AngularJS
PPTX
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
PDF
Desmistificando a programação reativa
PDF
Desenvolvimento Client-Side 2016 (BrazilJS)
PDF
Desenvolvimento Client-Side 2016
PDF
Cvc programacao reativa
PPTX
Introdução ao WebFlux
PDF
Angular + Redux (ngRx)
PDF
Microservices reativos e a experiência do iFood
PDF
Devcamp 2017 Microservices Reativos
PDF
Escalando aplicações no front-end com ReactJS
PPTX
Devcommerce Manifesto Reativo
PPT
Programando interfaces reativas com ReacitveUI na plataforma Xamarin
PDF
Reactive architecture e microservices microservices, ap is e event driven (1)
PDF
Aplicações Web - um estudo sobre React
PDF
JS Experience 2017 - Programação reativa com Ionic
PDF
Ionic Reativo com RxJS e ngRx
PDF
Angular, React ou Vue? Comparando os favoritos do JS reativo
PDF
QCon SP 2017 - Reactive Microservices e a experiência do iFood
PDF
TDC2018SP | Trilha Kotlin - Reagindo a nova era: Aplicacoes Web Reativas com ...
TDC2016SP - Web Moderna além do Front-End com AngularJS
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
Desmistificando a programação reativa
Desenvolvimento Client-Side 2016 (BrazilJS)
Desenvolvimento Client-Side 2016
Cvc programacao reativa
Introdução ao WebFlux
Angular + Redux (ngRx)
Microservices reativos e a experiência do iFood
Devcamp 2017 Microservices Reativos
Escalando aplicações no front-end com ReactJS
Devcommerce Manifesto Reativo
Programando interfaces reativas com ReacitveUI na plataforma Xamarin
Reactive architecture e microservices microservices, ap is e event driven (1)
Aplicações Web - um estudo sobre React
JS Experience 2017 - Programação reativa com Ionic
Ionic Reativo com RxJS e ngRx
Angular, React ou Vue? Comparando os favoritos do JS reativo
QCon SP 2017 - Reactive Microservices e a experiência do iFood
TDC2018SP | Trilha Kotlin - Reagindo a nova era: Aplicacoes Web Reativas com ...

Mais de José Barbosa (10)

PPTX
Building SPA’s using ReactJS and ASP NET Core
PPTX
Spa's com Reactjs e Asp Net Core
PPTX
Relatos de uma empresa ágil
PPTX
Angular 1.5 Components
PPTX
.ASP NET CORE ON DOCKER
PPTX
Por que api’s
PDF
Por que api’s?
PPTX
Monitoramento de containers Docker
PPTX
Vá além com cortana e windows 10
PPTX
DevopsSummitBrasil - Azure Machine Learning
Building SPA’s using ReactJS and ASP NET Core
Spa's com Reactjs e Asp Net Core
Relatos de uma empresa ágil
Angular 1.5 Components
.ASP NET CORE ON DOCKER
Por que api’s
Por que api’s?
Monitoramento de containers Docker
Vá além com cortana e windows 10
DevopsSummitBrasil - Azure Machine Learning

Último (11)

PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PDF
Manejo integrado de pragas na cultura do algodão
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PPTX
Utilizando code blockes por andre backes
PPTX
Mecânico de Manutenção de Equipamentos.pptx
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Eng. Software - pontos essenciais para o início
Viasol Energia Solar -Soluções para geração e economia de energia
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Manejo integrado de pragas na cultura do algodão
Arquitetura de computadores - Memórias Secundárias
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Utilizando code blockes por andre backes
Mecânico de Manutenção de Equipamentos.pptx
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Eng. Software - pontos essenciais para o início

React e reactividade Meetup Facebook Developer Circles

Notas do Editor

  • #10: Organizações que trabalham em diferentes ramos, estão independentemente descobrindo padrões aleatórios para criarem sistemas semelhantes. Esses sistemas são mais robustos, mais resistentes, mais flexíveis e melhor posicionados para sustentar as demandas modernas. Essas transformações estão acontecendo por causa dos requisitos que mudaram drasticamente nos últimos anos Roland Kuhn e Jonas Bonér => akka project
  • #12: A netflix tem por objetivo disponibilizar seu serviço para o maior número de clientes de devices possível, para isso usa uma API centralizada e todos os devices/clients consomem essa API. Grande parte do desenvolvimento mobile funciona com um client consumindo uma API.
  • #15: Quickness and a positive user experience under various conditions, such as failure of an external system or a spike of traffic, depends on the two traits of a Reactive application: resilience and scalability. A message-driven architectureprovides the overall foundation for a responsive system.
  • #17: Dirty Checking do angular faz os apps parecerem o transito de sp
  • #23: Take another example of synchrony, the single-threaded event loop. This is typical of event-based frameworks such as Node.js — events are emitted, queued, and processed by an event handler in a synchronous loop, and the recipients of those events are anonymous function callbacks. Bottlenecks occur when blocking occurs on the same thread as the event loop, such as one of the callbacks initiating a trip to the database.
  • #28: A stream is a sequence of ongoing events ordered in time. It can emit three different things: a value (of some type), an error, or a “completed” signal. 
  • #47: Componentes são uma estrutura modular Representa uma unidade