SlideShare a Scribd company logo
React.js
и FLUX
Artyom Trityak
React.js and Flux
Artyom Trityak
Electric Cloud
Skype: art.trityak
E-mail: art.trityak@gmail.com
• Build complex UI without pain
• That’s easy - re-render whole page on change
• React.js will make a diff and apply only changes to
DOM
React? What’s React? Why React?
React elements composition
Nested elements
Nested elements
Nested elements
this.props.children
• SEO - no need phantom.js renderer for SPA
• Increase first load speed
• JS-bindings «on flight»
Server Side Rendering
Server Side Rendering: Node.js
Server Side Rendering: Node.js
https://github.com/artyomtrityak/react-server-render-node
React.js and Flux in details
Flux
Flux: one directional data flow
onClick
onSelect
onChange
…
Actions.actionName(params)
!
UserActions.createUser(…)
UserActions.selectGroup(…) 1
2
3
Flux: Who is owner? React is owner
1
2
3
4
Flux: Action -> WebUtils -> Dispatcher
1
2
3
Сервер
Fetch.js
Superagent
jQuery.ajax
EventEmitter
EventEmitter Events
1
2
3
ES6 Store
Immutable.js
http://facebook.github.io/immutable-js
• Immutable state
• One directional data flow
Flux: «умные» и «глупые» компоненты
Smart component
(state)
STORE
ACTIONS
Flux: «умные» и «глупые» компоненты
Smart component
(state)
STORE
ACTIONS
Dumb
component
(props)
Dumb
component
(props)
Dumb
component
(props)
props
ФЫВ
callbacks
Flux: examples
https://github.com/facebook/flux/tree/master/examples
https://github.com/gaearon/flux-react-router-example
React Router
React Router
React Router
React Router
React Router
+Bonus
React Native
end 2015 - beg 2016
https://github.com/facebook/react-native
Facebook groups app
• JavaScript
• NO WebView
• NO browser
• JavaScript logic in separated thread does not block Native UI
• JSX HTML -> Native platform elements
• Learn once, write everywhere
• Example: http://www.facebookgroups.com/
React Native
iOS / Android devs: «But…»
React.js and Flux in details

More Related Content

What's hot (20)

PDF
Modern javascript
Kevin Ball
 
PDF
Michael North "Ember.js 2 - Future-friendly ambitious apps, that scale!"
Fwdays
 
PDF
Clojure web dev history
Ikuru Kanuma
 
PPTX
After the LAMP, it's time to get MEAN
Jeff Fox
 
PPTX
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
Srijan Technologies
 
PDF
Isomorphic web application
Oliver N
 
PDF
The Dark Side of Single Page Applications
Dor Kalev
 
PDF
Grunt.js and Yeoman, Continous Integration
David Amend
 
PPTX
React JS Belgium Touch Base - React, Flux, React Native
Philos.io
 
PPTX
AngularJS vs React JS vs Node JS: Which is Best For Web Development ?
MarkupBox
 
PPTX
Santa Barbara AngularJS intro to 1.3
Sol Tran
 
PDF
Workflow driven development
DmitryDemyankov
 
PDF
Node.js with Express
Gergely Németh
 
PDF
An Intro to Angular 2
Ron Heft
 
PDF
Mean Stack - An Overview
Naveen Pete
 
PDF
"Backbone React Flux" Артем Тритяк
Fwdays
 
PPSX
Node.js In The Enterprise - A Primer
Naveen S.R
 
PPTX
How NOT to get lost in the current JavaScript landscape
Radosław Scheibinger
 
KEY
LinkedIn Mobile: How do we do it?
phegaro
 
PDF
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
David Amend
 
Modern javascript
Kevin Ball
 
Michael North "Ember.js 2 - Future-friendly ambitious apps, that scale!"
Fwdays
 
Clojure web dev history
Ikuru Kanuma
 
After the LAMP, it's time to get MEAN
Jeff Fox
 
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
Srijan Technologies
 
Isomorphic web application
Oliver N
 
The Dark Side of Single Page Applications
Dor Kalev
 
Grunt.js and Yeoman, Continous Integration
David Amend
 
React JS Belgium Touch Base - React, Flux, React Native
Philos.io
 
AngularJS vs React JS vs Node JS: Which is Best For Web Development ?
MarkupBox
 
Santa Barbara AngularJS intro to 1.3
Sol Tran
 
Workflow driven development
DmitryDemyankov
 
Node.js with Express
Gergely Németh
 
An Intro to Angular 2
Ron Heft
 
Mean Stack - An Overview
Naveen Pete
 
"Backbone React Flux" Артем Тритяк
Fwdays
 
Node.js In The Enterprise - A Primer
Naveen S.R
 
