O'Reilly logo
live online training icon Live Online training

React beyond the basics - Master React's advanced concepts

Samer Buna

Join expert Samer Buna to move beyond the basics of React. You'll explore the APIs and tools in the React ecosystem and learn how to build interactive React applications from scratch. You'll leave with the foundation you need to become a productive React developer.

What you'll learn-and how you can apply it

  • The repeatable steps to building React applications
  • How to measure and optimize working with data and components
  • State management options

And you’ll be able to:

  • Read and understand code written for React
  • Build data-driven React applications from scratch

This training course is for you because...

  • You're a programmer who knows the basics of React, and you want to take your skills to the next level.
  • You are a frontend developer or designer who wants to start working with React.


  • A working knowledge of modern JavaScript (functions, scopes, classes, and asynchronous calls, etc.)
  • A basic understanding of React

Materials or downloads needed in advance:

  • A machine with a modern browser and Node 8.9.4 or later installed (Please run "node --version" and make sure you see 8.1.4 (or higher).)

Recommended preparation:

About your instructor

  • Samer Buna has over 20 years of experience in software development, during which he has worked on web and mobile applications development, API design, functional programming, optimization, system administration, database management, and scalability. Samer is the author of several technical books and online courses on topics such as Node.js, React, and GraphQL. You can follow his latest work over at jsComplete.com and EdgeCoders.com.


The timeframes are only estimates and may vary according to how the class is progressing

Designing a React application: Components and interactions (50 minutes)

  • Lecture and exercises: Markup; components design; state flow and management; events; testing components (snapshot and unit testing, shallow rendering); styling React components

Break (10 minutes)

Optimizing and improving a React application (50 minutes) - Lecture and exercises: ESLint and Prettier; proptypes; lifecycle methods (component story); user interactions; pure renders; unnecessary updates; separate state; working with objects; working with the DOM API; using fragments

Break (10 minutes)

State management options and immutability (50 minutes) - Lecture and exercises: Higher-order components and immutable data concepts; working with components’ data requirements

Quiz, wrap-up, and Q&A (10 minutes)