We may earn an affiliate commission when you visit our partners.
Course image
Udacity logo

React and Redux

Tyler McGinnis, Alyssa Hope, Michael Tsamis, Andrew Wong, and Richard Kalehoff

Master the skills you need to build web applications with React and Redux. Learn from Udacity’s online training course and become an expert in React & Redux.

Prerequisite details

Read more

Master the skills you need to build web applications with React and Redux. Learn from Udacity’s online training course and become an expert in React & Redux.

Prerequisite details

To optimize your success in this program, we've created a list of prerequisites and recommendations to help you prepare for the curriculum. Prior to enrolling, you should have the following knowledge:

  • Asynchronous JavaScript
  • Intermediate JavaScript
  • Jsx
  • Basic react
  • Basic web development

You will also need to be able to communicate fluently and professionally in written and spoken English.

What's inside

Syllabus

We will look at the course design, prerequisites, tools you'll use in the course, and take a preview look at the final project.
You’ll learn techniques to make your state more predictable by moving your state to a central location and establishing strict rules for getting, listening, and updating that state.
Read more
You’ll learn to move away from having state live in the DOM by creating a vanilla JavaScript application whose state is managed entirely by Redux.
You’ll learn to create custom middleware and add it to your Redux store. This middleware will allow you to enhance your store by hooking into and intercepting actions before they reach any reducers.
You’ll learn how to add React to a Redux application and have the state of that application be managed by Redux.
You’ll learn to better abstract asynchronous events by creating your own custom Thunk middleware and adding it to your store.
You’ll learn to leverage the react-redux bindings in order to leverage the benefits of a UI library like React and a state management library like Redux.
You’ll take your knowledge of Redux and utilize it by building a real-world Redux application. You’ll also learn advanced Redux topics like reducer composition and normalization.
We will learn how to install and run JEST using synch and async functions, use snapshots, and perform DOM tests with React Testing Library.
HR needs a web app to create polls for employees to post and respond to scenario questions. Employees vote on responses and the dashboard lists employees by the number of polls created and answered.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Covers a range of techniques for enhancing Redux state management, including creating custom middleware and Thunk middleware
Provides real-world experience by building a Redux application and exploring advanced Redux topics like reducer composition and normalization
Emphasizes building a strong foundation in React and Redux by teaching core concepts and best practices
Taught by experienced instructors with a strong reputation in the industry, ensuring high-quality instruction
Provides hands-on experience through coding exercises and projects, allowing learners to apply their knowledge practically

Save this course

Save React and Redux to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for React and Redux. These are activities you can do either before, during, or after a course.

Career center

