a laboratory for teaching object oriented thinking
It is difficult to introduce both novice and experienced procedural programmers to the anthropomorphic perspective necessary for object-oriented design. We introduce CRC cards, which characterize objects by class name, responsibilities, and collaborators, as a way of giving learners a direct experience of objects. We have found this approach successful in teaching novice programmers the concepts of objects, and in introducing experienced programmers to complicated existing designs.
laboratory teaching object novice experience procedure programmer anthropomorphic object-oriented design object-oriented design class response direct novice programmer concept