Yesterday (Tuesday May 20th, 2008), I presented at Montreal on Rails. I made a short and sweet presentation on Mephisto, and how I refactored it to support both Akismet and Defensio.
You can grab the slides for Refactoring to Patterns: How Mephisto went from a single engine Lada to a multi-engine jet fighter (PDF).
References
Design Patterns
- The Book: Design Patterns: Elements of Reusable Object-Oriented Software
- Wikipedia article on “Design Patterns’:http://en.wikipedia.org/wiki/Design_patterns
- The Strategy Pattern
- The Adapter Pattern
- The Abstract Factory Pattern
Other interesting patterns that I used in Mephisto, which I briefly talked about, but haven’t mentioned in the slides at all:
Refactoring
- The Book: Refactoring: Improving the Design of Existing Code
- Wikipedia article on Refactoring
- Rename Method
- Extract Class
- Extract Superclass
- Replace Type Code with Subclasses
- Refactoring to Patterns
- The Book: Refactoring to Patterns