Newsgroups: comp.object,comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!satisfied.elf.com!news.mathworks.com!uunet!rcm!rmartin
From: rmartin@rcmcon.com (Robert Martin)
Subject: Re: Teaching OO
References: <D2150022.k0e90w@ed.bse.com> <1995Jan17.174104.4480@rcmcon.com> 	<3fma1g$2ne@jabba.ess.harris.com> <1995Jan20.141454.3790@rcmcon.com> 	<gened.94.2F203707@usa.net> <TOMB.95Jan25122658@saladin.aisys.com>
Organization: R. C. M. Consulting Inc. 708-918-1004
Date: Thu, 26 Jan 1995 18:03:24 GMT
Message-ID: <1995Jan26.180324.1999@rcmcon.com>
Lines: 36
Xref: glinda.oz.cs.cmu.edu comp.object:25698 comp.lang.smalltalk:19969

rmartin said:
>   >My definition of OO is: "A modeling technique in which engineers use
>   >abstract polymorphic interfaces to manage the dependencies between
>   >software modules, such that those modules can be maintained in
>   >isolation, and possibly reused in other applications."

>In article <gened.94.2F203707@usa.net> gened@usa.net (Eugene Dowen) writes:

>   I believe (where you disagree) that OO is a method that is based on the 
>   desciption of objects that define the domain, solution space, and problem 
>   space.  The presence (or absence) of particular methods (i.e. inheritance) 
>   does not decry or deny a method as OO, being Object focused does.

tomb@saladin.aisys.com (Tom Burns) writes:

>So, please enlighten me....how does this fit with the 'classic'
>definition of OO which, as I understand it, has two basic
>requirements:  That the system support polymorphism and inheritance.
>I have been led to believe that systems without such attributes but
>containing the encapsulation of state, identity and behavior (and the
>like) are considered "object based" and not "object oriented."

Yes.  Those are the traditional definitions of "Object Oriented
Programming".   What we are debating here is the definition of "Object
Oriented Design".   (the "D" was implied in the context of the
thread).

Design must be more than Programming.  There have to be principles
that guide the design to desirable goals.  I try to define OOD in
terms of those principles and goals, and in terms of the tools of OOP.

-- 
Robert Martin       | Design Consulting   | Training courses offered:
Object Mentor Assoc.| rmartin@rcmcon.com  |   Object Oriented Analysis
2080 Cranbrook Rd.  | Tel: (708) 918-1004 |   Object Oriented Design
Green Oaks IL 60048 | Fax: (708) 918-1023 |   C++
