BDE Libraries, An Orientation
summary
BDE (github.com/bloomberg/bde) presents a concrete library ecosystem: 900 documented components organized into 47 packages and 5 package groups, each with a test driver that proves contracts. Core features include allocator-enabled containers, fine-grained componentization, a class taxonomy (value semantics, mechanisms, utilities, protocols), doxygen-based documentation with usage examples, and a layered assertion system (safe / assert safe / opt) whose handlers can abort, sleep for debugger attach, or throw so failures can be logged or escalated.
AI-written summary · about
chapters (22)
- 0:00Intro
- 0:21What is BDE?
- 1:55Background: Lakos Talks
- 5:54What is a Component?
- 11:13What is a Package Group?
- 12:21The Package Groups
- 15:08Goals
- 17:16Taxonomy of Classes
- 22:06Documentation DOXYGEN
- 24:56Component-Level Doc
- 26:27Class-Level Doc
- 27:04Tacit Guarantees
- 28:24Exceptions
- 31:08Function-Level Doc
- 36:04A Value-Semantic Type
- 38:54Date-Specific Operations
- 39:39Valid Date Values
- 43:45Narrow versus Wide Contracts
- 44:09Undefined Behavior
- 54:39BSLS ASSERT Macros
- 56:23BSLS_ASSERT Build Targets
- 57:25BSLS_ASSERT Handlers
related talks
01h 12mContract use: Past, Present, and Future
01h 03m“C++ Dependency Management: from Package Consumption to Project Development”
30mFrom Chaos to Domain Driven Design
27mSimple Abstractions for the Challenge of Complexity
29mKeynote: BDD - Bias driven development
29mFramework Architectures
56mDI Frameworks – some hidden pearls
01h 13mPractical Production-Proven Constexpr API Elements
