New England Software Symposium
September 23 - 25, 2005 - Boston, MA
View the event details here ».
Design Patterns Revisited: Taking advantage of dynamic, reflective languages
(3 Hour Session) Attendees should attend the Introduction to Reflection talk, or have some experience using reflection or metaprogamming in a reflective language such as Java, Objective-C, Smalltalk, Python, or Ruby. Familiarity with the GOF book is helpful but not required.
Design patterns are recurring solutions to problems that consistently appear in software development. However, this does not mean that design patterns cannot be "solved", i.e. converted into language or library features. In fact, most of the original design patterns can be solved using dynamic language features such as reflection.
This talk covers specific design patterns, and shows multiple implementations of each, demonstrating how reflection and other dynamic techniques make the patterns invisible, freeing you to concentrate on solving new problems.
In part A I cover • Abstract Factory • Almost-Real Objects (a variant of mock objects) • Singleton
In part B I cover • Iterator • Flyweight • Observer • Dynamic Agile Development
About Stuart Halloway
Stuart Halloway is the CEO of Relevance, Inc. (www.thinkrelevance.com). With co-founder Justin Gehtland, Stuart helps companies adopt agile, as well as innovative technologies such as Clojure and Ruby on Rails. Stuart is the author of Programming Clojure, Rails for Java Developers, and Component Development for the Java Platform. Prior to founding Relevance, Stuart was the Chief Architect at Near-Time, and the Chief Technical Officer at DevelopMentor.More About Stuart »