Introduction

Welcome to today's lesson! We'll be exploring a practical application of TypeScript's type safety features by managing student enrollments for various courses. Imagine you're running an online course platform and need to handle enrollments, checks, and listings of students in different courses. With TypeScript's robust type checking and the use of Set collections, you can efficiently manage these tasks, prevent duplicate enrollments, and ensure data integrity.

By the end of this session, you'll be well-versed in using Set objects for such tasks. Let's dive in!

Introducing Methods to Implement

Here are the methods we need to implement in our enrollment system:

  • enroll(student, course): This method adds a student to a course. If the student is already enrolled, it does nothing.
  • unenroll(student, course): This method removes a student from a course. It returns true if the student was enrolled and has now been removed. Otherwise, it returns false. If, after unenrolling the student, the course becomes empty (no one is enrolled there), remove the course as well.
  • isEnrolled(student, course): This method checks if a student is enrolled in a course. It returns true if the student is enrolled and otherwise.
Sign up
Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal