skip to main content
10.1145/582419.582436acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article

Design pattern implementation in Java and aspectJ

Published:04 November 2002Publication History

ABSTRACT

AspectJ implementations of the GoF design patterns show modularity improvements in 17 of 23 cases. These improvements are manifested in terms of better code locality, reusability, composability, and (un)pluggability.The degree of improvement in implementation modularity varies, with the greatest improvement coming when the pattern solution structure involves crosscutting of some form, including one object playing multiple roles, many objects playing one role, or an object playing roles in multiple pattern instances.

References

  1. Agerbo, E., Cornils, A. How to preserve the benefits of Design Patterns. Proceedings of OOPSLA 1998, pp. 134--143]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Alexandrescu, A. Modern C++ Design: Generic Programming and Design Patterns Applied. Addison-Wesley, 2001]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Baumer, D., Riehle, D., Siberski, W., and Wulf, M. Role Object Pattern. Proceedings of PLoP '97. Technical Report WUCS-97-34. Washington University Dept. of Computer Science, 1997]]Google ScholarGoogle Scholar
  4. Budinsky, F., Finnie, M., Yu, P., Vlissides, J. Automatic code generation from Design Patterns. IBM Systems Journal 35(2): 151--171]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Coplien, J. O. Idioms and Patterns as Architectural Literature. IEEE Software Special Issue on Objects, Patterns, and Architectures, January 1997]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Coplien, J. O. Software Design Patterns: Common Questions and Answers. In: Rising L., (Ed.), The Patterns Handbook: Techniques, Strategies, and Applications. Cambridge University Press, NY, January 1998, pp. 311--320]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Florijn, G., Meijers, M., Winsen, P. van. Tool support for object-oriented patterns. Proceedings of ECOOP 1997]]Google ScholarGoogle Scholar
  8. Fowler M.: Dealing with roles. Proceedings of PLoP '97. Technical Report WUCS-97-34. Washington University Dept. of Computer Science, 1997]]Google ScholarGoogle Scholar
  9. Gamma, E. et al. Design Patterns - Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Gil, J., Lorenz, D. H. Design Patterns vs. Language Design. ECOOP 1997 Workshop paper]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., and Irwing, J. Aspect-Oriented Programming. Proceedings of ECOOP '97, Springer Verlag, pages 220--242, 1997]]Google ScholarGoogle ScholarCross RefCross Ref
  12. Kahne, T. A Functional Pattern System for Object-Oriented Design. Ph.D. Thesis, Darmstadt University of Technology, Verlag Dr. Kovac, ISBN 3-86064-770-9, July 1999]]Google ScholarGoogle Scholar
  13. Lauder, A., Kent, S. Precise Visual Specification of Design Patterns. Proceedings of ECOOP 1998]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Lorenz, David H. Visitor Beans: An Aspect-Oriented Pattern. ECOOP 1998 Workshops, pages 431--432, 1998]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Mapelsden, D., Hosking, J. and Grundy, J. Design Pattern Modelling and Instantiation using DPML. In Proceeding of TOOLS Pacific 2002, Sydney, Australia. Conferences in Research and Practice in Information Technology, 10. Noble, J. and Potter, J., Eds., ACS]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Mikkonen, T. Formalizing Design Patterns. Proceedings of ICSE 1998, pp. 115--124]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Nordberg, M. E. Aspect-Oriented Dependency Inversion. OOPSLA 2001 Workshop on Advanced Separation of Concerns in Object-Oriented Systems, October 2001]]Google ScholarGoogle Scholar
  18. Nordberg, M. E. Aspect-Oriented Indirection - Beyond Object-Oriented Design Patterns. OOPSLA 2001 Workshop "Beyond Design: Patterns (mis)used", October 2001]]Google ScholarGoogle Scholar
  19. Norvig, P. Design Patterns in Dynamic Programming. In: Object World 96, Boston MA, May 1996]]Google ScholarGoogle Scholar
  20. Sletten, B. Beyond Actions - A Semantically Rich Command Pattern for the Java Foundation Classes (JFC/Swing) API. Presentation at JavaOne 2002]]Google ScholarGoogle Scholar
  21. Soukup, J. Implementing Patterns. In: Coplien J. O., Schmidt, D. C. (eds.) Pattern Languages of Program Design. Addison Wesley 1995, pp. 395--412]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Sullivan, G. T. Advanced Programming Language Features for Executable Design Patterns. Lab Memo, MIT Artificial Intelligence Laboratory, number AIM-2002-005, 2002]]Google ScholarGoogle Scholar
  23. Zimmer, W. Relationships Between Design Patterns. In: Coplien, J. O., Schmidt, D. C. (eds.) Pattern Languages of Program Design. Addison-Wesley, 1995, pp. 345--364]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. The AspectJ user mailing list. http://aspectj.org/pipermail/users/]]Google ScholarGoogle Scholar
  25. The AspectJ web site. http://www.aspectj.org]]Google ScholarGoogle Scholar
  26. The DemeterJ web site. http://www.ccs.neu.edu/research/demeter/DemeterJava/]]Google ScholarGoogle Scholar
  27. The Java web site. http://www.java.sun.com]]Google ScholarGoogle Scholar

Index Terms

  1. Design pattern implementation in Java and aspectJ

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              OOPSLA '02: Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
              November 2002
              396 pages
              ISBN:1581134711
              DOI:10.1145/582419
              • cover image ACM SIGPLAN Notices
                ACM SIGPLAN Notices  Volume 37, Issue 11
                November 2002
                385 pages
                ISSN:0362-1340
                EISSN:1558-1160
                DOI:10.1145/583854
                Issue’s Table of Contents

              Copyright © 2002 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 4 November 2002

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              OOPSLA '02 Paper Acceptance Rate25of125submissions,20%Overall Acceptance Rate268of1,244submissions,22%

              Upcoming Conference

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader