[Israel.pm] Design Question
semuelf at 012.net.il
Tue Nov 18 12:35:34 PST 2008
I need a design advice on my module, Data::ParseBinary.
The module works in the Composite design pattern, which means that all
the classes inherent from one base class "base", and each object may
have zero or more "children".
The base class defines two methods, build and destroy, and each
sub-class must implement them, optionally calling the same method in
it's children, if exists and if it decides to.
The current operation is pretty naive, that the program calls the root
object, and it calls it's children's methods and so on.
The problem is that this design is not flexible. what if I want to print
a debug message before and after every object in the hierarchy? What if
I want to also print what each action returned?
After a talk with Shlomo, I'm thinking about modifying the system to
iterator-style, where the iterator will traverse the object tree, and
each object will queue it's children in the iterator.
What do you think? How would you do it?
More information about the Perl