The Fundamentals of ReactJS
A library for building user interfaces
Jyoti Puri
@jyo_pur
Challenging the established
best practices
@srijan #SrijanWW
Modern web application are
complex
Developing and maintaining
them is hard hard hard…
@srijan #SrijanWW
Traditional MV* Frameworks
@srijan #SrijanWW
Model
(Data)
Controller
(Manages data
flow, logic)
View
(Mutable
Templates - HTML
+ Extensions)
- 3 tier architecture
- criss-cross data flow
- data bindings
Follow best
practices
@srijan #SrijanWW
My UI is
not
reliable
Give me
something
simplified
I want
something
predictabl
e
@srijan #SrijanWW
A LIBRARY FOR BUILDING USER INTERFACES
Is it yet another MVC framework ?
NO
React challenges the best practices
established by MV* frameworks
@srijan #SrijanWW
Functional Approach to UI rendering
Unidirectional Data Flow
Do not mutate - re render
An Abstraction of Immutable Virtual DOM
@srijan #SrijanWW
Components and not templates
React Components are Functions whose
output is DOM state
Components are not just widgets - they
reflect actual application structure
@srijan #SrijanWW
DATA
(as
props)
Compone
nt
Definitio
n
DOM
EVENTS
(as
state)
Combine
DOM
rendering
with display
logic
State
Machine
s
@srijan #SrijanWW
…
https://jsfiddle.net/reactjs/69z2wepo/
@srijan #SrijanWW
JSX = JS + XML
Its a convenience for writing markup in JS.
React has a JSX -> JS pre-compiler.
JSX is not
HTML
is safe from
XSS issues
https://jsfiddle.net/reactjs/5vjqabv3/
@srijan #SrijanWW
…
https://jsfiddle.net/69z2wepo/50585/
@srijan #SrijanWW
…
https://jsfiddle.net/69z2wepo/50586/
@srijan #SrijanWW
- React components can be composed within other
React components
- Composable elements are tested reliable pieces
- Comparability isolates complexity
@srijan #SrijanWW
State of inputs
is managed by browser.
But
React provides support for controlled
components in which case the state of
input components in the DOM is
controlled by component state.
…
@srijan #SrijanWW
React provides synthetic event
handling and bubbling with optimized
memory footprints.
It complies with W3C
recommendations.
@srijan #SrijanWW
- react attaches synthetic events to components
- they are camelCased
- for instance onChange of input below
…
@srijan #SrijanWW
…
https://jsfiddle.net/69z2wepo/50588/
@srijan #SrijanWW
Unidirectional Data Flow
@srijan #SrijanWW
How does it
performs
Mutation
comes with
complexity
Describe how
your view looks
like, do not
worry to update
it !
@srijan #SrijanWW
DOM - Document Object Model
Its way of representing structured documents via
objects.
DOM was never designed and optimized for Dynamic UI
Virtual DOM is a layer of abstraction over actual DOM
Its much faster
Virtual DOM magic works with:
- batching updates
- minimal diff
@srijan #SrijanWW
@srijan #SrijanWW
In 3 Years
Jyoti Puri
@jyo_pur
Thank You!
Take this conversation online by tweeting using the hashtag #SrijanWW

More Related Content

PPTX
Introduction to react js
PPT
Gnizr Architecture (for developers)
PPTX
Introduction to ReactJS ( from PHP Developer Point of View )
PDF
PPTX
reactJS
PDF
Struts presentation
PPTX
Introduction to React JS for beginners
PDF
3rd Generation Web Application Platforms
Introduction to react js
Gnizr Architecture (for developers)
Introduction to ReactJS ( from PHP Developer Point of View )
reactJS
Struts presentation
Introduction to React JS for beginners
3rd Generation Web Application Platforms

What's hot (20)

PPTX
Intro to React
PPT
Struts(mrsurwar) ppt
PPT
Jsfsunum
PPTX
Android Architectures
PDF
Struts Basics
PPT
Facelets
PPTX
Struts introduction
PDF
Introduction to react
PPT
Struts
PDF
React JS - Introduction
PPTX
Java DataBase Connectivity API (JDBC API)
PPTX
PPTX
Lecture 1. java database connectivity
PDF
Introduction to Struts 1.3
PDF
An introduction to React.js
PDF
React JS & Functional Programming Principles
PDF
Jdbc connectivity in java
PDF
React js
PPTX
Reactjs
Intro to React
Struts(mrsurwar) ppt
Jsfsunum
Android Architectures
Struts Basics
Facelets
Struts introduction
Introduction to react
Struts
React JS - Introduction
Java DataBase Connectivity API (JDBC API)
Lecture 1. java database connectivity
Introduction to Struts 1.3
An introduction to React.js
React JS & Functional Programming Principles
Jdbc connectivity in java
React js
Reactjs
Ad

