home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!usc!sdd.hp.com!zaphod.mps.ohio-state.edu!saimiri.primate.wisc.edu!usenet.coe.montana.edu!news.u.washington.edu!ogicse!cadreor!fripp!usenet
- From: jc@ri.cadre.com (Joe Cascio)
- Newsgroups: comp.object
- Subject: Re: OO & transaction handling systems
- Message-ID: <1992Dec21.161544.22621@fripp.ri.cadre.com>
- Date: 21 Dec 92 16:15:44 GMT
- Article-I.D.: fripp.1992Dec21.161544.22621
- References: <1194@kps.se>
- Sender: usenet@fripp.ri.cadre.com (USENET News Poster Account)
- Reply-To: jc@ri.cadre.com
- Organization: Cadre Technologies Inc., Providence, RI
- Lines: 65
- Nntp-Posting-Host: 192.9.200.27
-
- I don't have ready answers for all your questions, but
- here are some...
-
- >Currently we program in C & Oracle on a Pyramid MIS. The thing that
- >attracts me to an object way of doing things is that we have a large
- >number of types of transactions. There are also many types of
- >customers each of which have different functions associated with them.
- >
- >'Sounds object-like, doesn't it?
-
- Sure does. Something you might run into is the
- "cross-product" problem. In your case this is
- types_of_customers vs. types_of_transaction. This typcially
- results in a large number of possible combinations, not all
- of which are unique. Beware of trying to solve this all with
- inheritance!!
-
- This particular problem may be better solved with a third set
- of classes that treat the combinations of transactions vs.
- customers, and use instances of those classes. Try to keep
- any knowledge of customer types out of the transactions, and
- vice versa. Let this third "owner" class worry about the
- cross-product. If you're really compelled to use
- inheritance, you could create "mix-ins" with multiple
- inheritance that let you combine the attributes of the
- appropriate sub-types.
-
- >3) Are there any products that can help with storage / access
- > considerations?
- >
-
- There are several OO database systems (e.g., Object Design)
- available now that map the objects in memory directly to disk
- and back, so you don't have to go through the conversion
- process.
-
- >4) It is said that OO systems don't necessarily have performance problems.
- > Is that true for OO systems as they grow in size? The size and
- > complexity were exactly why one chooses a relational DB. OO may help
- > me with the complexity, but can handle the amount of data? Recall
- > 5 years ago relational DB were said to have performance problems in
- > this regard.
- >
-
- I can only comment on C++ here. A well-designed C++
- implementation has no inherent performance penalites over C.
- The problem is the "well-designed" qualification. New C++
- users are prone to mis-using inheritance and virtual
- functions, and ignoring really important aspects, which are
- encapsulation, decoupling, and cohesion. This can cause the
- implementation to become overly complex or convoluted, which,
- of course, leads to inefficiency.
-
-
- ---
- ==============================================================
- * Joe Cascio u----wm-
- * Cadre Technologies Inc. /\
- * 222 Richmond St. 0_/ "$@@#!$#@$^&"
- * Providence, RI 02903 USA \
- * phone: 401-351-5950 | . .
- * FAX : 401-455-6803 /| . . . .
- * email: jc@cadre.com / | . . . . . .
- ^ ^ . . . ....
- ==============================================================
-