Abstract

Design patterns are tried and tested solutions that are used to tackle common object-oriented programming (OOP) problems. However, many computer science students struggle to learn and apply these patterns in large projects. Part of the challenge in learning design patterns is that the syntactic complexity of OOP languages can distract students from connecting the abstract design concepts to the code they are writing. A further challenge is that existing resources for teaching design patterns are often static and do not illustrate the dynamic nature of OOP. A review of the literature reveals a need for a greater focus on visual metaphors to teach design patterns, while still allowing students to interact with code. This paper describes a novel educational tool that teaches design patterns through a combination of real-world metaphors and scaffolded programming exercises. We evaluate our tool using a pre- and post-survey design and find that use of our tool leads to higher levels of confidence in applying design patterns in practice.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call