Program visualization and animation have traditionally been done at the level of programming language implementation, or by using some formal graphical notation, e.g., UML; both of which are unfamiliar to novices. OO metaphors presents a metaphor approach to OO visualization with the goal to provide novices with visually rich visualizations that can develop and consolidate a valid mental model of object-orientation. For this purpose, we introduce metaphors for such concepts as class, object, object instantiation, method invocation, parameter passing, and object reference. These metaphors are meant to be used in OO programming courses during lectures and in teaching materials. Furthermore, they are used in animations of a few, carefully selected OO programs.
Last updated: September 7, 2007