Explore a conference talk that delves into the challenges of managing multiple JSON libraries in a C++ codebase and demonstrates how generic programming techniques can provide an elegant solution. Learn how templating, SFINAE, and static assertions were used to abstract JSON functionality from JSON Web Token (JWT) logic, allowing for greater flexibility and interoperability between different JSON implementations. Discover the process of creating a JSON Traits system to handle various JSON types and operations, and understand the benefits and potential drawbacks of this approach. Gain insights into advanced C++ concepts such as compile-time type checking, concept-based programming, and library decoupling techniques that can be applied to similar challenges in software development.
Overview
Syllabus
Help! My Codebase has 5 JSON Libraries - How Generic Programming Rescued Me - Christopher McArthur
Taught by
CppCon