Towards a pattern language for object oriented design

Since the publication of the Design Patterns book (E. Gamma et al., 1994), a large number of design patterns have been identified and codified. Unfortunately, these patterns are mostly organised in an ad hoc fashion, making it hard for programmers to know which pattern to apply to any particular problem. We have organised a large number of existing object oriented design patterns into a pattern language, by analysing the patterns and the relationships between them. Organising patterns into languages has the potential to make large collections of patterns easier to understand and to use.

[1]  Bobby Woolf,et al.  Null object , 1997 .

[2]  Gerard G. Meszaros,et al.  A pattern language for pattern writing , 1997 .

[3]  Dirk Riehle A Role-Based Design Pattern Catalog of Atomic and Composite Patterns Structured by Pattern Purpose , 1997 .

[4]  Walter Zimmer,et al.  Relationships between design patterns , 1995 .

[5]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture , 1996 .

[6]  James Noble,et al.  Classifying relationships between object-oriented design patterns , 1998, Proceedings 1998 Australian Software Engineering Conference (Cat. No.98EX233).

[7]  Stewart Brand,et al.  How Buildings Learn , 1994 .

[8]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[9]  James Noble Arguments and Results , 2000, Comput. J..

[10]  Walter F. Tichy A catalogue of general-purpose software design patterns , 1997, Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages.

[11]  Dirk Riehle,et al.  Product trader , 1997 .

[12]  Erich Gamma Extension object , 1997 .

[13]  Rebecca Wirfs-Brock,et al.  Designing object-oriented software , 1990 .

[14]  James Noble Basic Relationship Patterns , 1997 .

[15]  Bobby Woolf The Abstract Class Pattern , 1997 .

[16]  Christopher Alexander,et al.  The Timeless Way of Building , 1979 .

[17]  Douglas C. Schmidt,et al.  Software patterns , 1996, CACM.

[18]  James O. Coplien,et al.  Pattern languages of program design , 1995 .

[19]  Dirk Riehle Composite design patterns , 1997, OOPSLA '97.

[20]  Ralph Johnson,et al.  Type object , 1997 .

[21]  Murray Silverstein,et al.  A Pattern Language , 1977 .

[22]  Kent L. Beck Smalltalk best practice patterns , 1996 .

[23]  Sherman R. Alpert,et al.  The Design Patterns Smalltalk Companion , 1998 .