Changing educational circumstances and improving technology are genera
ting the need for a unified perspective of course design that applies
to computer-based courses and courseware. It should combine the princi
ples of educational theory, employed in conventional teaching and lear
ning, with programming methodology, to produce a framework that is com
patible with both fields. In particular, it is interesting to see what
advantages can be obtained from the use of object orientation, which
has proved to be successful in other computing applications. An object
-oriented model is developed which combines the principles of course d
esign with programming practice. It produces a hierarchical structure
of modular objects, each of which combines syllabus content and educat
ional methods in a self-contained program. The structure has a number
of advantages, in terms of programming, and some specific characterist
ics that may be regarded as educational advantages, compared to the mo
re traditional, procedural approach.