home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!haven.umd.edu!darwin.sura.net!gatech!swrinde!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!att!allegra!alice!bs
- From: bs@alice.att.com (Bjarne Stroustrup)
- Newsgroups: comp.lang.ada
- Subject: Re: Why and how do organizations select the OO
- Message-ID: <24696@alice.att.com>
- Date: 25 Jan 93 15:49:33 GMT
- Article-I.D.: alice.24696
- References: <1993Jan22.144817.23862@mcc.com> <1993Jan22.203706.29355@seas.gwu.edu> <1993Jan25.042040.11659@seas.gwu.edu>
- Organization: AT&T Bell Laboratories, Murray Hill NJ
- Lines: 59
-
-
-
- mfeldman@seas.gwu.edu (Michael Feldman @ George Washington University) writes
-
- > The point was not to tar OO experts as windbags,
-
- I didn't think you were, though of course SOME are.
-
- > but to comment on the
- > state of things. The customer in this case is thrashing around, has
- > little knowledge of what's happening in the field, and is making purely
- > political/religious statements. My distress came from the fact that
- > the organization didn't seem really interested in finding out more
- > or get really educated.
-
- and that's the real rub. Many organizations and people are so busy
- ``getting the job done'' or jumping on some bandwagon that they don't
- want to take the time to learn anything new.
-
- The real power of languages that support techniques beyond what is
- directly supported by C/Pascal is exactly those techniques.
-
- Ada supports data abstraction and C++ data abstraction and object-oriented
- programming (let's quibble about the meaning of those words elsewhere
- if we must; their exact meaning isn't important to what I'm trying
- to say here) and unless you take the bother learning those techniques
- you are not going to get anywhere near the benefits from Ada/C++ that
- you might.
-
- One way of expressing this is that companies (and individuals) wants mere
- training (i.e. ways of using new tools without absorbing new concepts).
- What they need is education (i.e. new concepts and their related techniques).
- Ada without some understanding of data abstraction, etc. seems to me to
- be very nearly just Pascal, and C++ without some understanding of data
- abstraction, etc. is just C with better type checking.
-
- I don't know about the Ada world, but in the C++ world we do have a problem
- with teachers and textbook writers who miss the connection between concepts
- and programming language constructs and thus miss the point and makes learning
- unnecessarily difficult for the students.
-
- > They were - as is so often the case - arguing
- > from nontechnical starting points. There are pro-OO and anti-OO factions
- > in the group, neither being especially scientific. There is also a
- > faction that believes the Ada mandate should be followed in their case,
- > and a faction that is working harder to evade the mandate that they
- > would need to work to follow it.
-
- > Their state of knowledge of OO truly seemed to be "It's that stuff that
- > C++ has and Ada doesn't." Some in the group were quite surprised to
- > discover (from me) that Ada supports information hiding and private types.
- > Their eyes glazed over when I got to the intricacies of inheritance.
-
- Maybe you focussed too much on the intricacies and too little on the
- concepts :-) I don't experience serious problems getting the object-
- oriented concepts and the C++ language mechanisms that support then
- across - the problem comes when the ideas have to be applied to real
- projects (exactly, as for the data abstraction concepts and the language
- constructs that support them).
-