2011年2月25日
摘要: 阅读全文
posted @ 2011-02-25 13:57 叩亦杰 阅读(336) 评论(3) 推荐(1) 编辑
  2011年1月12日
摘要: 在数据库表设计时,许多人为采用INT类型还是GUID(uniqueidentifyer)作为主键争论不休,有认为int型字段好的,有认为GUID好的,很多时候的焦点集中在效率上。为了弄清事实真相,我想还是要以实验来进行测试为准。以下就是为了测试插入效率而写的一段脚本。测试环境是:Xeon 1.6/2G内存 win2003/sqlserver2005 企业版。测试脚本:--测试无主键/Identity/Uniqueidentifier/varchar类型主键插入表时的效率代码运行测试结果如下: 新表无主键插入100万条数据所耗时间:1212856毫秒100万行中再插入10000条数据时间:193 阅读全文
posted @ 2011-01-12 11:27 叩亦杰 阅读(3921) 评论(26) 推荐(2) 编辑
  2011年1月10日
摘要: 外观模式: 外观模式的思想其实就是分层的思想,如果在客户代码中出现按业务逻辑调用的情况,其实这是不符合迪米特法则的,因为客户类与详细实现类之间并不存在直接通信。这样我们就可以加入一个业务逻辑层,而这个业务逻辑层其实就是按外观模式设计的。它为子系统的接口提供一个一至的界面。 阅读全文
posted @ 2011-01-10 11:38 叩亦杰 阅读(196) 评论(1) 推荐(1) 编辑
摘要: 如果两个类不必直接通信,那么两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话可以通过第三者转发这个调用。 其实迪米特法则是强调了类之间的松耦合,降低了彼此之间的耦合度。 阅读全文
posted @ 2011-01-10 11:37 叩亦杰 阅读(342) 评论(0) 推荐(1) 编辑
摘要: [以前学习Linq To Entities 时自己写的点心得资料,放在这里供初学者参考]1、先实例化entities对象(注意释放所占空间,结合using 使用)2、实例化的entities对象中的表的实体,生成对象a,返回类型为objectquery表实体类名3、使用linq对a进行查询,返回类型为iqueryable你所需要的查询类型(若你只需要一个为字符串类型的字段,可为string,若你需要查出整个表的字段,则可以为表的实体类型。)生成对象b.(若只需要查出表中部分字段且大于一个时可以 var 类型 代码4、查询语句可以使用linq也可以使用,其自带的如select之类的查询函 阅读全文
posted @ 2011-01-10 11:32 叩亦杰 阅读(3913) 评论(6) 推荐(3) 编辑
  2011年1月9日
摘要: 在 .NET 类库中有一个 System.Diagnostics命名空间,该命名空间提供了一些与系统进程、事件日志、和性能计数器进行交互的类库。当中包括了两个对开发人员而言十分有用的类——Debug类和Trace类。本文介绍了这两个类的一些基本用途,旨在提高广大开发人员的开发效率。目录使用Debug类来帮助调试 Debug类和Trace类的区别 使用Trace类来做程序日志 小结 参考资料使用Debug类来帮助调试调试程序对每个程序员来说是家常便饭。可是我们会经常遇到一些情况让我们头疼,例如:当我们在开发一个界面控件的时候,简单的设断点会增加Paint事件的响应次数,而造成的环境参数改变。 断 阅读全文
posted @ 2011-01-09 15:19 叩亦杰 阅读(1559) 评论(4) 推荐(1) 编辑
摘要: 模板方法模式思想: 模板方法模式其实就是将不就的行为放在了超类(抽象父类)以此来去除了类中重复的代码。 阅读全文
posted @ 2011-01-09 15:14 叩亦杰 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 原型模式: 原型模式其实就是一个对象复制的问题,如果我们需要一个一样的对象(值也一样)我们如果再new一个然后赋值则显得太麻烦了,可以使用原型模式,它其实就是具体实现类都继承一个抽象的抽象类,抽象类中有一个方法是在具体类中实现的它就是一个自我复制。在使用的时候抽象类都可以不用写,C#中有一个接口ICloneable中有一个Clone方法,只需在具体实现类的实现即可。memberwiseclone:为C#中的浅表复制。 阅读全文
posted @ 2011-01-09 15:13 叩亦杰 阅读(295) 评论(0) 推荐(0) 编辑
  2011年1月8日
摘要: 1. 有关生存期的补充正常情况下,每次调用 WebMethod,服务器都会创建一个新的 WebService 对象,即便客户端使用同一个代理对象多次调用 WebMethod。而我们一旦调用了有缓存标记的 WebMethod,只要未超出缓存期,WebService 对象都不会被重新创建。在缓存期内调用没有缓存标记的 WebMethod,也会继续使用该 WebService 对象。有太多因素让这个缓存机制变得不那么可靠,因此我们不能奢望用缓存标记来维持特定的对象状态,况且缓存机制的设计初衷也只是为了快速输出那些比较稳定非常大的数据。基于多用户并发调用这个环境,WebService 本身最好设计成无 阅读全文
posted @ 2011-01-08 16:50 叩亦杰 阅读(9300) 评论(10) 推荐(2) 编辑
摘要: 代理模式思想:代理模式和装饰模式有点类似,只不过针对的对象有点不同,在装饰模式中使用的是基类对象,而在代理模式中使用的是具体实现类。其实现是:定一个基类,代理类和具体实现类都继承此基类。同时在代理类中定义一个具体实现类的对象。当调用代理类的方法时,其实是针对具体实现类的方法的调用。代理模式优点:1、远程代理 webservice2、虚拟代理 如HTML下载内容多的页面时,图片显示压缩的,再一张张出现3、安全代理 用来控制真实对象的访问权限4、智能指引 如计算一个对象引用的次数 阅读全文
posted @ 2011-01-08 15:07 叩亦杰 阅读(343) 评论(0) 推荐(0) 编辑