Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Design patterns for data structures
SIGCSE '98 Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education
Design patterns for lazy evaluation
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
Teaching software tools via design patterns
ACSE '00 Proceedings of the Australasian conference on Computing education
OO overkill: when simple is better than not
Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
An object-oriented refactoring of Huffman encoding using the Java collections framework
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
The game of set®: an ideal example for introducing polymorphism and design patterns
Proceedings of the 35th SIGCSE technical symposium on Computer science education
Design patterns for marine biology simulation
Proceedings of the 35th SIGCSE technical symposium on Computer science education
Using the game of life to introduce freshman students to the power and elegance of design patterns
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Why structural recursion should be taught before arrays in CS 1
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Teaching inter-object design patterns to freshmen
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Using the divide and conquer strategy to teach Java framework design
Proceedings of the 3rd international symposium on Principles and practice of programming in Java
Using classic problems to teach Java framework design
Science of Computer Programming - Special issue: Principles and practices of programming in Java (PPPJ 2004)
Nano-kernel: a dynamically reconfigurable kernel for WSN
Proceedings of the 1st international conference on MOBILe Wireless MiddleWARE, Operating Systems, and Applications
Hi-index | 0.00 |
In order to build a data structure that is extensible and reusable, it is necessary to decouple the intrinsic and primitive behavior of the structure from the application specific behavior that manipulates it. To illustrate such a construction, this paper proposes a uniform object-oriented structural pattern for recursive data structures, and shows how external algorithms can be added without rewriting any code using the visitor design pattern. By presenting data structures in this manner, we can more effectively teach students about recursion, abstraction, design, and good software engineering practices.