3 — Defensive Programming
Purpose
[stub: defensive-programming]
Metadata
| Author | Amit Singh |
| Scope | low-level-design |
Local graph
Related notes
1 — Exception Design
Looks at how to design exception hierarchies and error-signaling contracts so that failures are informative and recoverable rather than opaque.
2 — Validation Strategies
Surveys strategies for validating input and state at system boundaries versus deep within business logic, and where each belongs.
4 — Immutability
Explains how immutable objects eliminate mutation after construction, closing off a whole class of concurrency and state-corruption bugs.
5 — Value Objects
Introduces value objects as small, immutable types defined by their attributes rather than identity, and where they should replace bare primitives.