[Table of Contents] [Next] [Object Central Home]
The Essence of Object-Oriented Programming
Copyright © 1998, Bruce E. Wampler
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
Visits: