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=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,7f8fc37d854731d6 X-Google-Attributes: gid109fba,public X-Google-Thread: 1108a1,7f8fc37d854731d6 X-Google-Attributes: gid1108a1,public X-Google-Thread: 10461e,7f8fc37d854731d6 X-Google-Attributes: gid10461e,public X-Google-Thread: 103376,7f8fc37d854731d6 X-Google-Attributes: gid103376,public X-Google-Thread: 114809,7f8fc37d854731d6 X-Google-Attributes: gid114809,public From: ell@access2.digex.net (Ell) Subject: Re: Interesting but sensitive topic to discuss (HELP: - OOP and CASE tools) Date: 1996/11/08 Message-ID: <55vfg3$513@news3.digex.net>#1/1 X-Deja-AN: 195285419 references: <32813322.41C6@kyebek3.kjist.ac.kr> <55pqr5$136a@grimsel.zurich.ibm.com> <328109CD.6685@concentric.net> <55v177$ufo@grimsel.zurich.ibm.com> followup-to: comp.object,comp.lang.c++,comp.lang.ada,comp.lang.smalltalk,comp.ai organization: The Universe newsgroups: comp.object,comp.lang.c++,comp.lang.ada,comp.lang.smalltalk,comp.ai Date: 1996-11-08T00:00:00+00:00 List-Id: Paul_Gover@uk.ibm.com wrote: : In <328109CD.6685@concentric.net>, Alan Lovejoy writes: : >Class inheritance is an abstraction mechanism for code sharing. It has nothing much to do : >with architecture or design of a program. Proof: any program using class inheritance can : >easily be converted into a completely equivalent program where all the leaf classes are root : >classes: one simply duplicates all the inherited methods in each leaf class. : > ... : I think from your statement about converting to equivalent programs indicates you : consider implementation to be outside the scope of the design (since you describe two : different implementations for the same design); in that case, do you think that : questions of inheritance and so forth are not part of the development method? : I think this is dangerous; in your example, the coverted program has large amounts of : duplicated code, so making changes is harder because the programmer has to find all : occurrences of the duplicated code, and we have lost one of the benefits of OO. I agree with you that inheritance should be more than a means of code sharing. But it seems he is saying we can take all of the methods declared and defined along the branch of an inheritance hierarchy and aggregate them in root classes. Perhaps he will clarify. Elliott