Paradigm shift: A study of programmers moving from structured programming to object-oriented programming - Ross, John Minor (ProQuest Dissertations & Theses, 1998)
Since the early 1970s, programmers have faced incremental learning of what were called structured languages and tools. Now many of those programmers need to learn a new ways to analyze problems and develop solutions that are referred to as the object-oriented approach. Little is known about the differences between expert and novice traditional programmers facing this paradigm change. As a result, it is difficult to suggest guidance concerning instructional approaches designed for the various skills groups needing training in the new approach. What is at the center of this study is an interest in learners at different prior structured programming skill levels transitioning to a new object-oriented paradigm programming language, C++. Identifying whether variations exist between skill levels and transitional success was seen as worthwhile in that it would allow further inquiry into how best to design instruction and instructional materials that could support the needs of an assortment of technical fields facing paradigm shifts. The study presented observed structured programming paradigm experts, novices, and those between these levels, during their transition from their previous structured languages to an object-oriented language. The setting was a university course in C++ and the data analyzed included course performance as measured by essay questions, true/false and multiple choice questions, and an exam programming exercise. Information covering the backgrounds of the subjects and their perception of the differences between structured programming and the object-oriented approach was also gathered. The issues considered included: (a) variations in skill acquisition levels, and (b) differences in learner attitudes about object-oriented languages versus structured languages. Significant, although not large, differences were found to exist among experts and novices in their level of performance in object-oriented tasks and comprehension. Subjects with more structured programming experience out-performed novices during the transition to C++. It is not known, however, whether these experts suffered a decline in their edge over novices as they moved to the object-oriented paradigm compared with if the subjects just learned another traditionally structured language.