Chapter 11. The Future of Design Patterns
This book has introduced and described design patterns, along with the advanced features of C# 3.0, a modern programming language. In many cases, we have found that the language offers substantial assistance in the implementation of the pattern. In this final chapter, we look back at the patterns and what features they needed, and then look forward to what researchers are grappling with for the next iteration of languages.
Summary of Patterns
It is time to collect together all the patterns along with the language features that were used to implement them in this book. It is worth reiterating that in some cases these implementations differ substantially from the traditional forms found with Java, C++, and older C# versions. Thus, in Table 11-1 interpret the Language features column as meaning “modern, good and desirable” rather than “fixed, standard and only.” This table is a useful companion to all the theory code programs, which can be found grouped on my web site for the book (http://patterns.cs.up.ac.za). In the second column, the features in italics were used in an alternative implementation or in the example, but not in the primary theory code. Most features are written in the plural, but there may be only one instance of them, depending on the size of the system the pattern is being applied to.
The table is ordered by features used so that you can get a feel for which are the “easy” patterns to implement in terms of language knowledge; ...