Home Design Patterns Bibliography

Bibliography

The sources behind this reference, with a note on what each one is actually good for.

Books

  • Gamma, Helm, Johnson & Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
    • The original Gang of Four book. It introduced the software engineering world to design patterns, and it is still considered by many as the bible of design patterns. Page citations throughout this site refer to it.
  • Eric and Elisabeth Freeman. Head First Design Patterns. O'Reilly, 2004.
    • This was our textbook. I like it. It is much easier to learn from than the Gang of Four book, at the cost of being far less precise.
  • Eddie Burris. Programming in the Large with Design Patterns. Pretty Print Press, 2012.
    • I purchased the ebook version of this at Amazon for a little over a dollar. This book is awesome considering how much it costs. It really simplified and made more understandable the reasons for the design patterns that it covered.

Online

  • SourceMaking
    • Really good. I loved the section on "rules of thumb" under structural design patterns.
  • Bill Venners. Conversation with Erich Gamma, Artima Developer, 2005.
    • An excellent interview. Gamma goes into some detail about the thinking behind the original Gang of Four book, including which parts he would change.
  • doFactory
    • An excellent resource for .NET design patterns, with good coverage of all 23 original GoF patterns.
  • Tony Marston. Design Patterns, 2004.
    • Gives an excellent personal perspective from someone who has actually implemented the various patterns. Includes many patterns that aren't in the GoF, as well as principles and other concepts.
  • Alex. Mastering Software Development, 2013.
    • I never really got the Bridge pattern until I read this. I thought this source was superb.

A note on the citations

Quoted intent statements are taken from the 1995 Addison-Wesley edition of Design Patterns, and the page numbers refer to that printing. If you are working from a different printing or the ebook, the numbers may be off by a page or two even though the wording is unchanged.