SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
React & Flux
Developing stateful JavaScript applications with
React.js library and Flux application architecture
Lukáš Vlček
Brno, June 3rd
, 2015
React
JS library by Facebook (Instagram)
https://facebook.github.io/react/
For building visual interfaces
Hello-World
http://facebook.github.io/react/docs/getting-started.html
JSX
http://facebook.github.io/react/docs/jsx-in-depth.html
Does not have to be used
(matter of taste)
Virtual DOM
1) Generate whole app DOM with every
single change
2) Do DIFF with actual DOM
3) Change only what is needed for
transition between states
(with optimizations)
Not everything is cheap
Some complexity can get in when
interacting with a real DOM
(necessary compromise)
Animations or draggable
(possible but you can shop elsewhere)
Fortunately it is simple to integrate with
other libs
Revolutionary?
The idea is probably not genuine
(one example: CodeMirror)
http://marijnhaverbeke.nl/blog/display-updates-in-codemirror.html
But very well put together
(good timing)
Changing how developers can think
about UI development
Data Flow
(Re)Think about data flow in your app!
And put it into good order
Stick to it
(there can be exceptions)
Think!
Don't drink and drive!
Don't code without thinking!
http://www.ybrikman.com/writing/2014/05/19/dont-learn-to-
code-learn-to-think/
Flux
System Architecture pattern
How to avoid event chains hell
Many come up with Flux clones or
different approaches
Flux
Flux
https://github.com/facebook/flux
https://facebook.github.io/flux/docs/overview.html
http://www.code-experience.com/async-requests-with-
react-js-and-flux-revisited/
React Starter Kit
https://github.com/kriasoft/react-starter-kit
Este.js
https://github.com/Steida/este
The END!
It is sunny day
Go out
Enjoy life!

Mais conteúdo relacionado

Mais procurados

Design meets presentation November 2013
Design meets presentation November 2013Design meets presentation November 2013
Design meets presentation November 2013laurawesley
 
