15 entities with 30 max records per entity = max 450 records. ...... even with 100 attributes this is probably trivial data size, so I would not go out of my way to avoid Single Table inheritance for the sake of avoiding a lot of null fields in the database.

If it was me, for such a complex inheritance hierarchy, I would use the Strategy Design pattern and not use inheritance at all since I have found that complex inheritance can be a PITA to refactor as the requirements change/grow over life of the app.... and the bonus is the complete avoidance of EOF inheritance bugs :-)

Also, there might be opportunity to segment some lesser used property groups into optional related objects if the domain model lends itself to that

Anyway, just my opinion ...... there are many ways to skin the cat.

On May 7, 2008, at 3:48 PM, Florijan Stamenkovic wrote:

Hi all,

In the "[slightly OT] data modeling question" there is some talk of drawbacks of inheritance, specifically of vertical inheritance... Since I am currently contemplating implementing a reasonably complex system, and have thought of using vertical inheritance, this has got me worried. So, what's the deal???

My situation: a structure of over 10 entities (15ish), inheritance up to 4 levels in depth. The amount of records per entity will be quite small (ranging from 5 - maybe 30), so I do not worry about performance. Many operations will be defined on the topmost entity. Relationships will almost always relate to the topmost entity, which will be abstract. I might want to define additional subentities in the future. Subentities will have a sufficient amount of their own properties to discourage me from single table inheritance. Horizontal might do, I do not think I will be changing the existing structure once made.

I've never done inheritance till now. Am I going to commit suicide over this?

F
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/kieran_lists%40mac.com

This email sent to [EMAIL PROTECTED]

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to