学习 chrome 中的 delegate
来源:互联网 发布:ubuntu tcp调试工具 编辑:程序博客网 时间:2024/05/01 12:11
将一组需要抽象的操作放到一个nested的抽象类中,将具体实现在类外继承相应的抽象类,实现相应的具体操作。
chrome 中
Chrome中已经用烂了改伎俩,基本上所有代码中都能看见此手法。
一个类的内部操作委托给外面的一个对象,通过抽象接口。
如上面代码所示,MessagePump把 DoWork DoDelayWork, DoIdelWork通过MessagePump::Deletgate 的接口委托给M essageLoop去处理,这样比较好的解决了代码间的耦合问题。
类似伎俩在消息系统这块还有很多:
MessagePump::Watcher 《对应handle的事件处理》
MessagePump::Observer 《监视Windows消息的处理》
MessagePump::Dispatcher 《Windows本地消息的分派》
MessageLoop::DestructionObserver 《用来跟踪MessageLoop的稀构》
这些都是委托的接口,只不过名字不像MessagePump::Deletgate这么张扬而已。
把委托的接口类写到类的内部,
对于chrome这种写法我是我以前没有考虑过的,
是个非常清晰的代码风格,
coder一看就能知道这个委托接口是干吗的
以上是桥接模式
用PlicyBase的设计方法修改
- 学习 chrome 中的 delegate
- C#中的Delegate 相关学习
- C#中的关键字学习:delegate(委托)和volatile
- 学习总结以及项目中的运用一:Delegate
- c#中的delegate
- C#中的代理(Delegate)
- 理角C#中的delegate
- 理角C#中的delegate
- c#中的Delegate解析
- C#中的代理(Delegate)
- 谈谈C#中的Delegate
- C#中的delegate
- 浅析C#中的Delegate
- C#中的delegate
- Nebula3中的委托(Delegate)
- C#中的代理(Delegate)
- 谈C#中的Delegate
- c# 中的delegate - 未完成
- xss for u7 BOM
- 2773 Happy 2006 //欧拉函数的应用
- 男人们必知的人生定律~(其实女人也得知道)
- 走下神坛的项目经理的感
- 有的女人就像Windows 虽然很优秀,但是安全隐患太大
- 学习 chrome 中的 delegate
- IE7与IE8浏览器下session cookie的共享问题以及区别
- 如何在2003 下配置ftp 服务器
- dataGridView 特殊行的格式设置
- 【zz】水煮TCPMP
- struts2访问或添加request/session/application属性
- 放弃关注
- 编译openssl1.0.0d
- 在redhad下文件传输的脚本