[comp.object] Visibility in Booch's book

al@well.sf.ca.us (Alfred Fontes) (10/19/90)

In his book "Object Oriented Design with Applications", Grady Booch 
says: 
   If we decide that object X sends message M to object Y, then either 
   directly or indirectly, X's class must be visible to Y's class, 
   otherwise, we could not name the operation M in the body of X's 
   class... (p. 127)
It seems to me that the reverse is true: Y should be visible to X.  X 
is sending the message to Y, and must therefore be aware of Y's 
interface.  But why should Y need to know where message M is coming 
from, as long as the message is valid?  

I would really appreciate someone clearing this up for me, because this 
point occurs several times in the chapter.

gbooch@ajpo.sei.cmu.edu (Grady Booch) (10/25/90)

The reverse is indeed true (a few others have pointed this out, and the bug 
will be fixed in the next printing). I and my copyeditor
apparently missed this reversal.

if object X of class A sends a message to object Y of B, then it must
be the case that class A in some manner has visibility to class B. this
visibility may be achieved via a using relationship, or via an inheritance relationship.

egb

brad@SSD.CSD.HARRIS.COM (Brad Appleton) (11/03/90)

In article <717@ajpo.sei.cmu.edu> gbooch@ajpo.sei.cmu.edu (Grady Booch) writes:
>The reverse is indeed true (a few others have pointed this out, and the bug 
>will be fixed in the next printing).

When IS this next printing due on the shelves? I keep waiting for it but 
the bookstores say they know nothing about it. Im just wondering if its
coming out soon enough (or if the changes are significant enough) that
I should wait for this revision instead of buying whats on the shelf now!
Presently, I am trying to be patient - If I can get an idea of just "how"
patient I will need to be I would be much obliged.

______________________ "And miles to go before I sleep." ______________________
 Brad Appleton           brad@ssd.csd.harris.com       Harris Computer Systems
                             uunet!hcx1!brad           Fort Lauderdale, FL USA
~~~~~~~~~~~~~~~~~~~~ Disclaimer: I said it, not my company! ~~~~~~~~~~~~~~~~~~~

gbooch@ajpo.sei.cmu.edu (Grady Booch) (11/04/90)

my editor tells me thta the first printing is sold out, and that the
second printing is shipping now.

in an earlier message, I offered to e-mail errata from the first printing;
this offer still stands - the errata mainly covers some stupid typos re the c++ examples, but nothing that changes lots of pages.

egb

tma@m5.COM (Tim Atkins) (11/06/90)

In article <717@ajpo.sei.cmu.edu> gbooch@ajpo.sei.cmu.edu (PUT YOUR NAME HERE) writes:
>The reverse is indeed true (a few others have pointed this out, and the bug 
>will be fixed in the next printing). I and my copyeditor
>apparently missed this reversal.
>
>if object X of class A sends a message to object Y of B, then it must
>be the case that class A in some manner has visibility to class B. this
>visibility may be achieved via a using relationship, or via an inheritance relationship.
>
>egb

	This may be a minor quibble or it may be that I'm missing the
	point you are trying to make here.  The phrase "has visibility
	to" seems to me somewhat synonymous with "is visible to".  If
	this is in fact the case then it seem that in the above, 
		B "is visible to" A 
	but not the reverse.  With inheritance in the picture then this
	visibility may be quite indirect.
	 
	What am I missing?