摘要: LongMethod(过长函数)定义:函数太长,逻辑混乱,临时变量太多等。。影响:可读性差,引起其它坏味道导致维护成本高。目标:分解。增强可读性。有个很有趣的例子:问:要把大象装冰箱里分几步?答:分三步。。这个例子其实很有逻辑性性,想要完成一件事情,把这件事情分成一小步一小步去做。为什么呢?“不积跬步,难以至千里。”好像有点歪楼了。。下面看来看看这个函数:public bool GetMatchedPairResult(string boyNumber, string girlNumber) { //get boy number last four digi... 阅读全文
posted @ 2012-09-11 19:12 花房姑娘 阅读(1358) 评论(0) 推荐(4) 编辑
摘要: FeatureEnvy(依恋情结)官方的:函数对某个类的兴趣高过对自己所处类的兴趣。影响:数据和行为不在一处,修改不可控。Demo:媒婆、一小伙、一小姑娘场景一:函数的全部数据都来自于另外一个类媒婆、小伙先出场public class Boy { public string Name { get; set; } public int Age { get; set; } public string Adress { get; set; } public bool IsSinglehood { get; set; } pu... 阅读全文
posted @ 2012-09-03 19:16 花房姑娘 阅读(1925) 评论(0) 推荐(2) 编辑
摘要: Duplicated Code(重复代码)影响:程序中到处都是相同结构的表达式。若想修改此表达式,需要修改多个地方。目标:相同表达式合并成一起,避免多处修改。降低修改成本。下面是常见的几种。如果有没涉及到的Duplicated Code 欢迎补充。1、同一个类有相同的表达式。Demo:一个DepartmentControllerpublic class DepartmentController { DepartmentRepository Repository = new DepartmentRepository(); public string Sa... 阅读全文
posted @ 2012-09-02 14:38 花房姑娘 阅读(1079) 评论(0) 推荐(3) 编辑