随笔分类 -  [14] 框架设计

摘要:在《这是EnterLib PIAB的BUG吗?》一文中我们讨论了PIAB关于抽象基类的BUG,今天又发现了一个新的问题。问题的起因源于《IoC+AOP的简单实现》这篇文章,因为文中给出的解决方案仅仅支持构造器注入,而不能支持属性注入和方法注入——这是由于EnterLib的PIAB设计本身就存在缺陷。 阅读全文
posted @ 2010-09-20 22:44 Artech 阅读(4670) 评论(30) 推荐(6) 编辑
摘要:在默认的情况下,EnterLib的PIAB采用基于透明/真实代理的机制实现对方法调用的拦截,进而实现了对横切关注点的动态注入。也正是其来截机制本身的局限,当我们才用PIAB的方式进行对象的创建的时候,要求对象的类型要么实现某一个接口,要么直接继承MarshalByRefObject类型。但不支持通过抽象基类对该类的间接继承,我个人觉得这是微软需要改进的地方。 阅读全文
posted @ 2010-09-15 12:46 Artech 阅读(3329) 评论(26) 推荐(12) 编辑
摘要:对EnterLib有所了解的人应该知道,其中有一个名叫PIAB的AOP框架;而整个EnterLib完全建立在另一个叫作Unity的底层框架之上,我们可以将Unity看成是一个IoC的框架。对于一个企业应用来说说,AOP和IoC是我们进行逻辑分离和降低耦合度最主要的方式,而将两者结合起来具有重要的现实意义。 阅读全文
posted @ 2010-09-01 20:11 Artech 阅读(28699) 评论(105) 推荐(78) 编辑
摘要:这是一张大体反映Unity 2.0下关于AOP(Interception)设计的类图... 阅读全文
posted @ 2010-08-27 12:11 Artech 阅读(2257) 评论(13) 推荐(1) 编辑
摘要:之前园子里也有一些介绍企业库的文章,其中也不乏对Unity的介绍。虽然微软官方声称其为轻量级的IoC框架,但是并不意味着Unity会很简单。相反,也正是因为复杂性,很多人撰文介绍Unity的时候,往往为了面面俱到,导致很多读者不知所云。最终的结果是,了解Unity的读者能够看懂,不懂的人读了还是不懂。在本篇文章中,我试着换一种介绍方式:抓住Unity最本质的东西,剔除一些细枝末节,希望以一种全新的视角让读者了解Unity的本质。 阅读全文
posted @ 2010-07-13 22:39 Artech 阅读(18616) 评论(57) 推荐(70) 编辑
摘要:经常在网上看到对ORM的讨论沸沸扬扬,我也来凑个热闹,谈谈我写的一个ORM。最近在做一项工作,把我们经常用到的一些业务逻辑抽象出来,写成一个个的Application Block,使之可以运用到不同的Application中,比如Data Access,Messaging,Auditing,Data binding等等。现在先做一个Data access application block。由于时间仓促,没有进行什么优化和较多的测试,大家不必深究我所提供的Code ,我只希望为大家的ORM提供另一种想法。 阅读全文
posted @ 2007-04-03 18:54 Artech 阅读(5960) 评论(11) 推荐(3) 编辑