6:30 PM
Design Notes:
(1)An object must be able to describe itself when asked by
the client. There must be a describe method which returns
the identity of the object, the describe value could be a
string or an int.
(2)The object must also have a way of letting the client
know what services it provides, one possibility is to
return a pointer to a vector or map.
(3)A client request for an object must get a reference
from a central factory where all objects are created or
reused.
(4)If possible, no GUID should be used to identify an
object. The object must be able to describe itself when
interrogated.
5:10 PM
Verify code. Figure out if a looper class can fit in.
typedef struct
{
struct IFooVtbl *pVbtl;
} IFoo;
typedef struct
{
//Unknown
HRESULT (*QueryInterface)(IFoo *, REFIID, void**);
ULONG (*AddRef) (IFoo *);
ULONG (*Release) (IFoo *);
//IFoo methods
HRESULT (*SetValue) (IFoo *, int);
HRESULT (*GetValue) (IFoo *, int *);
}IFooVtbl;
void KFoo()
{
IFoo *pFoo;
HRESULT hr;
int res;
hr = CreateInstance(..., &pFoo);
pFoo->pVbtl->SetValue(...);
pFoo->pVbtl->GetValue(...);
Release (pFoo);
}
2:00 PM
Just finalized my current task, will then move to the next.
12:20 PM
Thanks Schoen, I'll try that book you mentioned.
12:00 PM
When a program becomes free as in speech and beer, what
kind of metric would be best in determining its value.
Would the value expressed in the number of hours multiplied
by a payrate considered good enough? Or is it set by the
law of supply and demand? The higher the demand the higher
the value. To me, when a program becomes free, its
monetary value disappears along with the creator's ability
to set a price value to it. What only remains is the value
that is set by the receiver of the program. In effect,
monetary payment now becomes optional. Is that right? Or am
I just dreaming?
9:45 AM
Just did a quick design session in
UML. Tried playing with the
class diagrams, imported some headers like some MFC
definitions just to know how imports work. Finally got to
know how inheritance is expressed in a class diagram. Next
is how to express multiple inheritance and composition.
Also,
I was thinking, maybe templates can be categorized as a
stereotype, hmm.