Learn the fundamentals of Object-Oriented design by investigating good--and bad--code Well-designed applications run more efficiently, have fewer bugs, and are easier to revise and maintain. Using an engaging "before-and-after" approach, Object-Oriented Software Design in C++ shows you exactly what bad software looks like and how to fix it with good design principles and patterns. In Object-Oriented Software Design...