[Table of Contents] [Next] [Object Central Home]

The Essence of Object-Oriented Programming

Copyright © 1998, Bruce E. Wampler


Preface

I have been developing software for over 20 years. Most of that software was for the PC marketplace. That means that my code has had to do a useful job, do it with as few bugs as possible, and be passed on to others for continued development. It has also meant that I've had to be efficient and practical. I'm now out of the PC software business, and want to share some of my practical experience with other programmers.

Object-oriented programming in C++ or Java can really make a difference when developing programs. While it won't solve all the problems of software development, it makes the development easier, and the long-term maintenance much easier. It can result in real productivity gains, and is worth the effort to learn.

Until recently, I've been teaching software engineering to computer science students at the University of New Mexico. Just like many of you, the Computer Science Department was in the process of changing to object orientation and C++. Because of this transition, I found myself in the position helping students who started out knowing basic programming make the transition to true object orientation. I tried to make that transition as rapid and painless as possible for my students, and with this book, I hope I can help you, too.

The goal of this book is to introduce you to the essence of object orientation without overwhelming you with all the details of a specific object-oriented development methodology, or by basing it exclusively on C++. I've found that learning to use C++, Java, or any other object-oriented programming language effectively comes much more easily if you first get a good understanding of objects and of designing systems using objects.

If you approach C++ or Java with an understanding of objects, you can focus on the practical aspects of the language most needed for building object-oriented systems, and leave many of the messy details for later. And with a good example of a well-designed object-oriented application to study (the V GUI), you can see how object-oriented design and C++ fit together to produce an efficient and easy to understand solution to a real problem.

This book is intended for programmers who want to move from using the old procedural programming paradigm, probably in C, to developing object-oriented systems in C++ or Java. It is also an excellent starting point for someone who has learned C++, but without learning about objects or object-oriented design. This book is not intended to be the last one you read on object orientation, C++, or Java. Instead, it should give you the essential understanding of objects so you can read more advanced and detailed books on the topic with greater purpose.

I want things to be easy and practical. I have tried to pass on some of the things I've learned over the years. I hope this short tutorial will help you get up to speed with objects as quickly as possible.

Bruce E. Wampler

Glenwood Springs, Colorado

Winter, 1998


[Table of Contents] [Next] [Object Central Home]

Visits: