React, Redux & Router with hooks



Kursarrangør: Glasspaper AS
Sted: Oslo, Helsfyr
Oslo
Kursadresse: Brynsveien 12, 0667 Oslo (kart)
Type:Åpent kurs / gruppeundervisning
Undervisningstid: kl 09:00 - 16:00
Varighet: 5 dager
Pris: 25.900

Do you want to write interactive applications in HTML and JavaScript? Or are you already writing Single Page Applications, but is the HTML filled with unmaintainable semi code? Is data binding debugging and performance causing you headaches?

Don't you remember how data finds its way to the user interface?

Lets React:
Facebook created a functional approach to tackle traditional complexities in JavaScript: React (open source). Maligned in 2013, embraced since 2015 by the dominant websites in the world. Lets build fast components in a lasting and meaningful way.

In this course you will learn all about React, hooks and its ecosystem. Redux and React Router are covered extensively. EcmaScript 202X (or TypeScript), npm, Babel and Webpack will be used throughout the course.

Students, depending on their own project requirements, can choose to do exercises with a focus on function or class components and a focus on JavaScript or TypeScript. Solutions for all situations are provided.

New React functionality will be added to the course as soon as they are published.

Afterwards you are able to add React parts immediately to both existing and new websites.

Course content:

Introduction:
• What is React
• Why React

Module 1: Language constructs for React & Redux:
• EcmaScript 2015 and later (JavaScript)
• JSX
• Babel transpiler

Module 2: Basic:
• Render
• Fragments
• Properties & State
• Databinding
• Events

Module 3: Building Apps:
• Functional vs Class components, single responsibility
• Multiple components
• Reusable components (prop-types / typescript)

Module 4: Component Life:
• Component lifecycle
• Fetch server data

Module 5: Developer experience:
• Debugging
• Developer tools
• Unit testing
• Updating to new React versions

Module 6: Good to know:
• Error Boundaries
• Forms
• DOM interactions
• Portals
• Wrapping existing components
• Optimizations (using shouldComponentUpdate)

Module 7: Setting up a project:
• Webpack
• ESLint
• Hot Module Replacement
• Create-react-app
• Zeit Next

Module 8: Redux Basics:
• Redux Basics
• Redux Dev Tools

Module 9: React patterns (partly used by Redux):
• Pattern: Higher Order Components
• Pattern: Render Props
• Context (Pattern: Implicit state)

Module 10: Advanced Redux:
• Presentational vs Container Components
• React-Redux
• Async actions
• Redux Middleware
• Redux Undo

Module 11: React Router:
• Static routing
• No match (like a 404)
• Dynamic routing
• Redirection
• Prompt

Module 12: Isomorphic Applications:
• Server side rendering (universal / isomorphic applications), ReactJS.NET, Search Engine Optimization (SEO)

Module 13: Styling:
• Animations
• CSS, Inline styles

Module 14: Future:
• Suspense
• Time Slicing

Audience:
This course is intended for professional developers who are familiar with HTML and JavaScript programming

Language:
• English course material, English speaking instructor

Instructor: Rick Beerendonk

Rick is a senior consultant and trainer from The Netherlands. He has over 20 years of professional experience while working in small, large and fast growing organisations. His passion is simplicity, well-written code and team dynamics. He is specialised in front-end technologies and speaks regularly about these topics at international events. Rick have teached and talked about React since 2014.