Working with C++ Legacy Code
Explore techniques for effectively managing and improving C++ legacy code in this 49-minute conference talk. Learn how to tackle the challenges of working with large, undocumented codebases that may be over a decade old. Discover practical strategies for adding features and fixing bugs without creating additional complexity or introducing new errors. Gain insights into transforming unmaintainable code into extensible and improvable systems. Delve into topics such as unit testing with GTest, sensing and separation techniques, utilizing fake objects with Google Mock, handling non-virtual methods, addressing hard-to-inherit classes, and overcoming un-fakeable methods. Master the art of using templates for injection, faking private and protected methods, and ultimately taking control of existing legacy code to enhance its maintainability and functionality.