SlideShare a Scribd company logo
REACT
INTRODUCTION TO
INTRO TO REACT
ABOUT AMBROSE
▸ Glad dad of 6 munchkins.
▸ Making pro software for ~18 years
Computer geek since 1987
▸ Shipped over 45 projects, led over
20. 2 Patents. Sometime dev, arch,
UX guy, manager, PM, etc.
▸ 8x Microsoft MVP; Books, Blogs…
▸ Voted Most Likely to Wear a Kilt to
Work
INTRO TO REACT
THE PLAN
▸ Why React?

The Strange History of Computing that Led Up to this Little Thing We Call React (j/k)
▸ Key Concepts

Or what I think is important, anyways.
▸ With the Showing of Some Examples

May or may not be in chronological order.
▸ Now for a Limited Time: Things I Wish I’d Known!
INTRO TO REACT
ABOUT YOU?
▸ You have some programming
experience, probably a Web
developer of some sort.
▸ You are conversant with JavaScript,
ideally ES2015+.
▸ You don’t barf at the site of JSX.
▸ You are not a React expert.
INTRO TO REACT
WHY REACT?
▸ Declarative (State-Driven/Functional)
▸ Component-based (Composable)
▸ Flexible Rendering
▸ Client Web
▸ Server (Web)
▸ Native Client (React Native)
▸ High Performing
▸ Minimally Invasive
YUUUGE
COMMUNITY!
INTRO TO REACT
PREFACE: GETTING REACT
▸https://reactjs.org/ - The Homepage
▸For my examples, using: 

https://github.com/facebookincubator/create-react-app
▸create-react-app <name> and done
▸Sir Not Appearing in this Film:

https://reacttraining.com/react-router/
THINGS ALWAYS SEEM SIMPLE AT
FIRST
KEY CONCEPT #1
JSX

THAT HORRIFIC BLEND OF JS AND X
KEY CONCEPT #2
INTRO TO REACT
IT’S JUST MARKUP
INTRO TO REACT
IT’S NOT JUST MARKUP
INTRO TO REACT
SOME COMMON DYNAMIC UI SCENARIOS
▸ Conditional Rendering
▸ The && Approach
▸ The ? : Approach
▸ The Strategy Pattern Approach
▸ Repeating
INTRO TO REACT
JUST SAY NO TO SPAGHETTI CODE
▸ Minimize in-JSX JS. Move that to functions and use
Strategy Pattern.
▸ Be zealous about composition. But not artificially. Look for
the natural boundaries, similar to OOD.
REACT IS FUNCTIONAL (SORTA)
KEY CONCEPT #3
INTRO TO REACT
YOU GOTTA CHANGE YOUR THINKING A BIT
▸ You don’t write code that directly manipulates the DOM
(usually—see ‘ref’).
▸ You can’t write code that directly manipulates React
elements.
▸ You modify state that signals what you want to React.
▸ You compose elements to achieve outcomes.
▸ Somewhat similar to MVVM (particularly the VVM)
INTRO TO REACT
GET FRIENDLY WITH
ARRAY.MAP AND
ARRAY.FILTER
INTRO TO REACT
COMPONENT COMMUNICATION
PROPS DOWN
EVENTS UP
LIFTING
STATE…
I NEED THAT!
ME, TOO!
Introduction to React
lift state up
pass props down props
props
SPEAKING OF STATE..
WHAT ABOUT LETTING USERS
EDIT IT?
Some Experienced Developer
INTRO TO REACT
CONTROLLED COMPONENTS
KEY CONCEPT #4
INTRO TO REACT
UNCONTROLLED…
TESTING REACT
KEY CONCEPT #5
INTRO TO REACT
THAT’S IT! YOU’VE SEEN…
▸ Key Concepts & How to
Do Some Things
▸ Get React into a Page
▸ Make & Compose
Components to Layout
Your View
▸ Classic vs. Functional
Components
▸ How to Do Looping
(Repeaters)
▸ Conditional Rendering
▸ How to Handle
Interactions
▸ How to Handle User Input
▸ What Else is There?! :D
REPETITIO MATER STUDIORUM
EST.
Ancient Dude
INTRO TO REACT
REPETITION IS THE MOTHER OF
ALL LEARNING.
Dude What Speaks Modern English
INTRO TO REACT
GO FORTH AND
ENJOY!

More Related Content

