上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 24 下一页

2017年9月16日

JAVA设计模式:桥接模式

摘要: 声明:转载请说明来源:http://www.cnblogs.com/pony1223/p/7530721.html 一、引出桥接模式 假设我们现在有一个项目,这个项目列就是我们是生产遥控器的厂商,承接各种遥控器的生产,比如我们现在承接的有LG、索尼的电视厂商的,那如果我们现在要设计的话,我们首先想到 阅读全文

posted @ 2017-09-16 11:39 pony1223 阅读(1446) 评论(1) 推荐(4) 编辑

重构改善既有代码设计--重构手法13:Inline Class (将类内联化)

摘要: 某个类没有做太多事情。将这个类的所有特性搬移到另一个类中,然后移除原类。 动机:Inline Class (将类内联化)正好于Extract Class (提炼类)相反。如果一个类不再承担足够责任、不再有单独存在的理由(这通常是因为此前的重构动作移走了这个类的责任),就挑选这个“萎缩类”的最频繁的用 阅读全文

posted @ 2017-09-16 10:24 pony1223 阅读(539) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法12:Extract Class (提炼类)

摘要: 某个类做了应该由2个类做的事。建立一个新类,将相关的字段和函数从旧类搬移到新类。 动机:一个类应该是一个清楚地抽象,处理一些明确的责任。但是在实际工作中,类会不断成长扩展。你会在这儿加入一些功能,在哪加入一些数据。给某个类添加一项新责任时,你会觉得不值得为这项责任分离出一个单独的类。于是,随着责任不 阅读全文

posted @ 2017-09-16 10:23 pony1223 阅读(525) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法11:Move Field (搬移字段)

摘要: 你的程序中,某个字段被其所驻类之外的另一个类更多的用到。在目标类建立一个新字段,修改源字段的所有用户,令它们改用新字段。 动机:在类之间移动状态和行为,是重构过程中必不可少的措施。随着系统发展,你会发现自己需要新的类,并需要将现有的工作责任拖到新的类中。在这个星期看似合理而正确的设计决策,到了下个星 阅读全文

posted @ 2017-09-16 10:21 pony1223 阅读(418) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法10:Move Method (搬移函数)

摘要: 你的程序中,有个函数与其所驻类之外的另一个类进行更多的交流:调用后者,或被后者调用。在该函数最常用引用的类中建立一个有着类似行为的新函数。将旧函数编程一个单纯的委托函数,或是将旧函数完全移除。 动机:“搬移函数”是重构理论的支柱。如果一个类有太多行为,或如果一个类与另一个类有太多合作而形成高度耦合, 阅读全文

posted @ 2017-09-16 10:18 pony1223 阅读(737) 评论(0) 推荐(0) 编辑

2017年9月14日

重构改善既有代码设计--重构手法 之重新组织你的函数总结

摘要: 前面讲了那么多的重构手法,估计学完后都会忘记,因此暂停下脚本,总结下,其实前面的所有重构手段,围绕一个主题:函数。即对函数的优化;为此首先一个函数里面代码很长,那么此时我们要做的就是提炼函数。 提炼函数的过程中,我们会产生新的函数,这个时候最重要的就是,是否有变量的引用,如果没有,那么这个函数很好提 阅读全文

posted @ 2017-09-14 22:58 pony1223 阅读(256) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法09:Substitute Algorithm (替换算法)

摘要: 你想要把某个算法替换为另一个更清晰地算法。将函数本体替换为另一个算法。 重构: 动机:解决问题有好几种方法。算法也是如此。如果你发现做一件事可以有更清晰地方式,就应该以较清晰地方式取代复杂的方式。“重构”可以把一些复杂东西分解为较简单的小块,但有时你就必须删除整个算法,代之以简单的算法。随着对问题有 阅读全文

posted @ 2017-09-14 22:45 pony1223 阅读(449) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法08:Replace Method with Method Object (以函数对象取代函数)

摘要: 你有一个大型函数,其中对局部变量的使用,使你无法釆用 Extract Method。 将这个函数放进一个单独对象中,如此一来局部变量就成了对象内的值域(field) 然后你可以在同一个对象中将这个大型函数分解为数个小型函数。 动机:局部变量的存在会增加函数分解的难度。如果一个函数之中局部变量泛滥,那 阅读全文

posted @ 2017-09-14 22:42 pony1223 阅读(383) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法07:Remove Assignments to Parameters (移除对参数的赋值)

摘要: 代码对一个 参数赋值。以一个临时变量取代该参数的位置。 重构后: 动机:要清楚“对参数赋值”这个说法的意思。如果你把一个名为foo的对象作为参数传给某个函数,那么“对参数赋值”意味着改变foo,使它引用另外一个对象。如果你在“被传入对象”身上进行什么操作,那没什么问题。这里只针对“foo被改而指向另 阅读全文

posted @ 2017-09-14 22:36 pony1223 阅读(400) 评论(0) 推荐(0) 编辑

重构改善既有代码设计--重构手法06:Split Temporary Variable (分解临时变量)

摘要: 你的程序有某个临时变量被赋值超过一次,它既不是循环变量,也不被用于收集计算结果。针对每次赋值,创造一个独立、对应的临时变量 重构后: 动机:临时变量有各种不同用途,其中某些用途会很自然的导致临时变量被多次赋值。“循环变量”和“结果收集变量”就是典型的例子:循环变量会随循环的每次运行而改变; 结果收集 阅读全文

posted @ 2017-09-14 22:29 pony1223 阅读(517) 评论(0) 推荐(0) 编辑

上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 24 下一页

导航