Viewers also liked (13)

PDF
Surviving the Enterprise Storm - Designing in Complex Organizations
PPTX
Colegio la salle(manolo)
PPTX
Le Fil Beauté by Extreme_n°54 mai16
PPTX
Designing usable forms
PDF
re:Invent 2016 の振り返りで学ぶawsを利用したデータ活用戦略と、サバカン屋の新作缶づめ戦略
PDF
Agile and Lean Product Development process
PPTX
An introduction to user experience design
PDF
Estado de Minas, caderno Bem Viver: Nutracêuticos (parte 1)
PPSX
Microsoft Hololens (Novembre 2015)
PDF
CXC Support Resources
PDF
Ceph Performance: Projects Leading Up to Jewel
PPTX
2016 Azurebootcamp 中國Azure 使用經驗
PDF
Resume of Shwetabh Kumar, Project Manager at Deloitte
Surviving the Enterprise Storm - Designing in Complex Organizations
Colegio la salle(manolo)
Le Fil Beauté by Extreme_n°54 mai16
Designing usable forms
re:Invent 2016 の振り返りで学ぶawsを利用したデータ活用戦略と、サバカン屋の新作缶づめ戦略
Agile and Lean Product Development process
An introduction to user experience design
Estado de Minas, caderno Bem Viver: Nutracêuticos (parte 1)
Microsoft Hololens (Novembre 2015)
CXC Support Resources
Ceph Performance: Projects Leading Up to Jewel
2016 Azurebootcamp 中國Azure 使用經驗
Resume of Shwetabh Kumar, Project Manager at Deloitte
Ad

Similar to [Srijan Wednesday Webinars] The Fundamentals of ReactJS (20)

PPTX
ReactJS - Re-rendering pages in the age of the mutable DOM
PPTX
ReactJS.NET - Fast and Scalable Single Page Applications
PDF
An Intense Overview of the React Ecosystem
PDF
React & Flux Workshop
PDF
Basic fundamental of ReactJS
PPTX
ReactJS Code Impact
PDF
Tech Talk on ReactJS
PDF
React JS and why it's awesome
PDF
FRONTEND DEVELOPMENT WITH REACT.JS
PDF
theory-slides-vueh3urh4ur4ur4r44oirj4riu4ri
PPTX
React.js at Cortex
PDF
React - The JavaScript Library for User Interfaces
PDF
Time to React!
PDF
React Tech Salon
PPTX
React js
PDF
React Introduction
PDF
REACTJS.pdf
PDF
Robust web apps with React.js
PPTX
Reactjs
PDF
An Overview of the React Ecosystem
ReactJS - Re-rendering pages in the age of the mutable DOM
ReactJS.NET - Fast and Scalable Single Page Applications
An Intense Overview of the React Ecosystem
React & Flux Workshop
Basic fundamental of ReactJS
ReactJS Code Impact
Tech Talk on ReactJS
React JS and why it's awesome
FRONTEND DEVELOPMENT WITH REACT.JS
theory-slides-vueh3urh4ur4ur4r44oirj4riu4ri
React.js at Cortex
React - The JavaScript Library for User Interfaces
Time to React!
React Tech Salon
React js
React Introduction
REACTJS.pdf
Robust web apps with React.js
Reactjs
An Overview of the React Ecosystem

More from Srijan Technologies (20)

