上一页 1 ··· 324 325 326 327 328 329 330 331 332 ··· 382 下一页
摘要: 回到目录首先将来说一下Dispose是什么东西吧,对于我们使用非托管的资源时,需要自己去实现Dispose这个方法,它的含义就是释放使用的内存空间。例如Stream这个类型,它就是一个非托管类型,它会实现一个IDisposable接口,来实现Dispose方法像TransactionScope,.net事务,它也是一个非托管的,也就是说,我们在使用完事务后,需要自己去进行Dispose()操作,下面问题就来了,这个Dispose写在哪里合适呢?注意看这段代码:using (TransactionScope trans = new TransactionScope()) { ... 阅读全文
posted @ 2012-05-08 16:46 张占岭 阅读(958) 评论(2) 推荐(2)
摘要: 在进行项目整体架构设计时,我们应该明确知道哪些项目是可以被重复再利用的,而哪些项目是与领域模块关系密切的,对于后者我们是应该在解决方案中保留的,而前者则是应该提取出来的。在一个完整的解决方案中,应该是由“公用的类库”,“核心的项目基础层”和“与业务领域关系密切个性项目组”组成的,对于我开会的那个项目来说,也是遵循这样一个原则:将与领域和项目无关的项目进行抽象,形成一个最基础的层,称为Project.Common将与架构模式有关,而与领域无关的项目,形成一个架构模式核心层,称为Project.Core将与指定领域有关的,个性化业务组成的代码,叫做领域层,它的名称由项目含义确定在这篇文章里,我们主 阅读全文
posted @ 2012-05-06 23:18 张占岭 阅读(1493) 评论(1) 推荐(2)
摘要: 本文章主要以上一篇文件的代码在写法上进行一个优化,更代码更精简,更能发挥.net 3.5为我们提供的已有功能,呵呵!首先,为了只有返回值的委托来说,我们是不用再去定义它的,完成可以用.net提供的Func<T>这个委托来实现同时,这个委托也支付多个输入参数的情况,和Func<>对应的一个委托叫Action<>,它没有返回值,可以由多个输入参数,下面是对Func<> 委托的使用实例,同样使用上一篇文章作为例子public class ReturnMessage { public static event Func<string> Ret 阅读全文
posted @ 2012-05-04 11:27 张占岭 阅读(1004) 评论(0) 推荐(1)
摘要: 事件是这样的,我觉得用事件来做这事比较好,它很好的遵循了“开闭原则”,当然这并不是最重要的,最重要的应该是它更符合程序开发的原则。场合:一个订单处理问题,一个订单的产生可能由多种途径生成,A产品走A产品的订单处理过程,完成后显示A产品的订单成功页,B产品走B产品的购买流程,完成后,显示B产品听订单成功页,当然陆续可能会有C产品,D产品等等实现:不考虑订单处理业务,只考虑订单成功页的显示解决1:由A产品页向订单统一处理程序传递参数,在订单统一处理程序里去判断参数,然后显示信息解决2:A产品订阅一个事件,去返回订单成功后显示的页面,在订单统一处理程序里触发这个事件,然后自己显示指定信息从上面两解决 阅读全文
posted @ 2012-05-03 14:07 张占岭 阅读(1175) 评论(0) 推荐(0)
摘要: 非常抱歉让大家等了这么久,这个系列的第一讲才开始,呵呵,目录写出来后,就是按着目录一个一个的讲出来,与大家一起分享我的开发经验了,呵呵。 今天主要说一下“系统的复用性离不开系统的面向对象性”,我们可能有一种感觉,那就是在开发一个项目时用到了一段代码块,在另一个项目中也用到了,我们通常的作法就是ctrl+C,然后ctrl+V,呵呵,这样做的好处就是省事,不好的地方也是“不省事”,为什么这样说呢? ... 阅读全文
posted @ 2012-04-27 16:01 张占岭 阅读(2601) 评论(1) 推荐(4)
上一页 1 ··· 324 325 326 327 328 329 330 331 332 ··· 382 下一页