Learn the tools and techniques needed to design and implement moderate-sized software systems! Do you want to gain the necessary skills to effectively write moderate-sized (10,000 to 50,000 line) programs? Would you like to develop a more advanced understanding of object-oriented design and learn how to implement important design and style rules? Do you want to be able to take a project from the concept stage to completion? This is all possible with Steven Reiss's innovative text, A Pracical Introduction to Software Design with C++. Reiss provides you with all the tools and techniques to enable you to design and implement moderate-sized software systems alone or in a team. The book details the proper use of inheritance, design notations using a simplified form of OMT to describe designs, the use of object libraries such as STL, creating library classes, and the use of design patterns. You'll also find useful discussions on advanced language and programming features such as exception handling, interprocess communication, and debugging tools and techniques.