OOPSLA and the disappearing design patterns
I'm a software developer with experience developing several professional software systems. Each project I do, I try to come away with 1 or 2 useful tricks that can be used in any software. I find that this knowledge builds on itself and some basic techniques or object arrangements can be put into use in more complex patterns. So a "Composite" pattern can be used in a "Visitor" pattern. And a Visitor pattern is definitely going to be useful in an "Interpreter" pattern. Interpreter looks really interesting because the more functional complexity I come across, the more I find myself wanting only to describe elements of that problem.
For example, my last 2 projects, I had to build UI systems from scratch. The first client went with The Laszlo Presentation System, but not the other. In the latter, it would have been really useful to have developed a syntax for a UI layout system. So if the Interpreter pattern is so useful, why are some OOPSLA people trying to remove it from the next Design Patterns book??? And I don't accept the "people use 'Visitor' instead of 'internal iterator'" reasoning as espoused here either. I hope somebody stops this.
DEFINITIONS
Composite:
Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly.
Visitor:
Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which it operates. To get an idea of how a visitor pattern looks, download ruby-visitor.tgz and use ruby to run "main.rb".
Interpreter:
Given a language, define a representation of its grammar along with an interpreter that uses the representation to interpret sentences in the language... the next frontier!!!
Posted by Timothy Washington on 2004.12.09| Original post
#archive #frye #thebox