Learners who complete React and Redux will develop knowledge and skills that may be useful to these careers:
React Developer
React Developers build user interfaces for websites and applications using the React framework. This course is a great choice for someone who wants to become a React Developer. It will provide you with a strong foundation in React and Redux, two essential libraries for building modern web applications. The course covers the fundamentals of React and Redux, as well as more advanced topics such as Redux middleware and React Testing Library. Upon completing this course, you will be well-equipped to build complex and scalable React applications.
Redux Developer
Redux Developers manage the state of web applications using the Redux state management library. This course is a great choice for someone who wants to become a Redux Developer. It will provide you with a strong foundation in Redux, as well as more advanced topics such as Redux middleware and React Testing Library. The course covers the fundamentals of Redux, as well as more advanced topics such as Redux middleware and React Testing Library. Upon completing this course, you will be well-equipped to build complex and scalable Redux applications.
Web Developer
Web Developers build websites and applications. This course is a great choice for someone who wants to become a Web Developer. It will provide you with a strong foundation in React and Redux, two essential libraries for building modern web applications. The course covers the fundamentals of React and Redux, as well as more advanced topics such as Redux middleware and React Testing Library. Upon completing this course, you will be well-equipped to build complex and scalable web applications.
Front-End Developer
Front-End Developers build the client-side parts of websites with HTML, CSS, and JavaScript. This course may be useful for gaining a deeper understanding of the JavaScript ecosystem, which includes React and Redux. Redux can be particularly helpful when developing large and complex applications where it helps manage state and data updates efficiently. Although this course is primarily focused on building web applications, the fundamentals you will learn can be applied to building other types of front-end applications, such as mobile or desktop applications.
Full-Stack Developer
Full-Stack Developers build both the client-side and server-side parts of websites and applications. This course may be useful for gaining a deeper understanding of the web development ecosystem as a whole, including both front-end and back-end development. While this course primarily focuses on building front-end applications, some of the concepts and techniques covered may also be relevant to back-end development. This course, however, may not be sufficient to land a Full-stack developer role, and you may need to supplement this learning with additional courses or training.
Back-End Developer
Back-End Developers build the server-side parts of websites and applications. This course is less relevant, but it may be useful for gaining a broader understanding of the web development ecosystem as a whole. While this course primarily focuses on building front-end applications, some of the concepts and techniques covered may also be relevant to back-end development. However, there are other courses that would be a better choice for someone interested in becoming a Back-End Developer.
UX Designer
UX Designers design the user experience of websites and applications. This course is less relevant, but it may be useful for gaining a better understanding of the UX design process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to UX design. However, there are other courses that would be a better choice for someone interested in becoming a UX Designer.
Quality Assurance Analyst
Quality Assurance Analysts test software to ensure that it meets quality standards. This course is less relevant, but it may be useful for gaining a better understanding of the quality assurance process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to quality assurance. However, there are other courses that would be a better choice for someone interested in becoming a Quality Assurance Analyst.
UI Designer
UI Designers design the user interface of websites and applications. This course is less relevant, but it may be useful for gaining a better understanding of the UI design process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to UI design. However, there are other courses that would be a better choice for someone interested in becoming a UI Designer.
Technical Writer
Technical Writers write documentation for software and other technical products. This course is less relevant, but it may be useful for gaining a better understanding of the technical writing process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to technical writing. However, there are other courses that would be a better choice for someone interested in becoming a Technical Writer.
Data Scientist
Data Scientists use data to solve business problems. This course is less relevant, but it may be useful for gaining a better understanding of data management and analysis. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to data science. However, there are other courses that would be a better choice for someone interested in becoming a Data Scientist.
Business Analyst
Business Analysts analyze business needs and develop solutions. This course is less relevant, but it may be useful for gaining a better understanding of the business analysis process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to business analysis. However, there are other courses that would be a better choice for someone interested in becoming a Business Analyst.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course is less relevant, but it may be useful for gaining a broader understanding of the software development process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to software engineering in general. However, there are other courses that would be a better choice for someone interested in becoming a Software Engineer.
Product Manager
Product Managers manage the development and launch of products. This course is less relevant, but it may be useful for gaining a better understanding of the product development process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to product management. However, there are other courses that would be a better choice for someone interested in becoming a Product Manager.
Project Manager
Project Managers plan and execute projects. This course is less relevant, but it may be useful for gaining a better understanding of the project management process. While this course primarily focuses on building web applications, some of the concepts and techniques covered may also be relevant to project management. However, there are other courses that would be a better choice for someone interested in becoming a Project Manager.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in React and Redux.
Provides a comprehensive overview of React, covering topics such as component lifecycle, state management, and routing. It's a valuable resource for understanding the fundamental concepts of React.
Comprehensive guide to JavaScript, covering topics such as asynchronous programming, event handling, and object-oriented programming. It's a valuable reference for understanding the JavaScript fundamentals that are essential for React and Redux.
Provides a comprehensive overview of React and React Native, covering topics such as component lifecycle, state management, and testing. It's a valuable resource for understanding how to build user interfaces for both web and mobile applications.
Provides an in-depth exploration of functional programming concepts in JavaScript. It covers topics such as immutability, higher-order functions, and currying, which are important for understanding Redux's functional approach.
Provides a comprehensive overview of React, covering topics such as component lifecycle, state management, and testing. It's a valuable resource for understanding the fundamental concepts of React and how to apply them in real-world projects.
Provides a collection of React design patterns and best practices, covering topics such as component design, state management, and testing. It's a valuable resource for understanding how to build maintainable and scalable React applications.
Provides a collection of common JavaScript design patterns, covering topics such as inheritance, composition, and functional programming. It's a useful reference for understanding how to structure and organize JavaScript code.
Practical guide to learning React, covering topics such as component lifecycle, state management, and testing. It's a helpful resource for beginners who want to get started with React.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser