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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
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.
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.
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.
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.
K. Driesen and U. Hölzle. The Direct Cost of Virtual Function Calls in C++. In OOPSLA’96 Proceedings, October 1996.
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.
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.
D. L. Parnas. On the Design and Development of Program Families. IEEE Transactions on Software Engineering, SE-5(2):1–9, 1976.
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.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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