Teaching C++ Using Real Life Analogies - Budni, Shashikala V.; Mulimani, Deepa; Seeri, S. V.; Patil, P. R. (Journal of Engineering Education Transformations, 2016)
Over the years Object oriented programming (OOP) has gained the dominance in both the software industryand education. There are a number of OOP versions released by Software companies and the same are adopted by the educational institutions at various levels in their curricula. The main reason for this inclination is driven by the fact that OOP solves any problem by imitating the mental model of humans. It is usually a challenge for teachers to imbibe OOP concepts in novice programmers. Teaching fundamentals of OOP at an introductory level is challenging. This paper presents a pedagogical approach used for teaching/learning process of Object Oriented Programming in C++ course offered at MCA II semester. The approach uses real life analogies to effectively enhance the learning of OOP concepts among students. Students might program in an OOP language but fail to program in an object-oriented style. This is because students are unsuccessful to model given problem in terms of objects. To ease this, single real life example is used to help students acquire these OOP concepts. The use of a single example from start to finish facilitated deepening of teaching. It mainly helped to join with ease the new concepts and mechanisms, such as class combination, inheritance and polymorphism. Eventually the example expanded into a kind of system. The proposed methodology comprised of five stages in which students are introduced to classes and objects, constructors and destructors, abstraction and encapsulation, inheritance and polymorphism concepts. This approach demonstrated effectiveness in motivating students to incorporate OOP concepts for developing simple real world applications. It has also improved the quality of teaching C++ programming course. An evaluation of the problems experienced in teaching OOP is presented and some possible approaches for improving the quality and success of such courses are discussed.