Bird
Raised Fist0
LLDsystem_design~10 mins

Identifying classes from requirements in LLD - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to identify the main class representing a person in the system.

LLD
class [1]:
    def __init__(self, name, age):
        self.name = name
        self.age = age
Drag options to blanks, or click blank then click option'
AOrder
BCar
CPerson
DProduct
Attempts:
3 left
💡 Hint
Common Mistakes
Choosing unrelated class names like Car or Product.
2fill in blank
medium

Complete the code to add an attribute representing a unique identifier for the class.

LLD
class Order:
    def __init__(self, [1], amount):
        self.order_id = [1]
        self.amount = amount
Drag options to blanks, or click blank then click option'
Aprice
Border_id
Cquantity
Dcustomer
Attempts:
3 left
💡 Hint
Common Mistakes
Using attributes like price or quantity as identifiers.
3fill in blank
hard

Fix the error in the class definition by choosing the correct method name for initialization.

LLD
class Product:
    def [1](self, name, price):
        self.name = name
        self.price = price
Drag options to blanks, or click blank then click option'
A__init__
B__start__
C__create__
D__new__
Attempts:
3 left
💡 Hint
Common Mistakes
Using incorrect method names like __start__ or __create__.
4fill in blank
hard

Fill both blanks to define a class with an attribute and a method to display it.

LLD
class [1]:
    def __init__(self, [2]):
        self.[2] = [2]
    def display(self):
        print(self.[2])
Drag options to blanks, or click blank then click option'
ACustomer
Bemail
CProduct
Dprice
Attempts:
3 left
💡 Hint
Common Mistakes
Mixing class names and attribute names incorrectly.
5fill in blank
hard

Fill all three blanks to create a class with an attribute, a method to update it, and a method to retrieve it.

LLD
class [1]:
    def __init__(self, [2]):
        self.[2] = [2]
    def update_[2](self, new_value):
        self.[2] = new_value
    def get_[2](self):
        return self.[2]
Drag options to blanks, or click blank then click option'
AAccount
Bbalance
Cemail
DCustomer
Attempts:
3 left
💡 Hint
Common Mistakes
Confusing class and attribute names or using unrelated attributes.

Practice

(1/5)
1. Which of the following is most likely a class when designing a library management system?
easy
A. Return
B. Borrow
C. Book
D. Search

Solution

  1. Step 1: Identify nouns in the requirement

    Classes usually come from nouns. Here, 'Book' is a noun representing an object.
  2. Step 2: Differentiate between nouns and verbs

    'Borrow', 'Return', and 'Search' are actions (verbs), so they are methods, not classes.
  3. Final Answer:

    Book -> Option C
  4. Quick Check:

    Class = Noun = Book [OK]
Hint: Pick the noun as class, verbs become methods [OK]
Common Mistakes:
  • Choosing verbs as classes
  • Confusing actions with objects
  • Ignoring nouns in requirements
2. In a ride-sharing app, which of these is the correct way to represent a class in code?
easy
A. class Driver {}
B. function Driver() {}
C. var Driver = 5;
D. let driver = 'John';

Solution

  1. Step 1: Understand class syntax in LLD context

    Classes are defined with the keyword 'class' followed by the class name.
  2. Step 2: Check options for class declaration

    class Driver {} uses 'class Driver {}' which is correct syntax for a class.
  3. Final Answer:

    class Driver {} -> Option A
  4. Quick Check:

    Class syntax uses 'class' keyword [OK]
Hint: Look for 'class' keyword to identify class declaration [OK]
Common Mistakes:
  • Using function instead of class
  • Assigning class name to variable
  • Confusing variables with classes
3. Given the requirement: "A hotel booking system must manage Guests, Rooms, and Bookings." Which of these is the correct set of classes identified?
medium
A. [Booking, Book, GuestList]
B. [Guest, Room, Booking]
C. [Guest, Book, RoomBooking]
D. [Room, Guest, ReservationList]

Solution

  1. Step 1: Extract nouns from the requirement

    The nouns are Guests, Rooms, and Bookings, which represent objects.
  2. Step 2: Match nouns to class names

    Classes should be singular nouns representing entities: Guest, Room, Booking.
  3. Final Answer:

    [Guest, Room, Booking] -> Option B
  4. Quick Check:

    Classes = Nouns = Guest, Room, Booking [OK]
Hint: Pick singular nouns as class names from requirements [OK]
Common Mistakes:
  • Using verbs as classes
  • Using plural or combined names incorrectly
  • Adding unrelated terms
4. You have a requirement: "The system should allow Users to login and logout." Which of the following is an error in identifying classes and methods?
medium
A. Class: User; Methods: login(), logout()
B. Class: UserAccount; Methods: login(), logout()
C. Class: User; Methods: authenticate(), logout()
D. Class: Login; Methods: user(), logout()

Solution

  1. Step 1: Identify nouns and verbs

    'User' is a noun (class), 'login' and 'logout' are actions (methods).
  2. Step 2: Check option correctness

    Class: Login; Methods: user(), logout() incorrectly uses 'Login' as a class and 'user()' as a method, which reverses noun and verb roles.
  3. Final Answer:

    Class: Login; Methods: user(), logout() -> Option D
  4. Quick Check:

    Class = noun, Method = verb [OK]
Hint: Classes are nouns; methods are verbs [OK]
Common Mistakes:
  • Using verbs as classes
  • Naming methods as nouns
  • Mixing class and method roles
5. A food delivery app requirement states: "Customers place Orders, Restaurants prepare Meals, and DeliveryAgents deliver Orders." Which classes should be created to model this system correctly?
hard
A. [Customer, Order, Restaurant, Meal, DeliveryAgent]
B. [Customer, PlaceOrder, Restaurant, Meal, Deliver]
C. [CustomerOrder, RestaurantMeal, Delivery]
D. [Order, Meal, DeliveryAgent, Place]

Solution

  1. Step 1: Identify all nouns in the requirement

    Nouns are Customers, Orders, Restaurants, Meals, DeliveryAgents.
  2. Step 2: Use nouns as class names and verbs as methods

    Classes should be Customer, Order, Restaurant, Meal, DeliveryAgent. Actions like 'place' and 'deliver' become methods.
  3. Final Answer:

    [Customer, Order, Restaurant, Meal, DeliveryAgent] -> Option A
  4. Quick Check:

    Classes = Nouns only, verbs become methods [OK]
Hint: Classes = nouns; actions = methods in those classes [OK]
Common Mistakes:
  • Using verbs as classes
  • Combining nouns incorrectly
  • Omitting important entities
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard