Object-oriented programming in the BETA programming language
Object-oriented programming in the BETA programming language
Software architecture in practice
Software architecture in practice
Extreme programming explained: embrace change
Extreme programming explained: embrace change
On the representation of roles in object-oriented and conceptual modelling
Data & Knowledge Engineering
An Introduction to Object-Oriented Programming
An Introduction to Object-Oriented Programming
Java: An Introduction to Computer Science and Programming
Java: An Introduction to Computer Science and Programming
Java Software Solutions: Foundations of Program Design with Cdrom
Java Software Solutions: Foundations of Program Design with Cdrom
Object-Oriented Programming with Java: A First Programming Text
Object-Oriented Programming with Java: A First Programming Text
Object-Oriented Software Design and Construction with Java
Object-Oriented Software Design and Construction with Java
Object Oriented Software Development Using Java
Object Oriented Software Development Using Java
Java, Java, Java: Object Oriented Problem Solving
Java, Java, Java: Object Oriented Problem Solving
Introduction to Programming Using Java: An Object-Oriented Approach
Introduction to Programming Using Java: An Object-Oriented Approach
Object Design: Roles, Responsibilities, and Collaborations
Object Design: Roles, Responsibilities, and Collaborations
Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition) (Software Patterns Series)
Empirical comparison of objects-first and objects-later
ICER '09 Proceedings of the fifth international workshop on Computing education research workshop
Hi-index | 0.01 |
There are an increasing number of books published on the important topics of "object-oriented programming" and "object-oriented design" for use in education. However, object-orientation can be viewed from a number of different perspectives---each perspective having its benefits and liabilities. A perspective has a strong influence on the kind of designs students can and will produce, the kind of domains that are easy or difficult to analyze, and the kind of frame of reference in which design techniques are understood and applied. In this paper we argue that most books make an implicit choice of perspective with the unfortunate effect that our students leave our courses with limited design abilities. We present a coarse-grained classification, discuss implications of perspective in a teaching context, and illustrate consequences using a small case study. Our main point is that teachers should be aware of the different perspectives, and that all perspectives are important for students to achieve high quality designs.