How NOT to get lost in the current JavaScript landscape
Radosław Scheibinger
 
LinkedIn Mobile: How do we do it?
phegaro
 
Client vs Server Templating: Speed up initial load for SPA with Angular as an...
David Amend
 

Viewers also liked (20)

PPTX
React Native on Android
萬皇 楊
 
PDF
Full Stack Toronto - the 3R Stack
Scott Persinger
 
PPT
Choice Paralysis
Flux Trend Analysis
 
PDF
About Flux
Jooyoung Moon
 
PDF
Intro to RxJava/RxAndroid - GDG Munich Android
Egor Andreevich
 
PPTX
Android Design Principles and Popular Patterns
Faiz Malkani
 
PPT
Building Reactive webapp with React/Flux
Keuller Magalhães
 
PPTX
Flux architecture
Boyan Mihaylov
 
PDF
React & Flux Workshop
Christian Lilley
 
PPTX
Intro to Flux - ReactJS Warsaw #1
Damian Legawiec
 
PPTX
Clean architecture on android
Benjamin Cheng
 
PPTX
【Potatotips #26】Replace EventBus with RxJava/RxAndroid
Hiroyuki Kusu
 
PDF
`redux`と`flux`を比べてみたときの個人的な感想
佐藤 俊太郎
 
PPTX
Lightning Talk - Clean Architecture and Design
Deivison Sporteman
 
PDF
GDG 2014 - RxJava를 활용한 Functional Reactive Programming
waynejo
 
PDF
Is Activity God? ~ The MVP Architecture ~
Ken William
 
PDF
Clean architecture: Android
intive
 
PPTX
Design Pattern - MVC, MVP and MVVM
Mudasir Qazi
 
PDF
Clean Architecture
Badoo
 
PDF
RxAndroid: 비동기 및 이벤트 기반 프로그래밍을 위한 라이브러리
Soyeon Kim
 
React Native on Android
萬皇 楊
 
Full Stack Toronto - the 3R Stack
Scott Persinger
 
Choice Paralysis
Flux Trend Analysis
 
About Flux
Jooyoung Moon
 
Intro to RxJava/RxAndroid - GDG Munich Android
Egor Andreevich
 
Android Design Principles and Popular Patterns
Faiz Malkani
 
Building Reactive webapp with React/Flux
Keuller Magalhães
 
Flux architecture
Boyan Mihaylov
 
React & Flux Workshop
Christian Lilley
 
Intro to Flux - ReactJS Warsaw #1
Damian Legawiec
 
Clean architecture on android
Benjamin Cheng
 
【Potatotips #26】Replace EventBus with RxJava/RxAndroid
Hiroyuki Kusu
 
`redux`と`flux`を比べてみたときの個人的な感想
佐藤 俊太郎
 
Lightning Talk - Clean Architecture and Design
Deivison Sporteman
 
GDG 2014 - RxJava를 활용한 Functional Reactive Programming
waynejo
 
Is Activity God? ~ The MVP Architecture ~
Ken William
 
Clean architecture: Android
intive
 
Design Pattern - MVC, MVP and MVVM
Mudasir Qazi
 
Clean Architecture
Badoo
 
RxAndroid: 비동기 및 이벤트 기반 프로그래밍을 위한 라이브러리
Soyeon Kim
 
Ad

Similar to React.js and Flux in details (20)

PDF
"Frameworks in 2015" Андрей Листочкин
Fwdays
 
PDF
Workshop 27: Isomorphic web apps with ReactJS
Visual Engineering
 
PDF
Breaking the Server-Client Divide with Node.js and React
Dejan Glozic
 
PDF
Tech Talk on ReactJS
Atlogys Technical Consulting
 
PPTX
React JS .NET
Jennifer Estrada
 
PPTX
Reactjs Introduction - Virtual DOM
Tamir Azrab
 
PPTX
Comparing Angular and React JS for SPAs
Jennifer Estrada
 
PPTX
Introduction to React.js and Next.js.pptx
alpeshconnect1
 
PPTX
React.js at Cortex
Geoff Harcourt
 
PDF
React.js - and how it changed our thinking about UI
Marcin Grzywaczewski
 
PDF
Hastening React SSR - Web Performance San Diego
Maxime Najim
 
PDF
Welcome to React & Flux !
Ritesh Kumar
 
PDF
Making react part of something greater
Darko Kukovec
 
PDF
Using redux and angular 2 with meteor
Ken Ono
 
PDF
Using redux and angular 2 with meteor
Ken Ono
 
PDF
Секретный доклад о React Router - OdessaJS 2014
Andrey Listochkin
 
PPTX
React js intro
Jessica Le
 
PDF
MidwestJS 2014 Reconciling ReactJS as a View Layer Replacement
Zach Lendon
 
