From: Mat Schaffer Date: 2006-06-01T01:15:53+09:00 Subject: Re: OO Thinking - First Attempt at building an object On May 31, 2006, at 11:55 AM, Paul D. Kraus wrote: > Objective: store sales & units sold information by vendor, by year, by > month, by class code. > > In my nested data structured brain i see it like this > > hash{vendor}{year}{month}[0..5][0..1] > > 0..5 = represent 6 different item classification codes > 0..1 = represents qty, sales. > > I keep trying to write the pseudo code for an object and keep > ending up with > 1 attribute that is the above data structure. Which kind of defeats > the > purpose. > > Maybe a nested data structure is really the way to go with this? > Or an object for each (vendor,year,month) that just increments or > decrements > the values. So my attribute would just > be array_class[0..5][0..1]. > > Still seems messy and overcomplicated. > > Thoughts? > > Please don't write the class just help me sketch this out. My brain > just is > not use to the whole OO thing :) > > Paul I usually try to build OO systems that parallel the actual items or events in a system. So for something like this, I'd first make an "Item" class which would contain vitals about a specific unit (vendor, model, etc...) There could be many of these objects (one for each unit) or not so many (one for each type of unit, though "ItemType" might be a better name then) Then another class called something like "SalesRecord" which would contain the time and date of the sale, and an identifier (id, index, mac address) for which unit was sold. If you want to look this all up, I recommend using ActiveRecord and tying all this to a database (SalesRecord has an item). Then you can look up by anything. But there's always more than one way to skin a cat. -Mat