From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,66253344eaef63db X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,66253344eaef63db X-Google-Attributes: gid103376,public X-Google-Thread: 1108a1,66253344eaef63db X-Google-Attributes: gid1108a1,public X-Google-ArrivalTime: 1994-09-30 05:04:15 PST Path: bga.com!news.sprintlink.net!howland.reston.ans.net!cs.utexas.edu!convex!darwin.sura.net!news.sesqui.net!uuneo.neosoft.com!Starbase.NeoSoft.COM!not-for-mail From: dweller@Starbase.NeoSoft.COM (David Weller) Newsgroups: comp.lang.ada,comp.object,comp.lang.c++ Subject: Re: Mut. Recurs. in Ada9X w/o Breaking Encaps.? (LONG) Date: 29 Sep 1994 14:34:04 -0500 Organization: NeoSoft Internet Services +1 713 684 5969 Message-ID: <36f4rc$and@Starbase.NeoSoft.COM> References: <1994Sep27.165203.9192@swlvx2.msd.ray.com> <1994Sep29.014611.20263@swlvx2.msd.ray.com> <1994Sep29.183749.7489@swlvx2.msd.ray.com> NNTP-Posting-Host: starbase.neosoft.com Keywords: Ada 9X, C++, object-oriented, Law of Demeter Xref: bga.com comp.lang.ada:6326 comp.object:6909 comp.lang.c++:31065 Date: 1994-09-29T14:34:04-05:00 List-Id: In article <1994Sep29.183749.7489@swlvx2.msd.ray.com>, John Volan wrote: >I am an unabashed fanatic of the 1 Package = 1 Type = 1 Class approach, and >making that approach workable was the whole point of this thread. Well, to each their own. Let's just say I'm on the other end of that spectrum (no, more to the point, I simply don't advocate class=package, although there's many times that works). In my years of developing software, I have yet to be swayed by arguments of "dual associations" needing to be represented in classes. I can see such a need in databases, but I've just not encountered it in programming. That's not saying they don't come up during analysis, but that their final representation generally requires less gymnastics than some of the interesting examples that have been discussed. I guess I can just be counted out of the class=module camp :-/ > In part, I'm >influenced by Karl Lieberherr's work on the Demeter method, and his so-called >"Law of Demeter". This law more or less asserts that each class in an >object-oriented system should be completely encapsulated and self-administering. >A class should only "know about" the classes it is immediately associated with, >and only "know about" them in terms of their own encapsulated interfaces. >Moreover, this encapsulation should never be broken down, even if some >functionality of the system requires propagating an algorithm across many >classes of object. Instead, the algorithm should be realized by a collaborative >interaction among the public subprograms of the various classes. I think this >is the essence of the whole object-oriented paradigm. > Is it appropriate at this point to shudder uncontrollably? :-) >Well, thanks to you and to everyone else who contributed to this thread! > In spite of my disagreement, I think you brought up an interesting topic. -- Proud (and vocal) member of Team Ada! (and Team OS/2) ||This is not your Ada -- Very Cool. Doesn't Suck. || father's Ada For all sorts of interesting Ada tidbits, run the command: ||________________ "finger dweller@starbase.neosoft.com | more" (or e-mail with "finger" as subj.) ObNitPick: Spelling Ada as ADA is like spelling C++ as CPLUSPLUS. :-)