Path: utzoo!attcan!uunet!oresoft!dan From: dan@oresoft.uu.net (Daniel Elbaum) Newsgroups: comp.lang.c++ Subject: Re: OO terminology (Was: OO Design books) Keywords: OOP, books Message-ID: <1989Sep21.185448.13515@oresoft.uu.net> Date: 21 Sep 89 18:54:48 GMT References: <583@calmasd.Prime.COM> <4557@orca.WV.TEK.COM> <1333@tukki.jyu.fi> Reply-To: dan@oresoft.uu.net (Daniel Elbaum) Organization: Oregon Software, Portland, OR Lines: 26 In article <1333@tukki.jyu.fi> markku@jytko.jyu.fi (Markku Sakkinen) SAKKINEN@FINJYU.bitnet (alternative) writes: :In article <4557@orca.WV.TEK.COM> brucec@demiurge.WV.TEK.COM (Bruce Cohen) writes: :> [...] :>(I'd much rather say "superclass", than "immediately ancestral base class") :> ... :I would also prefer 'subclass' to 'derived class': if a class X consists :of an array of class Y objects, say, equipped with some member functions, :then one could also like to say that X is "derived" from Y. 'super-' and 'sub-' class terminology can introduce confusion. If X is a a base class of Y, then a Y is an X but not vice-versa, and so X is the more general of the two. On the other hand, Y is a superset of X; every Y has an X in it, so you could say that X is a subclass of Y. The 'base' and 'derived' terms are unambiguous and adequate. I find geneological terminology more useful, under which X is the 'parent' of Y and any base class of X is a 'grandparent'. After all, kinship structure is the basis for our notion of hierarchy and inheritance. -- Spa link snot the temper tent, a few cannery doubt lowed. ({uunet,tektronix,reed,sun!nosun,osu-cis,psu-cs}!oresoft!(dan)@oresoft.uu.net)