Jump to content

How to calculate things using OO


dennis-fedco

Recommended Posts

Suppose I need code to compute various lengths of assembly that contains a "motor", a "frame", and a "pump".  When all three are put together, there are various lengths that can be computed from various assembly part points.  Some lengths require knowledge of more than one of the parts (i.e. frame and a motor).

 

How do I do this?

I am thinking that I can create three object types, for each of the parts, but how do I then do the computations?  Right now computations related only to the pump I am doing those in the pump class.  But now I need a computation that requires all three.  This is where I need help.  I don't want to create a separate Computation class because it cannot possibly hold all (future) possible computations I may need.  Even if I did, I think it will degenerate into procedure-like programming wrapped into a class.

 

Might I perhaps just use getter methods for respective classes and do computation outside and separately inside the calling function?

 

i.e.

function compute()
{
    $pump = new Pump();
    $frame = new Frame();
    $motor = new Motor();
    
    return 0.35 + $pump->getVar() * $frame->getVar() - $motor->computeLength(4); //except more complex...

}
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.