React is incredibly capable and easy to use once you get past the initial learning curve, but there is so much more to it that most developers never take advantage of the more advanced features. Most often they don't know what the advanced features are, much less how to apply them properly, consistently, and to each's greatest utility. Geared for experienced React developers, Advanced React is a two-day, hands-on course designed to provide you with the skills required to take full advantage of the hidden capabilities and efficiencies that React has to offer.
Our engaging instructors and mentors are highly experienced practitioners who bring years of current "on-the-job" experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn about and explore:
Our engaging instructors and mentors are highly experienced practitioners who bring years of current "on-the-job" experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn about and explore:
This is an intermediate-level course for web developers with prior practical experience working with React. Attendees are required to have a very strong grasp of React, Redux and advanced JavaScript.
Take Before: Attendees should have experience with the topics in the following courses, or should have recently attended these as a pre-requisite:
Please see the Related Courses tab for Pre-Requisite course specifics and links, links to similar courses you might review as an alternative, as well as suggested Next-Step Follow-On Courses and Learning Path recommendations.
Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We’ll work with you to tune this course and level of coverage to target the skills you need most.
Getting Started
Understand the virtual DOM
Why the vDOM?
Reconciliation
How it compares
How to optimize your code
The Ivy engine
How hooks fit in
Why one-way data flow
Transpiling, bundling, minifying with webpack
TypeScript in React
JavaScript vs Java (et al.)
What TypeScript really does
TS does not provide strong typing
Interfaces vs types
Embracing functional vs OOP
Generics in React
Discriminated unions
CSS Properties
Event object
3rd party libraries with no TS support
Proptypes
Built-in prop type checking
Making props optional
Setting prop types
Speeding up React with lazy loading
The best strategy
The lazy method
The Suspense component
Fallbacks
Code splitting
Error boundaries
Hooks overview
All built-in hooks
When to use the obscure ones
useContext for code clarity
Why prop drilling is evil
Create context
Reading context
Updating context
Deep dive into useEffect
How useEffect works
Simulating lifecycle events
Exhausting dependencies
useEffect belongs with its own render
Speeding your app with useMemo and useCallback
What is the difference?
Optimizing components with useCallback
Optimizing with useMemo
Why not just useMemo everything?
Fixing complex state - useReducer
What is useReducer?
Woot! No need for Redux, right?
How to optimize useReducer
When not to useReducer
How to write a custom hook
First - why?
The rules
How to write the code
How to best use a custom hook
Advanced event handling
React's synthetic events
How to handle events that React refuses to
Low-level power of events
The need to de-register events
Let's create an infinite scroll component
Routing
Overview of the newest React Router
Creating baseline routes
Route parameters & query strings
What's the difference?
REST and parameters
Creating route parameters
Reading route parameters
Reading query strings
Efficient hyperlinks
Why not use <a>?
How to do it the modern way
Relative vs absolute paths
Subroutes
Routes within routes
How to create relative routes
How this simplifies your complex navigation
Student Materials: Each participant will receive a Student Guide with course notes, code samples, software tutorials, step-by-step written lab instructions, diagrams and related reference materials and resource links. Students will also receive the project files (or code, if applicable) and solutions required for the hands-on work. Any courseware of lab materials provided in a cloud (if applicable) will also be made available to you separately.
Hands-On Setup Made Simple! Our dedicated tech team will work with you to ensure our ‘easy-access’ cloud-based course environment, or local installation, is accessible, fully-tested and verified as ready to go well in advance of the course start date, ensuring a smooth start to class and effective learning experience for all participants. We can also help you install this course locally if preferred. Please inquire for details and options.
Every-Course Extras = High-Value & Long-Term Learning Support! All Public Schedule courses include our unique EveryCourse Extras package (Post-Course Resource Site access with Review Labs & Live Instructor Follow-on Support, access to QuickSkills recorded High-Value lessons, Free *Live* Course Refresh Re-Takes, early access to Special Offers, Free Courses & more). Please inquire for details.
Live scheduled classes are listed below or browse our full course catalog anytime
Check out custom training solutions planned around your unique needs and skills.
Exclusive materials, ongoing support and a free live course refresh with every class.
Mix, Match & Master!
2FOR1: Two Courses, One Price!
Enroll in *any* two public courses (for 2023 *OR* 2024 dates!) by December 31, for one price! Learn something new, or share the promo!
Special Offers
Limited Offer for most courses.
SAVE 50%