Wednesday, December 16, 2009

Chapter 1. Object-oriented approach: What's So Good About It?




I l@ve RuBoard

Chapter
1. Object-oriented approach: What's So Good About It?






Topics in this Chapter








  • The Origins of the Software Crisis






  • Remedy 1: Eliminating Programmers






  • Remedy 2: Improved Management Techniques






  • Remedy 3: Designing a Complex and Verbose Language






  • The Object-Oriented Approach: Are We Getting Something for Nothing?






  • Characteristics of the C++ Programming Language






  • Summary






The object-oriented approach is sweeping all areas of software development. It opens new horizons and offers new benefits. Many developers take it for granted that these benefits exist and that they are substantial. But what are they? Do they come automatically, just because your program uses objects rather than functions?



In this chapter, I will first describe why we need the object-oriented approach. Those of you who are experienced software professionals, can skip this description and go on directly to the explanation of why the object-oriented approach to software construction is so good.



Those of you who are relatively new to the profession should read the discussion of the software crisis and its remedies to make sure you understand the context of the programming techniques I am going to advocate in this book. It should give you a better understanding of what patterns of C++ coding contribute to the quality of your program, what patterns inhibit quality, and why.



Given the abundance of low quality C++ code in industry, this is very important. Many programmers take it for granted that using C++ and its classes delivers all the advantages, whatever they are, automatically. This is not right. Unfortunately, most C++ books support this incorrect perception by concentrating on C++ syntax and avoiding any discussion of the quality of C++ code. When developers do not know what to aim for in C++ code, they wind up with object-oriented programs that are built the old way. These programs are no better than traditional C, PL/I (or whatever梚nsert your favorite language) programs and are as difficult to maintain.







I l@ve RuBoard

No comments: