Skip to main content

Efficient Object-Oriented Software with Design Patterns

  • Conference paper
  • First Online:
Generative and Component-Based Software Engineering (GCSE 1999)

Abstract

Reusable software based on design patterns typically utilizes “expensive” language features like object composition and polymorphism. This limits their applicability to areas where efficiency in the sense of code size and runtime is of minor interest. To overcome this problem our paper presents a generative approach to “streamline” pattern-based object-oriented software. Depending on the actual requirements of the environment the source code is optimized with a transformation tool. The presented technique provides “scalable” software structures and thus reconciles reusability with efficiency of pattern-based software.

This work has been supported by the Deutsche Forschungsgemeinschaft (DFG), grant no. SCHR 603/1-1.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. G. Aigner and U. Hölzle. Eliminating Virtual Function Calls in C++ Programs. Technical Report TRCS95-22, Computer Science Department, University of California, Santa Barbara, December 1995.

    Google Scholar 

  2. D. Bernstein, Y. Fedorov, S. Porat, J. Rodrigue, and E. Yahav. Compiler Optimization of C++ Virtual Function Calls. In 2nd Conference on Object-Oriented Technologies and Systems, Toronto, Canada, June 1996.

    Google Scholar 

  3. F. J. Budinsky, M. A. Finnie, J. M. Vlissides, and P. S. Yu. Automatic code generation from design patterns. IBM Systems Journal, 35(2), 1996.

    Google Scholar 

  4. K. Czarnecki and U. Eisenecker. Synthesizing Objects. In R. Guerraoui, editor, Proceedings of the 13th European Conference on Object-Oriented Programming (ECOOP’99), number 1628 in Lecture Notes in Computer Science, pages 18–42, Lisbon, Portugal, 1999. Springer Verlag.

    Google Scholar 

  5. K. Driesen and U. Hölzle. The Direct Cost of Virtual Function Calls in C++. In OOPSLA’96 Proceedings, October 1996.

    Google Scholar 

  6. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995. ISBN 0-201-63361-2.

    Google Scholar 

  7. G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-Oriented Programming. Technical Report SPL97-008 P9710042, Xerox PARC, February 1997.

    Google Scholar 

  8. D. L. Parnas. On the Design and Development of Program Families. IEEE Transactions on Software Engineering, SE-5(2):1–9, 1976.

    Article  Google Scholar 

  9. F. Schön, W. Schröder-Preikschat, O. Spinczyk, and U. Spinczyk. Design Rationale of the Pure Object-Oriented Embedded Operating System. In Proceedings of the International IFIP WG 9.3/WG 10.5 Workshop on Distributed and Parallel Embedded Systems (DIPES’ 98), Paderborn, 1998. ISBN 0-7923-8614-0.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Friedrich, M., Papajewski, H., Schröder-Preikschat, W., Spinczyk, O., Spinczyk, U. (2000). Efficient Object-Oriented Software with Design Patterns. In: Czarnecki, K., Eisenecker, U.W. (eds) Generative and Component-Based Software Engineering. GCSE 1999. Lecture Notes in Computer Science, vol 1799. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-40048-6_7

Download citation

  • DOI: https://doi.org/10.1007/3-540-40048-6_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41172-7

  • Online ISBN: 978-3-540-40048-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics