9、设计模式之Mediator与Proxy模式解析

设计模式之Mediator与Proxy模式解析

1. Mediator模式

Mediator模式旨在促进松耦合,避免相关对象之间的显式引用。在对象模型不依赖于关系数据库时,可使用中介者来维持模型的关系完整性。将关系管理逻辑转移到中介者类中,能让这些类专注于维护关系完整性。

在GUI应用开发中,Mediator模式尤为常见。因为在这种场景下,开发者不希望处理各个小部件之间相互更新的复杂逻辑。.NET的架构鼓励开发者定义注册GUI事件的对象,这实际上就是在应用Mediator模式。虽然.NET在创建GUI时会引导开发者使用Mediator模式,但并不强制将中介逻辑移出应用类。不过,将中介逻辑分离出来可以简化代码,让中介者类专注于GUI组件之间的交互,应用类专注于组件的构建。

以下是一个测试位置变更的示例代码:

[Test]
public void TestLocationChange() 
{
    // setup
    Tub t = new Tub("T403");
    Machine m1 = new Machine(1001);
    Machine m2 = new Machine(1002);
    // place the tub on m1
    t.Location = m1;
    Assertion.Assert(m1.GetTubs().Contains(t));
    Assertion.Assert(!m2.GetTubs().Contains(t));
    // move the tub
    t.Location = m2;
    Assert
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值