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.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Received: by 10.180.182.229 with SMTP id eh5mr611677wic.1.1365244300667; Sat, 06 Apr 2013 03:31:40 -0700 (PDT) Path: border1.nntp.ams3.giganews.com!border2.nntp.ams3.giganews.com!border2.nntp.ams2.giganews.com!border4.nntp.ams.giganews.com!border3.nntp.ams.giganews.com!nntp.giganews.com!19no62501741wie.1!news-out.google.com!p18ni40642wiv.0!nntp.google.com!proxad.net!feeder1-2.proxad.net!usenet-fr.net!gegeweb.org!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Usefulness of OOP (was Is this expected behavior or not) Date: Sat, 6 Apr 2013 12:31:29 +0200 Organization: cbb software GmbH Message-ID: <1qp6hk0v8ztvb$.1c0usjaywidmx.dlg@40tude.net> References: <1u72u7h5j4jg3$.wlxmaltyzqik.dlg@40tude.net> <1gnmajx2fdjju.1bo28xwmzt1nr.dlg@40tude.net> <3gv2jwc95otm.pl2aahsh9ox8.dlg@40tude.net> <1gkxiwepaxvtt$.u3ly33rbwthf.dlg@40tude.net> <1fmcdkj58brky.bjedt0pr39cd$.dlg@40tude.net> <1bj564vat3q1j$.1s4d00rlzx4ux$.dlg@40tude.net> Reply-To: mailbox@dmitry-kazakov.de NNTP-Posting-Host: rHWOzyHApalsT5sEUcbvVQ.user.speranza.aioe.org Mime-Version: 1.0 X-Complaints-To: abuse@aioe.org User-Agent: 40tude_Dialog/2.0.15.1 X-Notice: Filtered by postfilter v. 0.8.2 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Original-Bytes: 3547 Xref: number.nntp.dca.giganews.com comp.lang.ada:180956 Date: 2013-04-06T12:31:29+02:00 List-Id: On Sat, 06 Apr 2013 07:20:39 +0200, J-P. Rosen wrote: > Just mentionned it to counter those who claim that OOP > is the universal cure, and that other methods (like good ol' structured > programming) are just remainings of the past. Actually both OOA/D and structured programming remain deep in the past as they share the same principle of designing rather an individual system, which leads to extremely fragile design. Traditional OOA/D considers the system composed out of objects collaborating with each other. This is quite similar to modules of structured approach. The difference is in object orientation against more loose [almost ad-hoc] procedural decomposition of classic structured programming. Both greatly hinder re-use and fail to adapt to the reality of ever changing requirements. [*] What is good in OO is more advanced ADT, which supports decomposition in more general, and thus more stable, terms, e.g. along types and sets of types (AKA generic programming). It in turn requires more advanced system of modules to hold ADTs, e.g. Ada's system of packages. Comparing to decomposition along types and sets of types, traditional OOA/D and structured programming decompose software along individual objects/values/routines. Paleolith. P.S. I don't consider type safety issue because structured programming did not operate types. It was basically pre-typed = untyped. ---------------------------- * There is a whole "OO religion" teaching that the world indeed consists out of objects which program design could capture. This in turn would ensure stability of the design. Utter nonsense, for sure. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de