[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...
[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...
[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...DevDay.org
 
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)Evan Lin
 
Meteor Day Gothenburg
Meteor Day GothenburgMeteor Day Gothenburg
Meteor Day GothenburgOscar Nilsson
 
Golang taipei #45 10th birthday
Golang taipei #45 10th birthdayGolang taipei #45 10th birthday
Golang taipei #45 10th birthdayEvan Lin
 
FrontBox - what frontend web development is? Let's discover ReactJS!
FrontBox - what frontend web development is? Let's discover ReactJS!FrontBox - what frontend web development is? Let's discover ReactJS!
FrontBox - what frontend web development is? Let's discover ReactJS!Marco Pegoraro
 
2018 03-14-adam devops-developing-on-kubernetes
2018 03-14-adam devops-developing-on-kubernetes2018 03-14-adam devops-developing-on-kubernetes
2018 03-14-adam devops-developing-on-kubernetesGabriel Carro
 
Git workflows (Basics)
Git workflows (Basics)Git workflows (Basics)
Git workflows (Basics)Roman Kuba
 
dotNet Miami - August 16, 2012 - Windows 8 App Walkthrough
dotNet Miami - August 16, 2012 - Windows 8 App WalkthroughdotNet Miami - August 16, 2012 - Windows 8 App Walkthrough
dotNet Miami - August 16, 2012 - Windows 8 App WalkthroughdotNet Miami
 

Mais procurados (10)

Brad wood -_whats_a_pull_request
Brad wood -_whats_a_pull_requestBrad wood -_whats_a_pull_request
Brad wood -_whats_a_pull_request
 
Design meets presentation November 2013
Design meets presentation November 2013Design meets presentation November 2013
Design meets presentation November 2013
 
[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...
[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...
[DevDay2018] React Native – Hello World - By: Trung Pham & React Native team ...
 
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
 
Meteor Day Gothenburg
Meteor Day GothenburgMeteor Day Gothenburg
Meteor Day Gothenburg
 
Golang taipei #45 10th birthday
Golang taipei #45 10th birthdayGolang taipei #45 10th birthday
Golang taipei #45 10th birthday
 
FrontBox - what frontend web development is? Let's discover ReactJS!
FrontBox - what frontend web development is? Let's discover ReactJS!FrontBox - what frontend web development is? Let's discover ReactJS!
FrontBox - what frontend web development is? Let's discover ReactJS!
 
2018 03-14-adam devops-developing-on-kubernetes
2018 03-14-adam devops-developing-on-kubernetes2018 03-14-adam devops-developing-on-kubernetes
2018 03-14-adam devops-developing-on-kubernetes
 
Git workflows (Basics)
Git workflows (Basics)Git workflows (Basics)
Git workflows (Basics)
 
dotNet Miami - August 16, 2012 - Windows 8 App Walkthrough
dotNet Miami - August 16, 2012 - Windows 8 App WalkthroughdotNet Miami - August 16, 2012 - Windows 8 App Walkthrough
dotNet Miami - August 16, 2012 - Windows 8 App Walkthrough
 

Destaque

OseeGenius - Semantic search engine and discovery platform
OseeGenius - Semantic search engine and discovery platformOseeGenius - Semantic search engine and discovery platform
OseeGenius - Semantic search engine and discovery platform@CULT Srl
 
Building search app with ElasticSearch
Building search app with ElasticSearchBuilding search app with ElasticSearch
Building search app with ElasticSearchLukas Vlcek
 
MoSQL: An Elastic Storage Engine for MySQL
MoSQL: An Elastic Storage Engine for MySQLMoSQL: An Elastic Storage Engine for MySQL
MoSQL: An Elastic Storage Engine for MySQLAlex Tomic
 
Elasticsearch & "PeopleSearch"
Elasticsearch & "PeopleSearch"Elasticsearch & "PeopleSearch"
Elasticsearch & "PeopleSearch"George Stathis
 
Apache Hadoop 1.1
Apache Hadoop 1.1Apache Hadoop 1.1
Apache Hadoop 1.1Sperasoft
 
Social Miner: Webinar people marketing em 30 min
Social Miner: Webinar people marketing em 30 minSocial Miner: Webinar people marketing em 30 min
Social Miner: Webinar people marketing em 30 minSocial Miner
 
Elasticsearch first-steps
Elasticsearch first-stepsElasticsearch first-steps
Elasticsearch first-stepsMatteo Moci
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide
 
Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to ElasticsearchSperasoft
 
Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...
Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...
Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...Simone Onofri
 
quick intro to elastic search
quick intro to elastic search quick intro to elastic search
quick intro to elastic search medcl
 
Elastic search Walkthrough
Elastic search WalkthroughElastic search Walkthrough
Elastic search WalkthroughSuhel Meman
 
Elastic search adaptto2014
Elastic search adaptto2014Elastic search adaptto2014
Elastic search adaptto2014Vivek Sachdeva
 
Using Elastic Search Outside Full-Text Search
Using Elastic Search Outside Full-Text SearchUsing Elastic Search Outside Full-Text Search
Using Elastic Search Outside Full-Text SearchSumy PHP User Grpoup
 
[Case machine learning- iColabora]Text Mining - classificando textos com Elas...
[Case machine learning- iColabora]Text Mining - classificando textos com Elas...[Case machine learning- iColabora]Text Mining - classificando textos com Elas...
[Case machine learning- iColabora]Text Mining - classificando textos com Elas...Jozias Rolim
 
03. ElasticSearch : Data In, Data Out
03. ElasticSearch : Data In, Data Out03. ElasticSearch : Data In, Data Out
03. ElasticSearch : Data In, Data OutOpenThink Labs
 
Data replication in Sling
Data replication in SlingData replication in Sling
Data replication in SlingTommaso Teofili
 

Destaque (20)

OseeGenius - Semantic search engine and discovery platform
OseeGenius - Semantic search engine and discovery platformOseeGenius - Semantic search engine and discovery platform
OseeGenius - Semantic search engine and discovery platform
 
Building search app with ElasticSearch
Building search app with ElasticSearchBuilding search app with ElasticSearch
Building search app with ElasticSearch
 
MoSQL: An Elastic Storage Engine for MySQL
MoSQL: An Elastic Storage Engine for MySQLMoSQL: An Elastic Storage Engine for MySQL
MoSQL: An Elastic Storage Engine for MySQL
 
Elasticsearch & "PeopleSearch"
Elasticsearch & "PeopleSearch"Elasticsearch & "PeopleSearch"
Elasticsearch & "PeopleSearch"
 
Apache Hadoop 1.1
Apache Hadoop 1.1Apache Hadoop 1.1
Apache Hadoop 1.1
 
Elasticsearch
ElasticsearchElasticsearch
Elasticsearch
 
Social Miner: Webinar people marketing em 30 min
Social Miner: Webinar people marketing em 30 minSocial Miner: Webinar people marketing em 30 min
Social Miner: Webinar people marketing em 30 min
 
Elasticsearch first-steps
Elasticsearch first-stepsElasticsearch first-steps
Elasticsearch first-steps
 
Oxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic SearchOxalide Academy : Workshop #3 Elastic Search
Oxalide Academy : Workshop #3 Elastic Search
 
Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to Elasticsearch
 
Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...
Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...
Amministratori Di Sistema: Adeguamento al Garante Privacy - Log Management e ...
 
Oak / Solr integration
Oak / Solr integrationOak / Solr integration
Oak / Solr integration
 
Elastic search
Elastic searchElastic search
Elastic search
 
quick intro to elastic search
quick intro to elastic search quick intro to elastic search
quick intro to elastic search
 
Elastic search Walkthrough
Elastic search WalkthroughElastic search Walkthrough
Elastic search Walkthrough
 
Elastic search adaptto2014
Elastic search adaptto2014Elastic search adaptto2014
Elastic search adaptto2014
 
Using Elastic Search Outside Full-Text Search
Using Elastic Search Outside Full-Text SearchUsing Elastic Search Outside Full-Text Search
Using Elastic Search Outside Full-Text Search
 
[Case machine learning- iColabora]Text Mining - classificando textos com Elas...
[Case machine learning- iColabora]Text Mining - classificando textos com Elas...[Case machine learning- iColabora]Text Mining - classificando textos com Elas...
[Case machine learning- iColabora]Text Mining - classificando textos com Elas...
 
03. ElasticSearch : Data In, Data Out
03. ElasticSearch : Data In, Data Out03. ElasticSearch : Data In, Data Out
03. ElasticSearch : Data In, Data Out
 
Data replication in Sling
Data replication in SlingData replication in Sling
Data replication in Sling
 

Semelhante a JBug_React_and_Flux_2015

React, ES6, and Meteor
React, ES6, and MeteorReact, ES6, and Meteor
React, ES6, and MeteorSangwon Lee
 
ReactJS maakt het web eenvoudig
ReactJS maakt het web eenvoudigReactJS maakt het web eenvoudig
ReactJS maakt het web eenvoudigRick Beerendonk
 
Reactjs A javascript Library
Reactjs A javascript LibraryReactjs A javascript Library
Reactjs A javascript LibraryMohit Jain
 
React workshop presentation
React workshop presentationReact workshop presentation
React workshop presentationBojan Golubović
 
React native vs react js
React native vs react jsReact native vs react js
React native vs react jsJessica655282
 
Techpaathshala ReactJS .pdf
Techpaathshala ReactJS .pdfTechpaathshala ReactJS .pdf
Techpaathshala ReactJS .pdfTechpaathshala
 
Welcome to React & Flux !
Welcome to React & Flux !Welcome to React & Flux !
Welcome to React & Flux !Ritesh Kumar
 
Review on React JS
Review on React JSReview on React JS
Review on React JSijtsrd
 
Better web apps with React and Redux
Better web apps with React and ReduxBetter web apps with React and Redux
Better web apps with React and ReduxAli Sa'o
 
The benefits of react js and reasons to choose it for your project
The benefits of react js and reasons to choose it for your projectThe benefits of react js and reasons to choose it for your project
The benefits of react js and reasons to choose it for your projectReactJS
 
Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020
Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020
Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020Matt Raible
 
How Can the Hermes Engine Help React Native Apps.docx.pdf
How Can the Hermes Engine Help React Native Apps.docx.pdfHow Can the Hermes Engine Help React Native Apps.docx.pdf
How Can the Hermes Engine Help React Native Apps.docx.pdfTechugo
 
Say hello to react js - Day 1
Say hello to react js   - Day 1Say hello to react js   - Day 1
Say hello to react js - Day 1Smile Gupta
 
Angular 2 vs React. What to chose in 2017?
Angular 2 vs React. What to chose in 2017?Angular 2 vs React. What to chose in 2017?
Angular 2 vs React. What to chose in 2017?TechMagic
 
ReactJS vs Vue.js — What to choose in 2019?
ReactJS vs Vue.js — What to choose in 2019?ReactJS vs Vue.js — What to choose in 2019?
ReactJS vs Vue.js — What to choose in 2019?Pixel Crayons
 
Maximize Development Efficiency with ReactJS.pdf
Maximize Development Efficiency with ReactJS.pdfMaximize Development Efficiency with ReactJS.pdf
Maximize Development Efficiency with ReactJS.pdfBOSC Tech Labs
 

Semelhante a JBug_React_and_Flux_2015 (20)

React, ES6, and Meteor
React, ES6, and MeteorReact, ES6, and Meteor
React, ES6, and Meteor
 
React js basics
React js basicsReact js basics
React js basics
 
ReactJS maakt het web eenvoudig
ReactJS maakt het web eenvoudigReactJS maakt het web eenvoudig
ReactJS maakt het web eenvoudig
 
Reactjs A javascript Library
Reactjs A javascript LibraryReactjs A javascript Library
Reactjs A javascript Library
 
React workshop presentation
React workshop presentationReact workshop presentation
React workshop presentation
 
React native vs react js
React native vs react jsReact native vs react js
React native vs react js
 
Techpaathshala ReactJS .pdf
Techpaathshala ReactJS .pdfTechpaathshala ReactJS .pdf
Techpaathshala ReactJS .pdf
 
ReactJS vs React Native
ReactJS vs React NativeReactJS vs React Native
ReactJS vs React Native
 
Angular vs.pdf
Angular vs.pdfAngular vs.pdf
Angular vs.pdf
 
Welcome to React & Flux !
Welcome to React & Flux !Welcome to React & Flux !
Welcome to React & Flux !
 
Review on React JS
Review on React JSReview on React JS
Review on React JS
 
JOSA TechTalks - Better Web Apps with React and Redux
JOSA TechTalks - Better Web Apps with React and ReduxJOSA TechTalks - Better Web Apps with React and Redux
JOSA TechTalks - Better Web Apps with React and Redux
 
Better web apps with React and Redux
Better web apps with React and ReduxBetter web apps with React and Redux
Better web apps with React and Redux
 
The benefits of react js and reasons to choose it for your project
The benefits of react js and reasons to choose it for your projectThe benefits of react js and reasons to choose it for your project
The benefits of react js and reasons to choose it for your project
 
Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020
Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020
Full Stack Reactive with React and Spring WebFlux - Switzerland JUG 2020
 
How Can the Hermes Engine Help React Native Apps.docx.pdf
How Can the Hermes Engine Help React Native Apps.docx.pdfHow Can the Hermes Engine Help React Native Apps.docx.pdf
How Can the Hermes Engine Help React Native Apps.docx.pdf
 
Say hello to react js - Day 1
Say hello to react js   - Day 1Say hello to react js   - Day 1
Say hello to react js - Day 1
 
Angular 2 vs React. What to chose in 2017?
Angular 2 vs React. What to chose in 2017?Angular 2 vs React. What to chose in 2017?
Angular 2 vs React. What to chose in 2017?
 
ReactJS vs Vue.js — What to choose in 2019?
ReactJS vs Vue.js — What to choose in 2019?ReactJS vs Vue.js — What to choose in 2019?
ReactJS vs Vue.js — What to choose in 2019?
 
Maximize Development Efficiency with ReactJS.pdf
Maximize Development Efficiency with ReactJS.pdfMaximize Development Efficiency with ReactJS.pdf
Maximize Development Efficiency with ReactJS.pdf
 

Mais de Lukas Vlcek

Elasticsearch Monitoring in Openshift
Elasticsearch Monitoring in OpenshiftElasticsearch Monitoring in Openshift
Elasticsearch Monitoring in OpenshiftLukas Vlcek
 
Elasticsearch @JBoss.org, 2014
Elasticsearch @JBoss.org, 2014Elasticsearch @JBoss.org, 2014
Elasticsearch @JBoss.org, 2014Lukas Vlcek
 
An Introduction to Apache Hadoop, Mahout and HBase
An Introduction to Apache Hadoop, Mahout and HBaseAn Introduction to Apache Hadoop, Mahout and HBase
An Introduction to Apache Hadoop, Mahout and HBaseLukas Vlcek
 
Compass Framework
Compass FrameworkCompass Framework
Compass FrameworkLukas Vlcek
 

Mais de Lukas Vlcek (6)

Elasticsearch Monitoring in Openshift
Elasticsearch Monitoring in OpenshiftElasticsearch Monitoring in Openshift
Elasticsearch Monitoring in Openshift
 
Elasticsearch @JBoss.org, 2014
Elasticsearch @JBoss.org, 2014Elasticsearch @JBoss.org, 2014
Elasticsearch @JBoss.org, 2014
 
An Introduction to Apache Hadoop, Mahout and HBase
An Introduction to Apache Hadoop, Mahout and HBaseAn Introduction to Apache Hadoop, Mahout and HBase
An Introduction to Apache Hadoop, Mahout and HBase
 
Elastic Search
Elastic SearchElastic Search
Elastic Search
 
JBoss Snowdrop
JBoss SnowdropJBoss Snowdrop
JBoss Snowdrop
 
Compass Framework
Compass FrameworkCompass Framework
Compass Framework
 

JBug_React_and_Flux_2015