A classic book in architecture is A Pattern Language, by Christopher Alexander; a classic in software design is Design Patterns, by Gamma, Helm, Johnson, and Vlissides. Patterns and pattern languages have proven to be an excellent way to capture design and implementation expertise, to describe the design of a software system, and to specify design guidelines. Over the past decade, the use of patterns and pattern languages has grown significantly, and a community of practice for writing patterns has matured with conferences, writers' workshops, shepherding, and a series of books. – Richard P. Gabriel
This page assembles a couple of hyperlinks into the field of patterns.