Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: Of strict, globals, packages and style

by jimbus (Friar)
on Oct 21, 2005 at 14:58 UTC ( [id://502030]=note: print w/replies, xml ) Need Help??


in reply to Of strict, globals, packages and style

Roy Johnson opened a whole other can of worms for for me on the ChatterBox, he suggested that I was started to think in an object oriented way...

I've done a bit of OO programming with java and I've always struggled because I try to make monolithic objects that do everything and end up frustrated when my patterns work.

For example, in this instance, I was focusing on the data I was processing and I could probably make an object model out of it, but it would blow all of my existing logic. But if I make my processes the object and pass the data in standardized format (hashes or arrays, depending on the situation) between them, it seems to work really well.:

  • $fp = Reports::XXX::FileProcessor->new
  • $fp->getConfig
  • $fp->getFiles
  • $lp = Reports::XXX::LineProcessor->new
  • while ($file = $fp->next)
    • $lp->process($file)
  • $dp = Reports::XXX::DataProcessor->new
  • while ($data = $dp->next)
    • $dp->store($data)
  • $dp->cleanup

    XXX being the NetworkElement I'm working on that would be passed in like one of the suggestions above.

    Anyhow, thanks for all the input, there is a lot of data and varying opinions to process here. Unfortunately, I don't have a lot of time to tarry on this (I'm actually operations, not dev), so I'll probably close my eyes and pick one :)

    thanks again

    Never moon a werewolf!
    • Comment on Re: Of strict, globals, packages and style
  • Log In?
    Username:
    Password:

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

    How do I use this?Last hourOther CB clients
    Other Users?
    Others surveying the Monastery: (5)
    As of 2024-04-23 09:20 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      No recent polls found