Online Software Design Pattern Links
Patterns and Pattern Languages are ways to describe best practices, good designs, and capture experience in a way that it is possible for others to reuse this experience. - Eric Huss
What is a Pattern?
A Pattern Definition : By James O. Coplien.
Patterns in a Nutshell : By Brad Appleton.
jGuru Patterns FAQ : A community managed pattern FAQ.
Christopher Alexander: An Introduction for Object Oriented Designers : An article about the architect who changed the way we look at software and codify software experience.
Conference Papers
PLoP 1996 : OOPSLA 1996 : PLoP 1997 : PLoP 1998 : EuroPLoP 1998 : PLoP 1999 : EuroPLoP 1999 : PLoP 2000 : EuroPLoP 2000 : PLoP 2001 : EuroPLop 2001 : PLoP 2002 : EuroPLop 2002 : A very long list of online pattern papers that were presented at the Pattern Languages of Program Design conferences (PLoP) and the European PLoP Conferences (EuroPLoP).
Online Patterns
new .NET Asynchronous Call Pattern : David Hill describes how you can implement a simpler asynchronous call pattern which allows you to consume web services from a .NET WinForm application without having to worry about threads.
new Perl Design Patterns : Phil Crow show how to implement some of the GOF design patterns in a perlish way.
new Microsoft .NET Patterns : Patterns from the Microsoft patterns & practices. Includes patterns for building enterprise solutions, organizing patterns, web presentation patterns, deployment patterns and distributed systems patterns.
new XML Schemas: Best Practices : This is a set of best practices and guideline for writng XML Schema documents developed collectively by discussions among members of the xmldev list group.
new GOF Design Patterns in C# : The folks at Data and Object Factory have put together a design pattern code library for all 23 GOF design patterns. The examples are in C# and each pattern have a structural example as well as a real world example.
new Catalog of Patterns of Enterprise Application Architecture : By Martin Fowler on how to structure sophisticated enterprise applications, particularly those that operate across multiple processing tiers. These pages are a brief overview of each of the patterns in the book Patterns of Enterprise Application Architecture. They aren't intended to stand alone, but merely as a quick aide-memoire for those familiar with them, and a handy link if you want to refer to one online.
new Architectural Design Patterns for XML Documents : XML has been used enough now that some high-level patterns are starting to emerge. Kyle Downey discusses four whole-document design patterns, Dynamic Documents, Composition, Self Documenting Files and Multipart Files.
W3C XML Schema Design Patterns : Idioms and do-s and don't-s on writing XML Schemas.
Enterprise Integration Patterns : A few dozen patterns of message-based middleware.
An Analysis of Design Patterns in MFC : "This paper analyzes the design patterns found in the Microsoft Foundation Classes (MFC). The basic principles of MFC is presented, and each main class of design patterns is considered, with examples of different patterns from each class found or expected. The paper also presents the possible use of patterns in the cases that a pattern could solve some problem elegantly inside MFC."
J2EE Patterns Catalog : Enterprise Java patters from Sun. Free registration required.
Design Patterns : for Building Flexible and Maintainable J2EE Applications.
Pattern Languages of Program Design : Sample chapters from the Addison-Wesley PloPD volume 1.
Stars: A Pattern Language for Query Optimized Schema : Star Schema 101 : Star Schema, and it's counterpart, the Snowflake Schema, is a fundamental pattern for query optimization, for example, in a data warehouse. The first paper presents the pattern and the second paper is an excellent tutorial on the basics of the two schemas.
WikiWikiWeb : A collaborative pattern repository. I know that's a mouthful, but you have to experience the Wiki to get to know it.
Patterns for Adaptive Programming : Patterns that explain the key ideas of Demeter's Adaptive Programming.
An HTML 2.0 Pattern Language : A bit dated but some of the thoughts are still useful. This is a collection of patterns that captures the common practices for programming with HTML.
Online Books
new Enterprise Solution Patterns using Microsoft .NET: Patterns from Microsoft's Patterns and Practices website, in book form.
Bitter Java (5MB PDF) : A book on Java Anti-Patterns.
The Design Patterns Java Companion : By James W. Cooper. Based on the original GOF book, with examples in Java.
EJB Design Patterns (1MB PDF) :
J2EE Patterns : From Sun Java Center.
Thinking in Patterns with Java : By Bruce Eckel.
Tricks of the Java Programming Gurus : A collection of Java programming idioms.
Paper Collections
Pattern Papers : By Brian Foote.
Patterns in Software Development : By Dirk Riehle.
Web Design Patterns : By Martijn van Welie. A great collection of design patterns for writing web pages.
Analysis Patterns : By Martin Fowler. More analysis patterns that supplement this book 'Analysis Patterns'.
An Introduction to Process Patterns : By Scott W. Ambler. "Just as Design Patterns and Analysis Patterns brought reuse and consistency to the OO modeling process, Process Patterns will bring reuse and consistency to the entire OO software process".
Concurrent Programming in Java : Online supplement to Doug Lea's book of the same name.
Patterns for Concurrent, Parallel, and Distributed Systems : Doug Schmidt and his colleagues have written design patterns for building distributed, concurrent, and parallel software architectures.
Design Patterns for Avionics Control Systems : By Doug Lea. A collection of patterns which describe domain-specific architecture concerns and steps in the construction of an Avionic Control System.
Papers on Patterns : By Aamod Sane. Papers on patterns, frameworks, software architectures, distributed objects, visual pattern and architecture tools, uml, and thesis on network protocol design, optimization, and implementation.
A Pattern for Separating Assembly and Processing : By Stephen P. Berczuk.
The Risk Management Catalog : Hosted by Alistair Cockburn. Risk management patterns.
Architecture Patterns (non-software)
Homeowner Patterns : Some architectural patterns for a home owner.
A Pattern Language : Summary of the book by Christoper Alexander, Sara Ishikawa, Murray Silverstein, with Max Jacobson, Ingrid Fiksdahl-King and Shlomo Angel. Published by Oxford University Press
Comments
Hello...
Thanks for this grate website, Please i would like to ask if i can have Design Patterns to universityes website... i have look but I did not found, could you plase kindly advice me to reach and to get these ptterns.
Thanks alot in advice
Posted by: Mushtaha | June 24, 2003 09:32 AM
Hello...
Thanks for this grate website, Please i would like to ask if i can have Design Patterns to universityes website... i have look but I did not found, could you plase kindly advice me to reach and to get these ptterns.
Thanks alot in advice
Posted by: Mushtaha | June 24, 2003 09:33 AM
He nice to have this site.....
b/c i got more abt design patterns after going thorugh this site. try to provide links to other sites which r also providing the info. abt. j2EE Design Patterns
thanking you
Posted by: asudhaker | September 5, 2003 04:31 AM
Special thanks to you.This sight was a great pleasure for me.im working on my final project related to Gof design patterns in C#.net in dept.i wish you all the best of luck. Perfect
Posted by: Soheil Perfect | October 27, 2003 01:26 AM
Hi this is great site. I passed this site to everyone at ur company.
Great work.
Thanks
Satish
Posted by: Satish | February 9, 2004 05:44 AM
Hello,
Was wondering if you knew of an ONLINE message board regards them.
Thanks!
Posted by: bill | February 13, 2004 11:31 AM
Also check out http://www.xmlpatterns.com for patterns on design XML DTDs and Schema documents.
Posted by: Toivo Lainevool | March 1, 2004 07:30 PM
hi ,
i will highly appreciate if anyone could send me
the Bitter.java.pdf freely available book or at least
get me the link for registration to get the book
Thanx a lot...
Posted by: yakub | June 13, 2004 01:55 AM