Introduction
slide: Introduction
Rationale
This chapter introduces the terminology of OOP
as well as some of its history.
Its purpose is to outline the major theme
of the book, which may be characterized as
the unification of a software engineering perspective
and a foundational perspective.
(The minor theme may be characterized by saying
that a considerable amount of technology is involved.)
The major theme is particularly expressed in the
section covering responsibilities in OOP.
This chapter also sketches the possible impact of OOP
on the software lifecycle,
and discusses the position of OOP in the landscape
of programming paradigms, as a preliminary to the treatment
in the chapters that follow.
Hints
Many students are to some extent already familiar with OOP.
It is wise to test their knowledge by engaging in a discussion
about the pro and cons of OOP.
This discussion may later be used as a reference
when introducing new material.
Further literature
See section Overview.
Project assignments
Given the wide range of subjects touched upon in this
chapter, many paper assignments may be thought of,
including subjects such as
Project assignments
- the history of object-oriented programming,
- the acceptance of OOP in particular areas of business and industry, and
- the impact of OOP on software development.
slide: Project assignments
Since many research papers and books, nowadays, require
a brief introduction to OOP, any of these assignments
may be valuable as an exercise for the student to phrase
the characteristics and features of OOP in his or her own words.
Comments
Presenting the material straight away will probably lead
to bedazzlement by the students.
It is worth stressing that they have to develop their own thoughts
about the subject.
Discussion is a good way in which to activate such a thought process.
As a suggestion, for a thought provoking question
one might consider: ``Think of any arguments
against the employment of object-oriented technology.''