Design patterns have moved into the mainstream of professional software development as a highly effective means of improving the quality of software engineering, system design, and development, as well as the communication among the people building them. Patterns capture many of the best practices of software design, making them available to all software engineers.
The fifth volume in a series of books documenting patterns for professional software developers, Pattern Languages of Program Design 5 covers current software development best practices distilled by the patterns community. The material presented in the nineteen chapters of this book distills first-rate patterns, which were workshopped at recent PLoP conferences and rigorously reviewed and enhanced by leading experts in attendance. Representing the best of the conferences, these patterns provide effective, tested, and versatile software design solutions for solving real-world problems in a variety of domains.
Pattern Languages of Program Design 5 covers a wide range of topics, particularly the areas of object-oriented systems, programming techniques, temporal patterns, security, domain-oriented patterns, human-computer interaction, software management, and software patterns.
Among them, you will find patterns addressing:
As patterns continue to capture insight from many areas of practical software development, more and more developers are discovering that using patterns improves communication and helps them build better software.
Dragos Manolescu is a software architect with ThoughtWorks, Inc., where he works on architecture evaluation and enterprise integration projects. Involved with the patterns community since 1996, Dragos chaired the PLoP 1999 conference, contributed to Pattern Languages of Program Design 4 (Addison-Wesley, 2000), and coauthored Integration Patterns (Microsoft Press, 2004).
Markus Voelter is a consultant and coach for software technology and engineering. Markus focuses on software architecture, middleware, and model-driven software development. He is the author of several patterns, the coauthor of Server Component Patterns and Remoting Patterns (both Wiley Patterns Series), and a regular speaker at conferences worldwide.
James Noble is professor of computer science and software engineering at Victoria University in Wellington, New Zealand, where he researches object-oriented approaches to user and programmer interface design. He is the coauthor of Small Memory Software: Patterns for Systems with Limited Memory (Addison-Wesley, 2001).