HI mike,
>It is advisable to subclass the baseclasses. Putting them all in one classlib is nothing more than coincidental cohesion.
>
>
http://en.wikipedia.org/wiki/CohesionThere are different types of cohesion:
1. Coincidental
2. Logical
3. Temporal
4. Communicational
5. Functional
You seem to think that all classlibs are composed with coincedental cohesion which I strongly disagree with. E.g., my CR classlib has functional cohesion, because it contains all classes that make it possible to drive Crystal Reports from within VFP. With only a very few exceptions none of my classlibs show coincedental cohesion, and I truly don't believe that most VFP developpers tend to do it this way.
>>For bussiness objects especially if they are huge, maybe it could be usefull. But I wld not know as I am building those (my version of it) in PRGs usualy. And even there they are bunched up together in one prg per database / project.
>
>All the business objects for a single system are in one PRG? "Functional cohesion is when parts of a module are grouped because they all contribute to a single well-defined task of the module (a perfect module)."
>
>Each business object may perform a single well-defined task. The collection of them does not do a single well-defined task. The collection itself does nothing in the system.
It depends on the abstration. grouping business objects into one library can (in smaller projects) beeing regarded as functional cohesion because it contains all the logic for all business objects.
Walter,