Low Level Design Examples in Python
Library Management System
Class: Book
- __init__
- is_available
- mark_issued
- mark_returned
Class: Member
- __init__
- borrow_book
- return_book
Class: Librarian
- __init__
- add_book
- remove_book
- search_book
Class: Library
- __init__
- add_member
- add_book
- issue_book
- return_book
Class: Transaction
- __init__
- get_transaction_details
Cab Booking System
Class: Rider
- __init__
- book_ride
Class: Driver
- __init__
- update_location
- accept_ride
Class: Cab
- __init__
- assign_driver
- update_status
Class: Location
- __init__
- distance_to
Class: Ride
- __init__
- start_ride
- end_ride
Movie Ticket Booking System
Class: Movie
- __init__
- get_details
Class: Screen
- __init__
- add_show
Class: Show
- __init__
- get_available_seats
Class: Seat
- __init__
- lock
- unlock
Class: Booking
- __init__
- confirm
- cancel
Class: User
- __init__
- book_ticket
Elevator System
Class: Elevator
- __init__
- move_to_floor
- open_door
- close_door
Class: Request
- __init__
- get_direction
Class: Panel
- __init__
- press_button
Class: Floor
- __init__
- add_request
E-commerce Cart System
Class: Product
- __init__
- get_price
Class: CartItem
- __init__
- get_total_price
Class: Cart
- __init__
- add_item
- remove_item
- checkout
Class: User
- __init__
- create_cart
Class: Order
- __init__
- place_order
ATM Machine Design
Class: ATM
- __init__
- authenticate_card
- perform_transaction
Class: BankAccount
- __init__
- withdraw
- deposit
Class: Card
- __init__
- validate_pin
Class: Transaction
- __init__
- execute
Chat Application
Class: User
- __init__
- send_message
- receive_message
Class: Message
- __init__
- get_status
Class: Group
- __init__
- add_user
- remove_user
Class: ChatRoom
- __init__
- broadcast_message
Order Management System
Class: Customer
- __init__
- place_order
Class: Order
- __init__
- update_status
Class: Restaurant
- __init__
- prepare_order
Class: Item
- __init__
- get_price
Class: DeliveryPartner
- __init__
- accept_delivery
Tic Tac Toe Game
Class: Player
- __init__
- make_move
Class: Game
- __init__
- start
- check_winner
Class: Board
- __init__
- display_board
- update_board
Class: Cell
- __init__
- is_empty
LRU Cache Implementation
Class: LRUCache
- __init__
- get
- put
Class: Node
- __init__
Logging System
Class: Logger
- __init__
- log
- set_output
Class: Output
- __init__
- write
Class: LogLevel
- INFO
- DEBUG
- ERROR