Mental models and software maintenance
Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers
Construction and testing of polynomials predicting software maintainability
Journal of Systems and Software - Special issue of the best papers from the Oregon Workshop on Software Metrics, 1993
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Cognition and computer programming
Cognition and computer programming
Object-oriented metrics: measures of complexity
Object-oriented metrics: measures of complexity
Design pattern implementation in Java and aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A Controlled Experiment in Maintenance Comparing Design Patterns to Simpler Solutions
IEEE Transactions on Software Engineering
A Practical Model for Measuring Maintainability
QUATIC '07 Proceedings of the 6th International Conference on Quality of Information and Communications Technology
An empirical study on students' ability to comprehend design patterns
Computers & Education
Refining Existing Theories of Program Comprehension During Maintenance for Concurrent Software
ICPC '08 Proceedings of the 2008 The 16th IEEE International Conference on Program Comprehension
On understanding data abstraction, revisited
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
EASY meta-programming with Rascal
GTTSE'09 Proceedings of the 3rd international summer school conference on Generative and transformational techniques in software engineering III
Scripting a refactoring with Rascal and Eclipse
Proceedings of the Fifth Workshop on Refactoring Tools
Program analysis scenarios in rascal
WRLA'12 Proceedings of the 9th international conference on Rewriting Logic and Its Applications
Practical use of static composition of refactoring operations
Proceedings of the 28th Annual ACM Symposium on Applied Computing
A case study in evidence-based DSL evolution
ECMFA'13 Proceedings of the 9th European conference on Modelling Foundations and Applications
Hi-index | 0.00 |
We compare the Visitor pattern with the Interpreter pattern, investigating a single case in point for the Java language. We have produced and compared two versions of an interpreter for a programming language. The first version makes use of the Visitor pattern. The second version was obtained by using an automated refactoring to transform uses of the Visitor pattern to uses of the Interpreter pattern. We compare these two nearly equivalent versions on their maintenance characteristics and execution efficiency. Using a tailored experimental research method we can highlight differences and the causes thereof. The contributions of this paper are that it isolates the choice between Visitor and Interpreter in a realistic software project and makes the difference experimentally observable.