32

有人可以用简单的英语向我解释经纪人模式吗?可能就 Java 或现实生活中的类比而言。

4

1 回答 1

51

试着想象有 10 个人有他们需要传递的信息。另有 10 人正在等待前一组的消息。在开放环境中,第一组中的每个人都必须手动将他们的消息传递给收件人,因此每个人都必须访问第二组中的至少一个成员。这是低效和混乱的。

在代理中,有一个控制类(在本例中为邮递员)接收来自第一组的所有消息。然后,代理会根据目的地组织消息并执行所需的任何操作,然后再访问每个收件人一次以传递所有消息。这效率要高得多。

在软件设计中,这让远程和异构类之间可以轻松地进行通信。控制类有一个接口,所有传入的消息都可以与之交互,因此可以正确发送和解释各种消息。请记住,这不是很好的可扩展性,因此对于较大的系统会失去有效性。

希望这有帮助!

于 2014-05-23T13:33:37.507 回答