PDF
[Srijan Wednesday Webinar] How to Run Stateless and Stateful Services on K8S ...
PDF
[Srijan Wednesday Webinars] How to Set Up a Node.js Microservices Architectur...
PDF
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
PDF
[Srijan Wednesday Webinars] Using Drupal as Data Pipeline for Digital Signage
PDF
[Srijan Wednesday Webinars] New Recipe of Decoupling: Drupal 8, Symfony and S...
PDF
[Srijan Wednesday Webinars] Let’s Take the Best Route - Exploring Drupal 8 Ro...
PDF
[Srijan Wednesday Webinars] Is Your Business Ready for GDPR
PDF
[Srijan Wednesday Webinars] Artificial Intelligence & the Future of Business
PDF
[Srijan Wednesday Webinars] How to Design a Chatbot that Works
PDF
[Srijan Wednesday Webinars] Simplifying Migration to Drupal 8
PDF
Final dependency presentation.odp
PPTX
[Srijan Wednesday Webinar] Leveraging the OGD Platform and Visualization Engine
PPTX
[Srijan Wednesday Webinars] Why Adopt Analytics Driven Testing
PDF
[Srijan Wednesday Webinar] Key ingredients of a Powerful Test Automation System
PDF
[Srijan Wednesday Webinar] Building BPMN Web Portals with Camunda and Drupal
PDF
[Srijan Wednesday Webinar] Decoupled Demystified: The Present & Future of Dr...
PDF
[Srijan Wednesday Webinars] Automating Visual Regression using ‘Galen’
PDF
[Srijan Wednesday Webinars] NASA, Netflix, Tinder: Digital Transformation and...
PDF
[Srijan Wednesday Webinars] Building a High Performance QA Team
PDF
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium
[Srijan Wednesday Webinar] How to Run Stateless and Stateful Services on K8S ...
[Srijan Wednesday Webinars] How to Set Up a Node.js Microservices Architectur...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] Using Drupal as Data Pipeline for Digital Signage
[Srijan Wednesday Webinars] New Recipe of Decoupling: Drupal 8, Symfony and S...
[Srijan Wednesday Webinars] Let’s Take the Best Route - Exploring Drupal 8 Ro...
[Srijan Wednesday Webinars] Is Your Business Ready for GDPR
[Srijan Wednesday Webinars] Artificial Intelligence & the Future of Business
[Srijan Wednesday Webinars] How to Design a Chatbot that Works
[Srijan Wednesday Webinars] Simplifying Migration to Drupal 8
Final dependency presentation.odp
[Srijan Wednesday Webinar] Leveraging the OGD Platform and Visualization Engine
[Srijan Wednesday Webinars] Why Adopt Analytics Driven Testing
[Srijan Wednesday Webinar] Key ingredients of a Powerful Test Automation System
[Srijan Wednesday Webinar] Building BPMN Web Portals with Camunda and Drupal
[Srijan Wednesday Webinar] Decoupled Demystified: The Present & Future of Dr...
[Srijan Wednesday Webinars] Automating Visual Regression using ‘Galen’
[Srijan Wednesday Webinars] NASA, Netflix, Tinder: Digital Transformation and...
[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with Appium

Recently uploaded (20)

PDF
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PDF
AI Guide for Business Growth - Arna Softech
PDF
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
PDF
Types of Token_ From Utility to Security.pdf
PPTX
"Secure File Sharing Solutions on AWS".pptx
PPTX
Patient Appointment Booking in Odoo with online payment
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Computer Software - Technology and Livelihood Education
PPTX
CNN LeNet5 Architecture: Neural Networks
PPTX
Introduction to Windows Operating System
PDF
Designing Intelligence for the Shop Floor.pdf
PPTX
Computer Software and OS of computer science of grade 11.pptx
PDF
Salesforce Agentforce AI Implementation.pdf
PDF
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
PPTX
Tech Workshop Escape Room Tech Workshop
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PDF
iTop VPN Crack Latest Version Full Key 2025
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
How Tridens DevSecOps Ensures Compliance, Security, and Agility
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
AI Guide for Business Growth - Arna Softech
How AI/LLM recommend to you ? GDG meetup 16 Aug by Fariman Guliev
Types of Token_ From Utility to Security.pdf
"Secure File Sharing Solutions on AWS".pptx
Patient Appointment Booking in Odoo with online payment
Monitoring Stack: Grafana, Loki & Promtail
Computer Software - Technology and Livelihood Education
CNN LeNet5 Architecture: Neural Networks
Introduction to Windows Operating System
Designing Intelligence for the Shop Floor.pdf
Computer Software and OS of computer science of grade 11.pptx
Salesforce Agentforce AI Implementation.pdf
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
Tech Workshop Escape Room Tech Workshop
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
iTop VPN Crack Latest Version Full Key 2025
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
How Tridens DevSecOps Ensures Compliance, Security, and Agility

[Srijan Wednesday Webinars] The Fundamentals of ReactJS