Python: What deeper point about Abstract Base Classes vs Protocols should a senior Python developer mention?

Difficulty:

Hard

Questions:

1

Time Limit:

2 minutes

Passing Score:

100%

Question

What deeper point about Abstract Base Classes vs Protocols should a senior Python developer mention?

  1. At senior level, the right answer is that Abstract Base Classes vs Protocols exists mostly for historical syntax reasons.
  2. At senior level, Python removes the tradeoffs around Abstract Base Classes vs Protocols, so design choices barely matter in practice.
  3. At senior level, any approach to Abstract Base Classes vs Protocols is equally correct if it passes one small local test.
  4. Senior answers frame the choice around coupling, substitution, and whether inheritance is semantically real.

Hint

Look beyond syntax and explain the runtime, API, or design consequence.

Answer and rationale

Correct answer: D. Senior answers frame the choice around coupling, substitution, and whether inheritance is semantically real.

Senior answers frame the choice around coupling, substitution, and whether inheritance is semantically real. This is the kind of tradeoff-aware answer senior interviews usually expect.

Track: Python