PDF
Reconciling ReactJS as a View Layer Replacement (MidwestJS 2014)
Zach Lendon
 
PPTX
Reactjs
Neha Sharma
 
"Frameworks in 2015" Андрей Листочкин
Fwdays
 
Workshop 27: Isomorphic web apps with ReactJS
Visual Engineering
 
Breaking the Server-Client Divide with Node.js and React
Dejan Glozic
 
Tech Talk on ReactJS
Atlogys Technical Consulting
 
React JS .NET
Jennifer Estrada
 
Reactjs Introduction - Virtual DOM
Tamir Azrab
 
Comparing Angular and React JS for SPAs
Jennifer Estrada
 
Introduction to React.js and Next.js.pptx
alpeshconnect1
 
React.js at Cortex
Geoff Harcourt
 
React.js - and how it changed our thinking about UI
Marcin Grzywaczewski
 
Hastening React SSR - Web Performance San Diego
Maxime Najim
 
Welcome to React & Flux !
Ritesh Kumar
 
Making react part of something greater
Darko Kukovec
 
Using redux and angular 2 with meteor
Ken Ono
 
Using redux and angular 2 with meteor
Ken Ono
 
Секретный доклад о React Router - OdessaJS 2014
Andrey Listochkin
 
React js intro
Jessica Le
 
MidwestJS 2014 Reconciling ReactJS as a View Layer Replacement
Zach Lendon
 
Reconciling ReactJS as a View Layer Replacement (MidwestJS 2014)
Zach Lendon
 
Reactjs
Neha Sharma
 
Ad

More from Artyom Trityak (14)

PDF
Data fetching in React.js
Artyom Trityak
 
PDF
Component-based Front-End architecture
Artyom Trityak
 
PDF
Чик чик и в продакшн: быстрый обзор маленьких библиотек для большого Backbone...
Artyom Trityak
 
PDF
Front-End UnitTesting
Artyom Trityak
 
PDF
Just Test It
Artyom Trityak
 
PDF
FrontEnd Unit testing
Artyom Trityak
 
PDF
Requirejs in details v2
Artyom Trityak
 
PDF
Modern front-end
Artyom Trityak
 
PDF
Backbonejs Full Stack
Artyom Trityak
 
PDF
CoffeeScript a-zA-Z
Artyom Trityak
 
PDF
Sinonjs mocks
Artyom Trityak
 
PDF
Backbone widget apps
Artyom Trityak
 
PDF
Green orange: Gruntjs, Mocha, Testacular (Karma)
Artyom Trityak
 
PPTX
Require.js in details
Artyom Trityak
 
Data fetching in React.js
Artyom Trityak
 
Component-based Front-End architecture
Artyom Trityak
 
Чик чик и в продакшн: быстрый обзор маленьких библиотек для большого Backbone...
Artyom Trityak
 
Front-End UnitTesting
Artyom Trityak
 
Just Test It
Artyom Trityak
 
FrontEnd Unit testing
Artyom Trityak
 
Requirejs in details v2
Artyom Trityak
 
Modern front-end
Artyom Trityak
 
Backbonejs Full Stack
Artyom Trityak
 
CoffeeScript a-zA-Z
Artyom Trityak
 
Sinonjs mocks
Artyom Trityak
 
Backbone widget apps
Artyom Trityak
 
Green orange: Gruntjs, Mocha, Testacular (Karma)
Artyom Trityak
 
Require.js in details
Artyom Trityak
 

Recently uploaded (20)

PDF
Plugging AI into everything: Model Context Protocol Simplified.pdf
Abati Adewale
 
PDF
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
PDF
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
PDF
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
PPTX
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
PDF
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PDF
Database Benchmarking for Performance Masterclass: Session 2 - Data Modeling ...
ScyllaDB
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PPTX
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
PDF
Database Benchmarking for Performance Masterclass: Session 1 - Benchmarking F...
ScyllaDB
 
PDF
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
PDF
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
PDF
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
PPTX
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
PPTX
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
PPTX
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
Plugging AI into everything: Model Context Protocol Simplified.pdf
Abati Adewale
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
Kubernetes - Architecture & Components.pdf
geethak285
 
Database Benchmarking for Performance Masterclass: Session 2 - Data Modeling ...
ScyllaDB
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
Database Benchmarking for Performance Masterclass: Session 1 - Benchmarking F...
ScyllaDB
 
“Scaling i.MX Applications Processors’ Native Edge AI with Discrete AI Accele...
Edge AI and Vision Alliance
 
FME as an Orchestration Tool with Principles From Data Gravity
Safe Software
 
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
01_Approach Cyber- DORA Incident Management.pptx
FinTech Belgium
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 

React.js and Flux in details