PDF
Introduction to React with MobX
PDF
How to manage your web agency as a client
PDF
MailXpert API bundle
PPTX
Building large scale web applications with type script
ZIP
Accessible Javascript using Frameworks - Barcamp London 5
DOCX
How to make your first program in q basic
PPTX
Kristof van roy-behind_the_scenes
PDF
Convert Drupal - Umami to Joomla - Jummai
Introduction to React with MobX
How to manage your web agency as a client
MailXpert API bundle
Building large scale web applications with type script
Accessible Javascript using Frameworks - Barcamp London 5
How to make your first program in q basic
Kristof van roy-behind_the_scenes
Convert Drupal - Umami to Joomla - Jummai

What's hot (11)

PDF
Microcopy | An Easy to Use Guide
PPTX
October 2014 UG Session Promo Slide Deck
PDF
Programming for-non-programmers
PDF
Overcoming Command Line Allergies
PPT
Flashmeeting / Chris Barker
PDF
Have we forgotten how to program? - Tunisian WebDev MeetUp
PDF
[PDF] How to Become a Scrum Master in 7 Simple Steps Agile Project Management
PDF
YAGBUX project - Yet Another Gesture Based User Experience
PDF
08 10 12 Meebo Ajaxworld Preso
PDF
WebAssembly
Microcopy | An Easy to Use Guide
October 2014 UG Session Promo Slide Deck
Programming for-non-programmers
Overcoming Command Line Allergies
Flashmeeting / Chris Barker
Have we forgotten how to program? - Tunisian WebDev MeetUp
[PDF] How to Become a Scrum Master in 7 Simple Steps Agile Project Management
YAGBUX project - Yet Another Gesture Based User Experience
08 10 12 Meebo Ajaxworld Preso
WebAssembly
Ad

Similar to Introduction to React (20)

PPTX
This Is the ppt of How the react js work in the dealy life
PDF
React In Action 1st Edition Mark Tielens Thomas
PDF
React in Action 1st Edition Mark Tielens Thomas
PDF
React in Action 1st Edition Mark Tielens Thomas
PPTX
Why React's Awesome!
PDF
React Fundamentals - Jakarta JS, Apr 2016
PDF
Mastering-Reactjs-Your-Path-to-Web-Development.pdf
PPTX
react-slidlkjfl;kj;dlkjopidfjhopijgpoerjpofjiwoepifjopweifjepoies.pptx
PDF
react-slides.pdf
PDF
react-slides.pdf gives information about react library
PDF
COSTRUIRE INTERFACCE WEB UTILIZZANDO REACTJS (Gabriele Petronella)
PPTX
PDF
Learning React js Learn React JS From Scratch with Hands On Projects 2nd Edit...
PDF
React in Action ( PDFDrive ).pdf
PPTX
reactJS
PPTX
react-slides.pptx
PPTX
react js training|react js training in mumbai|React js classes in mumbai
PPTX
theory-slides-for react for beginners.pptx
PDF
Intro to react_v2
PDF
Introduction to ReactJS
This Is the ppt of How the react js work in the dealy life
React In Action 1st Edition Mark Tielens Thomas
React in Action 1st Edition Mark Tielens Thomas
React in Action 1st Edition Mark Tielens Thomas
Why React's Awesome!
React Fundamentals - Jakarta JS, Apr 2016
Mastering-Reactjs-Your-Path-to-Web-Development.pdf
react-slidlkjfl;kj;dlkjopidfjhopijgpoerjpofjiwoepifjopweifjepoies.pptx
react-slides.pdf
react-slides.pdf gives information about react library
COSTRUIRE INTERFACCE WEB UTILIZZANDO REACTJS (Gabriele Petronella)
Learning React js Learn React JS From Scratch with Hands On Projects 2nd Edit...
React in Action ( PDFDrive ).pdf
reactJS
react-slides.pptx
react js training|react js training in mumbai|React js classes in mumbai
theory-slides-for react for beginners.pptx
Intro to react_v2
Introduction to ReactJS
Ad

Recently uploaded (20)

PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
A Presentation on Artificial Intelligence
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Approach and Philosophy of On baking technology
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Empathic Computing: Creating Shared Understanding
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
Big Data Technologies - Introduction.pptx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
Network Security Unit 5.pdf for BCA BBA.
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Review of recent advances in non-invasive hemoglobin estimation
A Presentation on Artificial Intelligence
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Approach and Philosophy of On baking technology
MIND Revenue Release Quarter 2 2025 Press Release
Empathic Computing: Creating Shared Understanding
Building Integrated photovoltaic BIPV_UPV.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Big Data Technologies - Introduction.pptx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Per capita expenditure prediction using model stacking based on satellite ima...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
A comparative analysis of optical character recognition models for extracting...
Programs and apps: productivity, graphics, security and other tools
NewMind AI Weekly Chronicles - August'25-Week II
Advanced methodologies resolving dimensionality complications for autism neur...

