Discipulus has asked for the wisdom of the Perl Monks concerning the following question:

Dear monks

I'm starting to planning my first OO project and I was spending some time reading Error.pm to record the full stack of method call.

I'm planning some class of objects not inherited but like in parallel: a mailer a viewer a logger that interact eachother (MAY BE I'm really wrong in the design?).

I have to use the Error.pm and my subclasses in EACH of my other object modules or in some way can I create an CustumErrorObj.pm (isa Error.pm)and use it in my other object in has-a like manner?

thanks in advance
LOr*

Replies are listed 'Best First'.
Re: Error and objects: general Q
by GrandFather (Saint) on Oct 04, 2006 at 14:14 UTC

    What are you hoping to achieve with CustumErrorObj.pm (many would spell that "Custom..." btw) that you don't get with Error.pm in terms of inheritance?

    You seem to be saying that you don't want your mailer/viewer/logger classes deriving from a common base class. It's not clear to me how you can avoid that unless what you really intend is to add an Error.pm like interface to each class independently. On the basis of the "If it walks like a duck and barks like a duck, it is a duck", you could add the appropriate members to each class and they will look to any interested code as though they are the appropriate sort of duck.

    (See the threads Re: isa() on any scalar, Is "ref $date eq 'ARRAY'" wrong? and Re^2: RFC: Object::Proxy (or somesuch) for relevant ideas.)


    DWIM is Perl's answer to Gödel
Re: Error and objects: general Q
by perrin (Chancellor) on Oct 04, 2006 at 21:32 UTC