Code design and maintainability¶
All topics · Alphabetical index
Concepts¶
- Cohesion; coupling; encapsulation; information hiding
- SOLID; DRY; KISS; YAGNI; separation of concerns
- Dependency inversion; dependency injection; composition; inheritance
- Pure functions; side effects; referential transparency
- Design by contract; invariants; preconditions; postconditions
- Strategy; factory; builder; adapter; decorator; facade
- Observer; command; state pattern
- Code smells; refactoring; technical debt; complexity budgets
- Error taxonomy; domain errors; exception boundaries
- Public interfaces; dependency cycles; static analysis; code review
Further reading¶
Reference links for this topic.