Skip to content

Homework 5: Optimization

Release: Friday, November 21, 2025 at 6:00:00 PM

Due: Wednesday, December 3, 2025 at 2:00:00 PM

Create a new private repository under your own GitHub account from this template.

Open the terminal window and type in npm install. This will install all the dependencies listed in the package.json file.

The homework provided is focused on optimizing React applications using various performance-enhancing techniques. You will work through four problems, each located in the /src/components folder.

  • Memoize expensive calculation results with useMemo
  • Prevent UI blocking with Web Workers
  • Optimize event handlers with useCallback and memo
  • Virtualize long lists with react-window

To run the application, type npm run dev in the terminal. This will start the development server and open the application in your default web browser.

Your submission should properly implement optimization techniques according to the instructions for each of the problems.

To test your implementation, run npm run test.

ProblemPoints
useMemo25
Web Workers25
useCallback25
List Virtualization25

This homework is due on Wednesday, December 3, 2025 at 2:00:00 PM.