Instructional design enhances understanding of object-oriented programming concepts and errors.
Studies for more than two decades have uncovered a variety of difficulties and misconceptions that novice programmers have with object-oriented programming (OOP). Particularly challenging are the threshold concepts of program dynamics. Studies show that engaging learning approaches may be helpful. One such approach is that of capitalizing on errors, which has been successfully applied in mathematics and physics education. The learning-from-errors approach embedded in an OOP course may improve novices’ comprehension of OOP program dynamics notions and promote the embedment of such an approach in teaching. An instructional approach capitalizing on cognitive conflicts and conflict resolution was designed, applied, and evaluated. The approach involved declarative specifications of the fundamental, challenging notions of object creation and object access. The specifications embodied the mental models at which the instruction was aimed. Focused learning-from-errors activities based on minimalism principles were developed and applied. A comparative evaluation of an experimental group and a control group showed that the experimental-group students were more successful, particularly with the assimilation of the notions of object creation, object identifiers, static elements, and encapsulation. The learning-from-errors approach may be applied in additional domains, including other programming paradigms.
No takes yet. Share an insight, caveat, or question.
Shmallo et al. (2025) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: