OO Programming  «Prev  Next»
Lesson 6

OO Design Process Conclusion

This module discussed the object-oriented design process.
You learned about the differences between traditional and object-oriented programming. You should now be able to:
  1. List some differences between traditional and object-oriented programming
  2. Generate a list of possible classes in your system
  3. Narrow a list of classes, keeping only those that make good classes

C++ as an Object-Oriented Language

If you are a C programmer, you may have viewed the features covered so far in this chapter as convenient additions to the C language. As the name C++ implies, in many ways the language is just a "better C." There is one major point that this view overlooks. Unlike C, C++ is an object-oriented language.
Object-oriented programming (OOP) is a more natural way to write code. If you are used to procedural languages such as C or Pascal, do notworry. You need to shift your mindset to the object-oriented paradigm. If you already know the theory of OOP, the rest of this course will help get you up to speed on basic C++ object syntax.


This module introduced you to the following terms:
  1. Class:The highest-level element in an object-oriented programs; classes contain both functions (methods) and data. Collaboration: A class 's interaction with other classes to carry out all its necessary responsibilities; needed when the class by itself does not know or can not do everything it needs to know or do. The final step in object-oriented analysis is to identify the class's collaborators.
  2. Object based:A program, such as Visual Basic, which supports classes and data abstraction but not inheritance or polymorphism.
  3. Object-oriented language:Programming languages that support the inclusion of both data and methods in classes.
  4. Problem domain:What the problem is that your project is supposed to help solve. Defining the problem domain is usually the first step in design, whether you use a procedural or an object-oriented design.
  5. Procedural language:Structured programming requires well-defined flow control. A programming language that supports well-defined flow control because of a heavy reliance on procedures.
  6. Procedure:The highest-level element in procedural, or structured design; procedures define what the program does.
The next module will discuss some characteristics of an object and the benefits and uses of both structured and object-oriented design and programming.

Choosing Classes Quiz

Click the Quiz link below to take a short multiple-choice quiz on the material covered in this module.
Choosing Classes - Quiz