Article View: comp.lang.misc
Article #4498Re: Teaching object-oriented paradigm to beginners?
From: mnc
Date: Sun, 11 Jan 1987 18:47
Date: Sun, 11 Jan 1987 18:47
31 lines
2426 bytes
2426 bytes
Thank you, Michael for a lucid, no-bullshit explanation of your view of the
object-oriented paradigm. I have heard a similar summary from some of the
(precious few) other promoters of this paradigm who are willing to provide a
non-mystical comparison of it to more established programming techniques,
using conventional computer science terminology. This leaves me with two
unanswered questions:
(1) What is the difference (other than a rather contrived, anthropomorphic
view of the relationship between functions and values), between O-O
programming and the ten (?) year old theory and practice called "abstract
data types"? The fundamental belief with technical importance in
both methods (with which I completely agree) is that pieces of programs
should be divided into chunks that have a precisely documented interaction
with other chunks, but the internals of which are completely unknown (or
irrelevant to) other chunks. Put more concisely, "separate WHAT it does,
from HOW it does it, so that the HOW can be changed without affecting the
WHAT". Isn't O-O programming simply a special case of, i.e. one particular
method for achieving, abstract data types? It seems to lie completely
under the definition of an abstract data type as a collection of types
and functions on those types, together with the notion that we can have
multiple objects of the abstract data type.
(2) Why is it so hard for O-O programming advocates to explain the advantages
of their programming methodology without slipping into obscure, specialized
O-O jargon, or invoking the religious argument, "well you can't under-
stand why it is better until you've done a large amount of O-O programming
yourself"?
--
Michael Condict {ihnp4|vax135}!m10ux!mnc
AT&T Bell Labs (201)582-5911 MH 3B-416
Murray Hill, NJ
Technical Details
Message-ID:
<147@m10ux.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!seismo!rutgers!princeton!allegra!ulysses!mhuxt!m10ux!mncReferences:
<4000001@nucsrl.UUCP> <3288@milano.UUCP>Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!mnetor!seismo!rutgers!princeton!allegra!ulysses!mhuxt!m10ux!mnc From: mnc@m10ux.UUCP Newsgroups: comp.lang.misc Subject: Re: Teaching object-oriented paradigm to beginners? Message-ID: <147@m10ux.UUCP> Date: Sun, 11-Jan-87 13:47:27 EST Article-I.D.: m10ux.147 Posted: Sun Jan 11 13:47:27 1987 Date-Received: Mon, 12-Jan-87 23:19:15 EST References: <4000001@nucsrl.UUCP> <3288@milano.UUCP> Organization: AT&T Bell Labs, Murray Hill, NJ Lines: 31