4 ms·
I've migrated codebases from C to C++. The resultant codebases were an order of magnitude easier to support, easier to extend, and breathed new life into existi
by taylodl 3y ago
I've migrated codebases from C to C++. The resultant codebases were an order of magnitude easier to support, easier to extend, and breathed new life into existing product lines. I had this experience at 3 different companies over the course of 20 years.
Having said that, there are definitely "gotchas" that trip people up, but honestly, the biggest problems I've seen is people have a poor understanding of object-oriented analysis and design. Plus I'd love to get back all those hours of people arguing over whether methods should be private or protected, or virtual, and whatnot.
It took the industry a long time to figure out the best practices and by the time those emerged a lot of bad habits had been formed. That's the biggest advantage Rust has - they started with a clean slate after the best practices had been learned. C++ needs to maintain backward compatibility and as such, it's quite a complicated language. But not so complicated it can't be learned. It just requires more effort than most other languages.