Authors: Ashley Robinson, Chris Bates
Abstract: Understanding and using Design Patterns improves software quality through better comprehension of programs for both experienced developers and students. Often design patterns are learned through simplified “toy” programs and exemplars that foreground the structure of the pattern. However in production code the objects and methods that comprise the pattern can be hidden within a complex mesh of intra-code relationships. This paper introduces APRT, an ANTLR-based tool that recovers the structure of both static and dynamic patterns from large codebases so that they can be studied in context.
Keywords: object-oriented; software architecture; program constructs; design patterns