comp.lang.ada
 help / color / mirror / Atom feed
From: nobody@REPLAY.COM (Anonymous)
Subject: Re: UML & Ada
Date: 1998/06/17
Date: 1998-06-17T00:00:00+00:00	[thread overview]
Message-ID: <199806171349.PAA16505@basement.replay.com> (raw)
In-Reply-To: 35868F4A.FC463980@email.mot.com


On Tue, 16 Jun 1998 08:29:14 -0700, Dennis Miller
<Dennis_Miller-P28917@email.mot.com> wrote:

> Although Ada is considered an object-based language (not including Ada
> 95) as opposed to a OO language, is it possible to construct code in Ada
> from UML notation and vice versa?  Better yet, is it possible to get a
> high level of functionality from an OO notation system and implementing
> it with a object-based language?
> 
> Dennis Miller
> 

If you define "object oriented" as "implemented using inheritance and
dispatching", then Ada 83 was not an OO language and Ada is. This is a
common "definition" of OO; however, it makes no mention of objects, so
it is not a definition of OO.

If, instead, you define OO as "structured around problem-domain objects;
directly representing these objects in software; encapsulating data
structures with their operations; providing a visible interface and
hiding both the definition of the data structures and the implementation
of the operations", then Ada has always been an OO language.

You can, and have always been able to, implement a high-quality OO
design directly in Ada; it follows that you can represent such an
implementation in a notation that describes such a design.

In Ada 83, you must use the technique known as "composition": You define
your most concrete types first, then create composites of such types to
create more abstract types. If you require dispatching operations, you
must explicitly create such operations. This requires writing a little
more code than if inheritance and dispatching features of a language are
used, but has the benefit that the resulting code is much more easily
read and understood than code that uses inheritance and dispatching,
making it easier to modify.

Ada now has inheritance and dispatching features, but the benefits of
composition argue against using them.

Jeff Carter  PGP:1024/440FBE21
My real e-mail address: ( carter @ innocon . com )
"We call your door-opening request a silly thing."
Monty Python & the Holy Grail

Posted with Spam Hater - see
http://www.compulink.co.uk/~net-services/spam/




  parent reply	other threads:[~1998-06-17  0:00 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <35868F4A.FC463980@email.mot.com>
1998-06-17  0:00 ` UML & Ada Stephen Leake
1998-06-17  0:00   ` Dennis Miller
1998-06-17  0:00 ` Pierre DISSAUX
1998-06-17  0:00 ` Anonymous [this message]
1998-06-17  0:00 ` Michael Stark
1998-06-17  0:00   ` Richard D Riehle
1998-06-18  0:00     ` John McCabe
1998-06-18  0:00       ` Jean-Pierre Rosen
1998-06-19  0:00       ` Pierre DISSAUX
1998-06-19  0:00         ` Pat Rogers
1998-06-18  0:00 ` John McCabe
1998-06-18  0:00   ` Alan Gauld
2001-11-19 22:24 Marin David Condic
2001-11-20  5:32 ` Jeffrey Carter
2001-11-20  8:45   ` Torben Hoffmann
2001-11-21  2:49     ` Jeffrey Carter
2001-11-27 13:06       ` Jean-Pierre Rosen
2001-11-20  9:46   ` Preben Randhol
2001-11-20  9:55     ` Jean-Marc Bourguet
2001-11-20 10:32     ` Martin Dowie
2001-11-21  2:23     ` Jeffrey Carter
2001-11-21  9:34       ` Adrian Hoe
2001-11-21 11:37         ` Martin Dowie
2001-11-20 15:10   ` Marin David Condic
2001-11-20  6:52 ` martin.m.dowie
2001-11-20 19:35 ` Mark Fisher
2001-11-20 20:56 ` Ted Dennison
2001-11-20 22:42   ` Marin David Condic
2001-11-21  6:47     ` Simon Wright
2001-11-21 14:47       ` Marin David Condic
2001-11-22 14:31         ` Mark
2001-11-26 19:07           ` Ted Dennison
2001-11-27 12:54             ` Marc A. Criley
2001-11-27 18:49               ` Martin Dowie
2001-12-14 15:43               ` Mark
2001-11-24  7:40         ` Simon Wright
2001-11-26 16:04           ` Marin David Condic
2001-11-20 21:28 ` Mark Lundquist
2001-11-21 17:53   ` Bill Watkins
2001-11-22  5:36 ` Patrick Hohmeyer
2001-11-23  3:16 ` David Phillips
2001-11-24  7:46   ` Simon Wright
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox