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=-1.1 required=5.0 tests=BAYES_00, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII X-Google-Thread: 103376,9982360189bfe852 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-02-02 14:46:58 PST Path: supernews.google.com!sn-xit-02!sn-xit-01!supernews.com!newsfeed.stanford.edu!news.isc.org!news.gnac.net!uunet!sac.uu.net!usenet.rational.com!not-for-mail From: "Mark Lundquist" Newsgroups: comp.lang.ada Subject: Re: OO and modules ( was Which book for ADA beginner ?) Date: Fri, 2 Feb 2001 14:06:57 -0800 Organization: Rational Software Message-ID: <95fbj5$nen$9@usenet.rational.com> References: <3A71400E.32057C6B@becker.k.pl> <3a72224b_2@news3.prserv.net> <3a74c829_2@news3.prserv.net> NNTP-Posting-Host: ext-3074.rational.com X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Xref: supernews.google.com comp.lang.ada:4890 Date: 2001-02-02T14:06:57-08:00 List-Id: Hans-Olof Danielsson wrote in message news:mailman.980777779.24788.comp.lang.ada@ada.eu.org... > Andrzej Lewandowski wrote: > > >...... > > object orientation and modules are in principle orthoogonal concepts, and > > that BOTH and SEPARATE are required to build well structured OO programs. > > That�s interesting. Does that mean that adding, modifying or deleting an > OO-object from a software system doesn�t effect the architecture of it as > the architecture deals with components ( modules ) and their relationship? Of course, if you define "architecture" in such a way as to deal only with those things. Otherwise, not. > > C++, Eiffel, Smalltalk ond others are using classes for both purposes: OO > and > > encapsulation (say, modularization). > > > Ada95 and Oberon are two (well, maybe not > > the ONLY two...) languages that separate these two notions. > >...... > > and are therefore more expressive at the architectual level compared to the > first group languages? Yes, they are more expressive at the architectural level. > > And to which group does Java with its interface and package constructs > belong, the first or the second and why? I think it falls somewhere in between. Java is a class-oriented language, so it has classes which capture the encapsulation aspect of modularity, but it also has packages which capture the namespace aspect of modularity. Interfaces don't really directly have to do with modularity, although they can be used to separate interface from implementation which is an aspect of modularity. However, they seem not to intended to be used this way on a fine-grained basis -- you typically see it up higher, at the component level (whatever that is :-) Mark Lundquist