随笔分类 - .net
摘要:对于对象创建技术的发展史,有这么一个故事。比如你想吃饺子,最原始的方式就是自己找面粉饺心自己赶皮包心自己煮,这就是new的方式。你去餐馆去吃饺子,这就是工厂模式。你自己坐在家里说:我要饺子,还是老面皮白菜芯的。然后饺子就出现在你面前了,这就是依赖注入模式。依赖注入是继工厂模式之后又一思维方式的转变。他解决的是创建对象的方式问题。最原始初始化对象的方式是传统的new方式,然后人们发现当项目规模大到一定程度的时候,当对象的创建者与对象的使用者不是同一人的时候,使用这种编码方式会带来比较紧密的耦合。比如数据层与业务层。数据层的编码者其实不关心你是用哪个对象,以何者方式,向哪种数据库插入数据。他只关心
阅读全文
摘要:有一个故事,说是一个教授带了一群学生做研究,其中有一个学生特认真,于是教授就去问他:你每天早上在做什么?答:在做研究;再问:你每天中午在做什么?答:在做研究;又问:那你每天晚上在做什么?答:在做研究。学生本想教授一定会很高兴,谁知教授却道:你每天都用来做研究,那你拿什么时候来思考呢? 这个故事告诉我们,不停的学习不止的向前冲固然重要,但有时停下来进行思考总结更重要! 下面,我就来总结下我现有的知识体系:上图! 知识掌握度大纲(V3.0)更新历史V3.0 2011-5-24V2.1 2010-9-18 V2.0 2010-9-13V1.0 2010-4
阅读全文
摘要:在petshop4.0中也用到了几个常用的设计模式:简单工厂模式,工厂方法模式,策略模式,并附之返射与配置文件.下面就来用我自己的理解用大白话说出来. 1.简单工厂模式. 比如A与B一起写代码,A负责前台,B负责后台,B写了两个类:X与Y,A负责调用,那么1.A怎么知道B写了X与Y两个类呢?2.B又增加了Z 类怎么办,3.A在代码里写了n个Xx = new X(), B把X类改名或重写了怎么办.为...
阅读全文
摘要:一直搞web开发,每天接触最多的就是asp.net+css+js,看了看petshop,原来多线程在Web项目中也有很大作用.加之以前一直对多线程不甚了解,这次就这个机会来一次自我补习吧. 启用一个新线程有四种写法: 第一种:使用Thread与ThreadStart/ParameterizedThreadStart类代码Code highlighting produced by Actipro ...
阅读全文
摘要:直到今天才知道,在我们每天都在用的Window系统里还有这么好用的一个编程组件:消息队列.它能够解决在大数据量交换的情况下的性能问题,特别是BS系统的数据库性能.而且它的异步处理方式能给程序员最大的便利与最好的用户体验. 1.首先在需要进行消息队列的服务器上安装MSMQ,我的系统是win2003+iis6,所以这个安装选项在添加删除程序->windows组件->应用程序服务器内.默认是...
阅读全文
摘要:这两天给公司写个日志组件,于是想到了那个有名的开源日志组件:log4net,上网上一阵狂搜,又独自捣鼓了半天,总算是弄出个眉目了. 重要的参考文章: log4net使用详解 我的log4net使用手册(完善中) log4net把自定义的变量写入数据库 Log4Net使用指南 评心而论,研究过后,本人并不是对这个东东很感冒.原因就是:配置太复杂,付出与回报不成比例.起码在写公司的平台组件中是这样的.最常用的记录日志的方式一般有两种:文件与数据库.每套系统都有其自己的日志结构,甚至每个模块之间都不一样,而log4net默认却不能识别,必须先去实现他自己的一套接口,然后通过复杂的配置才能识别.这是其
阅读全文
摘要:1.nunit体系 有nunit,nunitforms,nunitasp nunit大名鼎鼎,但是在实际编写中有一定的局限性,与vs的整合性不强,于是就有了以下两个 nunitforms,是nunit的一个winform的扩展,它为Windows Forms应用程序提供单元测试和压力测试,可以非常容易的用它为你的Windows Forms类进行自动化测试 NUnitAsp,可以说是NUnitFor...
阅读全文
摘要:先说java的,有 selenium,FindBugs,PMD,panopticode等 而在.net下常用的则有两个,且都是微软出品的:fxcop和StyleCop fxcop是直接对dll进行分析,是项目级别的,侧重于代码质量分析,stylecop是vs的插件,直接对代码进行分析,侧重于编码规范。 当然我们不能过于依赖它们,比如fxcop,我的dll没有强命名,居然就是严重错误,在st...
阅读全文