Skip to content

Homework 5: Optimization

Due: Friday, December 6, 2024 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.

  • Prevent UI blocking with Web Workers
  • Memoize expensive calculation results with useMemo
  • 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
Web Workers25
useMemo25
useCallback25
List Virtualization25

You can earn extra credit by implementing meaningful test cases and submitting them to the TA before Wednesday, December 4, 2024 at 2:00:00 PM.

This homework is due on Friday, December 6, 2024 at 2:00:00 PM.