Defensive Programming Done Right, Part I
summary
Argues that libraries should let the owner of main choose a runtime budget for precondition checks and the policy (for example abort throw spin) for violations, and shows concrete C++ infrastructure to do it: compile-time modes, debug asserts, linker-aware builds to preserve binary compatibility, and a negative testing apparatus plus component-level test drivers. Presents open-source supporting utilities on GitHub, explains tradeoffs (performance vs defect masking), and demonstrates the approach working end-to-end.
AI-written summary · about
chapters (9)
- 0:00Start
- 0:55Abstract
- 1:22What's The Problem?
- 2:54Brief Review of Physical Design Logical versus Physical Design
- 3:27Brief Review of Physical Desien Component: Uniform Physical Structure
- 5:131. Brief Review of Physical Design Logical Relationships
- 6:50Level Numbers
- 14:03Interfaces and Conty Preconditions and Pr Non-Essential
- 27:40Outline
related talks
56mThe art of keeping your project from falling apart
32mMaking Sotware Better, Despite Having Users
54mSeeing Like a Programmer - Resiliency, Limits, And Moral Hazards In SE
48mA Personal Philosophy of Excellent Engineering
39mFireside Chat
16mBetter Stories, Better Software
01h 00mC++11/14 at Scale: What Have We Learned?
45mDynamic vs Static Having a Discussion without Sounding Like a Lunatic
