Chapter 6

Weaving the Patterns Together

“The limits of my language are the limits of my world.”

Ludwig Wittgenstein

“No pattern is an island, entire of itself; every pattern is a piece of the continent, a part of the main.”

Paraphrase of John Donne’s ‘Devotions’

The patterns in this book can be applied individually, each helping to resolve a particular set of forces related to concurrency and networking. However, just using these patterns in a stand-alone way limits their power unnecessarily, because real-world software systems cannot be developed effectively by resolving problems in isolation.

To increase the power of this book, this chapter shows how the patterns presented in Chapter 2 through 5 connect, complement, and complete each other to form the basis of a pattern language for building high-quality distributed object computing middleware, and concurrent and networked applications. In addition, we outline how many of these patterns can be applied outside the context of concurrency and networking.

6.1 From Individual Patterns to Pattern Languages

The patterns presented in Chapter 2 are described in a self-contained manner, as are the patterns in [POSA1]. For example, the patterns’ contexts are expressed as generally as possible, to avoid limiting their applicability to a particular configuration of other problems, patterns, or designs. The patterns can therefore be applied whenever a problem arises that they address. Moreover, neither the patterns’ solution descriptions nor ...

Get Pattern-Oriented Software Architecture, Volume 2, Patterns for Concurrent and Networked Objects now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.