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=0.6 required=5.0 tests=BAYES_40,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,97482af7429a6a62 X-Google-Attributes: gid103376,public X-Google-Thread: 10d15b,97482af7429a6a62 X-Google-Attributes: gid10d15b,public X-Google-Thread: 109fba,97482af7429a6a62 X-Google-Attributes: gid109fba,public From: rmartin@rcmcon.com (Robert Martin) Subject: Re: C++ not OOP? (Was: Language Efficiency Date: 1995/04/21 Message-ID: <1995Apr21.182138.6903@rcmcon.com>#1/1 X-Deja-AN: 101369035 references: <3mbmd5$s06@icebox.mfltd.co.uk> <3mujnl$4u8@atlantis.utmb.edu> organization: R. C. M. Consulting Inc. 708-918-1004 newsgroups: comp.lang.c++,comp.lang.ada,comp.lang.cobol Date: 1995-04-21T00:00:00+00:00 List-Id: Curtis Bass writes: >In a pure OOPL, it is virtually impossible to avoid encapsulation. >In a hybrid, data and procedures can exist as separate entities. >Encapsulation is not enforced, and can be abandoned entirely. If, in Smalltalk, I put all the procedures and all the data structures into a single object, then I have avoided and abandoned encapsulation for all intents and purposes. The data are just as encapsulated as they would be in C. Oh I agree that there is still an object that encapsulates all that data and procedure; but nobody references it, so the data is not encaspulated away from anyone. i.e. if I put a fence around the universe, I am not really doing anything useful. >Also, this has a MAJOR affect on program organization. But it doesn't, and you have agreed with that. A procedural design can be implemnented in smalltalk; thus smalltalk need have no affect at all on program organization. Now, this is the crux, is OO a matter of language syntax, or a matter of program organization? I presume that most people would agree that the benfits of OO accrue because of the program structure; i.e. it is the program structure that is object oriented, and not the language syntax. I submit that the definition of OO, should be related more to the program structure than a language syntax. -- 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++