Design Patterns - The Most Common Misconceptions (2 of N)
summary
Argues specific claims: CRTP splits into two intents — a compile‑time static interface versus a mix‑in — and explicit object parameters only address the latter, not dynamic dispatch. Demonstrates a replacement claim for std::variant with a concrete system: 10,000 random shapes and 25,000 operations, where variant-based visit runs roughly half the time in some builds but creates tight coupling and template‑heavy APIs across architectural boundaries. Recommends choosing architecture first, then the pattern and implementation.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 2:58CRTP explored
- 9:05Limitations of CRTP
- 13:58Modern alternatives to CRTP
- 20:05Defining new terminology
- 23:42Concepts and tags
- 28:20std::variant exploration
- 36:40Critique of OOP
- 40:00Variant benefits
- 45:20Performance data
- 48:26Architecture challenges
- 52:45Conclusion
related talks
51mDesign Patterns: Facts and Misconceptions
50mDesign Patterns: The most common misconceptions
01h 07mDependency Injection Patterns: Efficiency and Usability
01h 02mBreaking Dependencies - The Visitor Design Pattern in Cpp
06mLightning Talk: Cute Approach for Polymorphism in C++
01h 00mDesign Idioms from an Alternate Universe
30mComponents, patterns and sh.t it’s hard to deal with
41mEnough TMP to write a Variant
