Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Software reflexion models: bridging the gap between source and high-level models
SIGSOFT '95 Proceedings of the 3rd ACM SIGSOFT symposium on Foundations of software engineering
Monitoring compliance of a software system with its high-level design models
Proceedings of the 18th international conference on Software engineering
Automatic code generation from design patterns
IBM Systems Journal
Software design patterns: common questions and answers
The patterns handbooks
CoffeeStrainer: statically-checked constraints on the definition and use of types in Java
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
A debate on language and tool support for design patterns
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Addendum to the 1998 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum)
Effective Java programming language guide
Effective Java programming language guide
Design pattern modelling and instantiation using DPML
CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
Design pattern implementation in Java and aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Generating a Pattern-Based Application Development Environment for Enterprise JavaBeans
COMPSAC '02 Proceedings of the 26th International Computer Software and Applications Conference on Prolonging Software Life: Development and Redevelopment
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Statically Checked Documentation with Design Patterns
TOOLS '00 Proceedings of the Technology of Object-Oriented Languages and Systems (TOOLS 33)
A Comparison of Bug Finding Tools for Java
ISSRE '04 Proceedings of the 15th International Symposium on Software Reliability Engineering
Defining and continuous checking of structural program dependencies
Proceedings of the 30th international conference on Software engineering
An approach to automatically enforce object-oriented constraints
International Journal of Computer Applications in Technology
Hi-index | 0.00 |
A PEC is a Pattern Enforcing Compiler, which is like a conventional compiler only extended to include the extra checks needed to enforce design patterns. PECs are currently a research project and the PEC written is targeted at the Java programming language. This paper:• Describes the PEC• Describes how to use the PEC• Demonstrates how the PEC combines static testing, dynamic testing (unit testing), and code generation synergistically into one utility• Shows that the user of the PEC can write their own design patterns and have the compiler enforce them• The PEC is believed to be unique in statically testing, dynamically testing, generating code and being user extendable.• The PEC is stable enough for production code and is available for free download under the Lesser GNU General Public License (Lovatt 2004).The PEC makes extensive use of reflection (runtime type identification); both when testing that a class conforms to pattern and also to allow the compiler to be user extendable.