Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re7: Aspect-Oriented Programming: Couple of Short Examples

by dragonchild (Archbishop)
on Aug 07, 2003 at 13:05 UTC ( #281870=note: print w/ replies, xml ) Need Help??


in reply to Re^6: Aspect-Oriented Programming: Couple of Short Examples
in thread Aspect-Oriented Programming: Couple of Short Examples

*laughs* Then I must've accidentally implemented a metaclass that does all my OO book-keeping for me. All my mutators are defined using closures over an array data structure whose reference is blessed. So, if I wanted to add logging to all mutators, I change the way the mutators are created. (In fact, I do this on a regular basis.)

My baseclass gives me access to doing things during:

  • Object instantiation
  • Mutator access
  • Attribute definition
  • Object initialization
What other actions do I need to provide traps for?

------
We are the carpenters and bricklayers of the Information Age.

The idea is a little like C++ templates, except not quite so brain-meltingly complicated. -- TheDamian, Exegesis 6

Please remember that I'm crufty and crochety. All opinions are purely mine and all code is untested, unless otherwise specified.


Comment on Re7: Aspect-Oriented Programming: Couple of Short Examples
Re^9: Aspect-Oriented Programming: Couple of Short Examples
by adrianh (Chancellor) on Aug 07, 2003 at 13:21 UTC
    Then I must've accidentally implemented a metaclass that does all my OO book-keeping for me.

    Me too ;-)

    However, it's nice to work in a language where you don't have to reinvent this wheel by yourself. With metaclasses you can do this sort of thing for all classes - rather than just the ones you have had the foresight to add a flexible base class to.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://281870]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (8)
As of 2015-07-04 13:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (60 votes), past polls