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 pro...
详细信息
ISBN:
(纸本)9781450376860
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.
Large-scale parallel codes require the data to be decomposed between the set of processes active in the computation. This data decomposition implies recurring communication schemes. T he paper introduces generic templ...
详细信息
Large-scale parallel codes require the data to be decomposed between the set of processes active in the computation. This data decomposition implies recurring communication schemes. T he paper introduces generic template classes in C++ for describing the data decomposition. The aim is to store the data in arbitrary existent efficient sequential data structures. Each entry in the sequential data structure corresponds to an entry in the virtual global view of the container. Once the decomposition is setup the needed communication schemes can be created automatically and can be used to communicate values from containers of various types. Even containers with a varying number of values associated with an entry are possible. The framework abstracts the decomposition information and the communication in the client code from the eventual parallel paradigm choice. A prototype based on Message Passing Interface standard is presented. It relieves the user from specifying information that is already known at compile time.
暂无评论