a completely decoupled OO system ?

Posted by shrini1000 on Stack Overflow See other posts from Stack Overflow or by shrini1000
Published on 2011-01-01T04:59:34Z Indexed on 2011/01/01 15:54 UTC
Read the original article Hit count: 196

Filed under:
|

To make an OO system as decoupled as possible, I'm thinking of the following approach:

1) we run an RMI/directory like service where objects can register and discover each other. They talk to this service through an interface

2) we run a messaging service to which objects can publish messages, and register subscription callbacks. Again, this happens through interfaces

3) when object A wants to invoke a method on object B, it discovers the target object's unique identity through #1 above, and publishes a message on the message service for object B

4) message services invokes B's callback to give it the message

5) B processes the request and sends the response for A on message service

6) A's callback is called and it gets the response.

I feel this system is as decoupled as practically possible, but it has the following problems:

1) communication is typically asynchronous

2) hence it's non real time

3) the system as a whole is less efficient.

Are there any other practical problems where this design obviously won't be applicable ? What are your thoughts on this design in general ?

© Stack Overflow or respective owner

Related posts about decoupling

Related posts about object-oriented