Skip to content
Brian Faust
home about thoughts projects specs skills rss

Series

Object Design

Roles, contracts, collaboration, and construction decisions for code that must keep changing.

2021
  1. Single Responsibility Is About Change, Not Class Size 01/02
  2. Open–Closed Protects Stable Policy from Repeated Variation 01/03
  3. Substitution Is a Behavioral Contract 01/04
  4. Interfaces Belong to Their Clients 01/05
  5. Dependency Inversion Lets Policy Own the Boundary 01/06
  6. Composition Over Inheritance Is a Decision, Not a Rule 01/07
  7. Strategy Chooses How; Command Records What to Do 01/08
  8. Tell, Don't Ask Means Keep the Decision with the State 01/09
  9. The Law of Demeter Is About Knowledge, Not Dots 01/10
  10. A Null Object Should Mean Nothing Happened 01/11
  11. A Constructor Should Leave a Usable Object 01/12
2022
  1. Entity, Value Object, Aggregate, Model, DTO: Name the Role 01/01
© 2026 Brian Faust
· ·
·
Serein · Powered by Hugo