Question
Which practice avoids a common mistake with Properties and Validation?
- Ignore the Properties and Validation issue and rely on team discipline instead of clearer APIs or invariants.
- Do not hide surprising network, file, or heavy business work behind a property, because callers expect attribute reads to stay simple.
- Silence the Properties and Validation problem by using broad catches, hidden globals, or extra shared mutable state.
- Prefer the version of Properties and Validation that makes behavior less predictable as long as the code still runs.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: B. Do not hide surprising network, file, or heavy business work behind a property, because callers expect attribute reads to stay simple.
Do not hide surprising network, file, or heavy business work behind a property, because callers expect attribute reads to stay simple. This is a common failure mode in real Python code and a frequent interview follow-up.
Track: Python