啥是委托?

委托delegate只是类型安全的方法引用。可以类比看成一个类型安全的C函数指针。

上面一句话概括就够了,很精炼。但是要理解它的用法和设计的意图就需要细细琢磨和take into practice了。

通过名字"委托"实际上已经可以大概猜出这个机制的作用,委托允许您讲调用方法的行为委托给其他人

委托在.Net Framework是个很有用的机制,很多.Net内部实现都依赖于delegate.


event和delegate有什么关系?实际上event啥都不是,它真的没干什么事情,只是对delegate简单封装,使得概念更加易懂。

但是Event所代表的publisher,subscriber模型还是很重要的,无论winform,webform都很依赖与事件订阅和触发机制。

但是.Net Event的添加一个subscriber,删除一个subscriber,维护subscriber list都是依赖于委托。这里是一个典型的observer pattern,

Observer模式算是一个大的模式,说它大意思交互对象多了点,逻辑多了点,使用也相对影响往往比较大。 


以上是自己的个人一点理解。 

 

posted on 2008-10-27 00:53  shawnliu  阅读(1189)  评论(5编辑  收藏  举报