Part 2. Software Qualities
In this part, we dive into various software qualities and optimize the heck out of them. In the first chapter of this part, you’ll deal with efficiency, in terms of time and memory. Algorithms and data structures are the tools for this job.
Chapters 5 and 6 are focused on reliability, using techniques like design-by-contract and testing. Chapter 7 presents the best practices for writing readable code. Finally, in chapters 8 and 9, you’ll sink your teeth into advanced programming techniques related to thread safety and reusability.