Deutsch   English   Français   Italiano  
<86a593infj.fsf@linuxsc.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: Tim Rentsch <tr.17687@z991.linuxsc.com>
Newsgroups: comp.lang.c++
Subject: Re: What is OOP?
Date: Sat, 29 Mar 2025 13:36:48 -0700
Organization: A noiseless patient Spider
Lines: 36
Message-ID: <86a593infj.fsf@linuxsc.com>
References: <d8a5a0d563f0b9b78b34711d12d4975a7941f53a.camel@gmail.com> <gog0ljdjdhdekscrcbpprte8788aerq05h@4ax.com> <OOP-20241218203833@ram.dialup.fu-berlin.de> <86h63rr2yo.fsf@linuxsc.com> <fIgFP.1495528$gHk7.785173@fx17.ams4>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Injection-Date: Sat, 29 Mar 2025 21:36:48 +0100 (CET)
Injection-Info: dont-email.me; posting-host="bce5d514645198b751d22fcd37272ca3";
	logging-data="2254329"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+L/V40T6yhv4iLiU8WTLAZ5rDpVH/3L0U="
User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Cancel-Lock: sha1:dKqawFsbg/YMnP7ahm6pwx+am7A=
	sha1:Nb6PYIALTm38ypE1FlxgJaR1lS8=
Bytes: 2556

Mr Flibble <flibble@reddwarf.jmc.corp> writes:

> On Mon, 17 Mar 2025 10:17:51 -0700, Tim Rentsch wrote:
>
>> ram@zedat.fu-berlin.de (Stefan Ram) writes:
[...]
>>> |Procedural code (code using data structures) makes it easy to |add new
>>> functions without changing the existing data |structures.  OO code, on
>>> the other hand, makes it easy to add |new classes without changing
>>> existing functions.
>>> Robert C. Martin
>>>
>>> |Procedural code makes it hard to add new data structures |because all
>>> the functions must change.  OO code makes it hard |to add new functions
>>> because all the classes must change.
>>> Robert C. Martin
>>
>> Both of these comments make the mistake of conflating OOP with
>> programming in languages that have classes.  That isn't what Alan meant
>> by object-oriented programming.  That Smalltalk has classes is
>> incidental to what is meant by object-oriented programming;  classes in
>> Smalltalk are simply a way of implementing the abstract idea of
>> "object-oriented programming" that had started in Alan's thinking, and
>> actually much earlier than Smalltalk or even Simula.
>
> Wrong.  OOP is:
>
> * Encapsulation
> * Inheritance
> * Polymorphism (including LSP)
> * Abstractions
>
> The above necessitates the need for classes or similar.

Your view of object-oriented programs is different from Alan Kay's view
of object-oriented programming.