Hi Matt,

At least one mail of yours that I don't answer way too late... <s>

> In VFP, how can I have a structure of my classes wherein I have one class
ground-zero from which all other classes, even of different baseclass type,
will inherit from?

You can't. Not in VFP, not in .NET, not in VB6, not in Java... 

Depending on the language you can approach things differently. In C++, for
instance, you could use multiple inheritance. In C# you could use extension
methods. In most languages you could create a new compound class that
contains an instance of the original class. In VFP you can create a builder
that inserts the methods and properties into all your base classes. In all
cases, though, you have to repeat this step for every single class. None of
them is really the same as extending the root class (Empty in VFP, BTW).

> Maintaining them in this manner seems to be a little short of a full OO
architecture.

Actually not. If you encounter something that seems to be too much work to
make sense, the reason is usually that it doesn't make sense... Or at least
is not the optimal approach.

What kind of properties and methods are you thinking of adding to all
classes (which would include classes like Relation, Cursor, Line, HyperLink,
DataSession, etc.). If we know what you are trying to do, we might find
better ways for you.

A few examples:

Prb: You want to define the UI without having to change Font, Color, etc. in
every object. 
Solution: Use a class that iterates over all visual elements on the form and
changes UI related properties. This way there's only a single class you need
to modify when the UI changes. This becomes even easier when you use object
factories. That is a single object or function that is responsible for
creating object instances or forms.

Prb: You need a custom error handler in every class
Solution: Use exception handling instead of the error event. Exception
handling is a more sensible approach to error handling, anyway, and is what
is used in most other languages.

Prb: Evry obejct needs a method to return its current state as a string.
Solution: Create a separate class that receives an object and then converts
it into a string. You could use a strategy pattern to deal with special
conversion cases.

-- 
Christof


_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/profox
OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/c2ee327471fb4fc09091efc8e0a96...@fpl5
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Reply via email to