09 2016 档案
摘要:一、概述 很多时候我们需要在.NET应用程序中使用一条SQL语句来访问来自不同服务器、不同数据库中的不同的表,实现方法有很多。我们可以在.NET应用程序中建立数据访问层,使用ADO.NET Entity Framework将我们的数据库以及数据表抽象成应用程序对象,进而在程序里使用Code来对不同库
阅读全文
摘要:一、类实现的重构 1.将值对象转化为引用对象: 如果发现自己创建并维护着多个一模一样的大型复杂对象,请改变对这些对象的引用方式。 即仅仅保存着一份主拷贝(值对象),然后其他地方使用对该对象的引用(引用对象)。 2.将引用对象转化为值对象: 如果看到自己对某个小型的简单对象进行了多次引用操作,请将这些
阅读全文
摘要:1.提取子程序或者方法: 把内嵌的代码从一个子程序中提取出来,并将其提炼为单独的子程序。 2.将子程序的代码内联化: 如果子程序的程序体很简单,且含义不言自明,那么就在使用的时候直接使用这些代码 3.将冗长的子程序转换为类: 如果子程序太长,可以将其转换为类,然后进一步对之前的子程序进行分解,通过所
阅读全文
摘要:1.用具名常量替代神秘数值: 如果使用了数字或字符表示形式,例如3.14,那么请将这样的字符使用具名常量来替代,例如PI 2.使用变量的名字更为清晰且传递更多的信息: 如果一个变量的名字容易让人产生误解,就换个好点的名字 3.将表达式内联化: 把一个中间变量换成给它赋值的那个表达式本身 4.用函数来
阅读全文
摘要:1.代码重复 2.子程序太长 3.循环太长或者嵌套太深 4.类的内聚性太差 5.类的接口的抽象层次不一致 6.参数表中参数太多 7.类的内部修改往往局限于某个部分 8.需要对多个类进行并行测试 9.对继承体系的并行修改 10.需要对多个case语句进行并行修改 11.相关的数据项只是被放在一起,没有
阅读全文
摘要:@RenderSection:在布局页中,将呈现指定部分的内容并指定该部分是否为必需。用法:@RenderSection("PageSpecificStyleSheetIncludes", required: false) @Html.Partial:在布局页中,把一个个View给镶入进来并回传的一
阅读全文
摘要:一、引言 提到模板,大家肯定不免想到生活中的“简历模板”、“论文模板”、“Word中模版文件”等,在现实生活中,模板的概念就是——有一个规定的格式,然后每个人都可以根据自己的需求或情况去更新它,例如简历模板,下载下来的简历模板的格式都是相同的,然而我们下载下来简历模板之后我们可以根据自己的情况填充不
阅读全文
摘要:一、引言 在软件开发过程中,有些对象有时候会由于网络或其他的障碍,以至于不能够或者不能直接访问到这些对象,如果直接访问对象给系统带来不必要的复杂性,这时候可以在客户端和目标对象之间增加一层中间层,让代理对象代替目标对象,然后客户端只需要访问代理对象,由代理对象去帮我们去请求目标对象并返回结果给客户端
阅读全文
摘要:一、引言 在软件开发过程,如果我们需要重复使用某个对象的时候,如果我们重复地使用new创建这个对象的话,这样我们在内存就需要多次地去申请内存空间了,这样可能会出现内存使用越来越多的情况,这样的问题是非常严重,然而享元模式可以解决这个问题,下面具体看看享元模式是如何去解决这个问题的。 二、享元模式的详
阅读全文
摘要:一、引言 在软件开发过程中,客户端程序经常会与复杂系统的内部子系统进行耦合,从而导致客户端程序随着子系统的变化而变化,然而为了将复杂系统的内部子系统与客户端之间的依赖解耦,从而就有了外观模式,也称作 ”门面“模式。下面就具体介绍下外观模式。 二、外观模式的详细介绍 2.1 定义 外观模式提供了一个统
阅读全文
摘要:一、引言 在软件开发过程中,我们经常会遇到处理简单对象和复合对象的情况,例如对操作系统中目录的处理就是这样的一个例子,因为目录可以包括单独的文件,也可以包括文件夹,文件夹又是由文件组成的,由于简单对象和复合对象在功能上区别,导致在操作过程中必须区分简单对象和复合对象,这样就会导致客户调用带来不必要的
阅读全文
摘要:一、引言 在软件开发中,我们经常想要对一类对象添加不同的功能,例如要给手机添加贴膜,手机挂件,手机外壳等,如果此时利用继承来实现的话,就需要定义无数的类,如StickerPhone(贴膜是手机类)、AccessoriesPhone(挂件手机类)等,这样就会导致 ”子类爆炸“问题,为了解决这个问题,我
阅读全文

浙公网安备 33010602011771号