Bird
0
0

Which design approach best supports easy extensibility for future features like variable board sizes, more players, and custom rules?

hard📝 Trade-off Q15 of 15
LLD - Design — Tic-Tac-Toe Game
You are designing a turn-based game with an NxN board and support for multiple players. Which design approach best supports easy extensibility for future features like variable board sizes, more players, and custom rules?
AWrite all game logic in one large function for simplicity.
BUse fixed-size arrays and hardcoded player count with separate functions for each board size.
CUse flexible data structures (lists/dictionaries), modular functions, and validate inputs dynamically.
DUse global variables for board and players to avoid passing parameters.
Step-by-Step Solution
Solution:
  1. Step 1: Identify extensibility requirements

    Extensibility needs flexible data structures and modular code to adapt easily.
  2. Step 2: Evaluate design options

    Use flexible data structures (lists/dictionaries), modular functions, and validate inputs dynamically. uses lists/dictionaries and modular functions with input validation, supporting future changes well.
  3. Final Answer:

    Use flexible data structures (lists/dictionaries), modular functions, and validate inputs dynamically. -> Option C
  4. Quick Check:

    Modular + flexible data = extensible design [OK]
Quick Trick: Modular code + flexible data = easy extensibility [OK]
Common Mistakes:
MISTAKES
  • Using fixed sizes limits future changes
  • Writing monolithic functions reduces flexibility
  • Using globals causes maintenance issues

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More LLD Quizzes