React, Redux and TypeScript Training Course

Development of modern front-end applications

  • overview and similarities of React, Angular, Vue.js
  • declarative rendering
  • components – defining custom HTML tags
  • using create-react-app to initialize a React project

Modern JavaScript

  • developing using node.js and npm
  • JavaScript versions
  • working with modules
  • functions and arrow functions
  • classes
  • functional programming in JavaScript (map, filter, …)

TypeScript

  • static vs dynamic typing
  • declaring types of variables, functions and classes
  • basic data types
  • tuples, objects
  • interfaces
  • generics

React template language

  • JavaScript-based template language: JSX
  • setting element properties
  • repeating elements
  • if / else
  • events
  • CSS classes and styles

Managing state in React

  • setting and changing the application state
  • using the state hook and setState
  • capturing the content of input elements in the state

Components: Building blocks of modern web applications

  • defining custom HTML tags in React
  • state, props & events
  • data flow between components
  • function components and class components
  • using hooks in function components
  • component lifecycle events (mount, update, unmount)
  • including predefined components from a library

State management with Redux

  • Redux basics: state mangment with pure functions, reducers and immutable data
  • using the reducer hook in React
  • integrating Redux into a React application
  • presentational and container components
  • the Redux ecosystem
  • handling asynchronous events with Thunk
  • fetching data from a REST API

Developer tools and testing

  • React developer tools
  • Redux developer tools
  • Testing JavaScript with Jest
  • Testing reducers
  • Testing React components

React Router

  • client-side routing
  • displaying different views based on the current browser route

App development with React

  • short overview of React Native
  • creating an installable mobile and desktop application with Progressive Web Apps
  • comparison of Progressive Web Apps and native apps