Introduction to React

  • 2. INTRO TO REACT ABOUT AMBROSE ▸ Glad dad of 6 munchkins. ▸ Making pro software for ~18 years Computer geek since 1987 ▸ Shipped over 45 projects, led over 20. 2 Patents. Sometime dev, arch, UX guy, manager, PM, etc. ▸ 8x Microsoft MVP; Books, Blogs… ▸ Voted Most Likely to Wear a Kilt to Work
  • 3. INTRO TO REACT THE PLAN ▸ Why React?
 The Strange History of Computing that Led Up to this Little Thing We Call React (j/k) ▸ Key Concepts
 Or what I think is important, anyways. ▸ With the Showing of Some Examples
 May or may not be in chronological order. ▸ Now for a Limited Time: Things I Wish I’d Known!
  • 4. INTRO TO REACT ABOUT YOU? ▸ You have some programming experience, probably a Web developer of some sort. ▸ You are conversant with JavaScript, ideally ES2015+. ▸ You don’t barf at the site of JSX. ▸ You are not a React expert.
  • 5. INTRO TO REACT WHY REACT? ▸ Declarative (State-Driven/Functional) ▸ Component-based (Composable) ▸ Flexible Rendering ▸ Client Web ▸ Server (Web) ▸ Native Client (React Native) ▸ High Performing ▸ Minimally Invasive YUUUGE COMMUNITY!
  • 6. INTRO TO REACT PREFACE: GETTING REACT ▸https://reactjs.org/ - The Homepage ▸For my examples, using: 
 https://github.com/facebookincubator/create-react-app ▸create-react-app <name> and done ▸Sir Not Appearing in this Film:
 https://reacttraining.com/react-router/
  • 7. THINGS ALWAYS SEEM SIMPLE AT FIRST KEY CONCEPT #1
  • 8. JSX
 THAT HORRIFIC BLEND OF JS AND X KEY CONCEPT #2
  • 9. INTRO TO REACT IT’S JUST MARKUP
  • 10. INTRO TO REACT IT’S NOT JUST MARKUP
  • 11. INTRO TO REACT SOME COMMON DYNAMIC UI SCENARIOS ▸ Conditional Rendering ▸ The && Approach ▸ The ? : Approach ▸ The Strategy Pattern Approach ▸ Repeating
  • 12. INTRO TO REACT JUST SAY NO TO SPAGHETTI CODE ▸ Minimize in-JSX JS. Move that to functions and use Strategy Pattern. ▸ Be zealous about composition. But not artificially. Look for the natural boundaries, similar to OOD.
  • 13. REACT IS FUNCTIONAL (SORTA) KEY CONCEPT #3
  • 14. INTRO TO REACT YOU GOTTA CHANGE YOUR THINKING A BIT ▸ You don’t write code that directly manipulates the DOM (usually—see ‘ref’). ▸ You can’t write code that directly manipulates React elements. ▸ You modify state that signals what you want to React. ▸ You compose elements to achieve outcomes. ▸ Somewhat similar to MVVM (particularly the VVM)
  • 15. INTRO TO REACT GET FRIENDLY WITH ARRAY.MAP AND ARRAY.FILTER
  • 16. INTRO TO REACT COMPONENT COMMUNICATION PROPS DOWN EVENTS UP
  • 21. pass props down props props
  • 22. SPEAKING OF STATE.. WHAT ABOUT LETTING USERS EDIT IT? Some Experienced Developer INTRO TO REACT
  • 26. INTRO TO REACT THAT’S IT! YOU’VE SEEN… ▸ Key Concepts & How to Do Some Things ▸ Get React into a Page ▸ Make & Compose Components to Layout Your View ▸ Classic vs. Functional Components ▸ How to Do Looping (Repeaters) ▸ Conditional Rendering ▸ How to Handle Interactions ▸ How to Handle User Input ▸ What Else is There?! :D
  • 28. REPETITION IS THE MOTHER OF ALL LEARNING. Dude What Speaks Modern English INTRO TO REACT