随笔- 60
文章- 0
评论- 1248
阅读-
67万
01 2006 档案
泛型技巧系列:用泛型打造可复用的抽象工厂
摘要:泛型不仅能用来做容器,还能够提供代码复用的手段。在泛型的参与下,许多设计就可能更精妙,更具扩展性。今天我就来演示一个利用泛型增强的抽象工厂模式。这是一种不针对特定产品类型和数目的泛型抽象工厂,当你需要特定的抽象工厂时,可随时复用无需再定义专门的抽象工厂实现。
阅读全文
泛型技巧系列:如何提供类型参数之间的转换
摘要:从今天起,我将分享一些我在.NET泛型方面的研究心得。这些心得大都是我在设计VBF中思考发现的,还受了很多C++模板与JAVA泛型的启发。其中相当多的技巧和概念都是大部分“深入C# 2.0”类文章也见不到的。我考虑把其中概念性的部分系统地整理成书,而技巧性的东西则通过我这个系列不定期地分享到Blog上。希望用到.NET泛型的人能从我这些技巧中受益。 首先我要介绍的技巧是如何提供类型参数之间的转换。...
阅读全文
动态调用对象的属性和方法——性能和灵活性兼备的方法
摘要:在动态编程时,我们常常需要运行时确定调用对象的哪个属性或哪个方法。这个任务通常可以用反射来解决。但众所周知,反射的性能要比静态指定的方式低很多,因为反射要通过运行时复杂的机制完成。能否获得性能和灵活性兼备的动态调用?我在开发VBF的最新功能时反复考虑了这个问题。我们通常动态调用一个对象的属性是采用这样的手法,假设对象a有一个属性叫做MyProp: Type t = a.GetType();Prop...
阅读全文