
软件重构
文章平均质量分 85
Chaoswx
好学近乎知!
展开
-
重构 改善既有代码的设计——代码的坏味道
了解并熟练重构的机制,并不代表我们知道何时应该重构;前者可以从书中学习到,但是何时应该重构就是一个实践问题,需要我们 培养自己的判断力,知道何时何处如何重构;1.Duplicated Code(重复代码)A.同一个类中不同方法包含相同的表达式:把相同的表达式提炼成一个方法,在包含表达式的地方直接调用该方法;B.互为兄弟的类包含相同的表达式:把相同的表达式提炼成一个方法,并放到基类中;原创 2016-09-09 10:55:23 · 2127 阅读 · 0 评论 -
重构 改善既有代码的设计——重构列表
一.重构的记录格式每个重构手法可分为5个部分: 1.名称,构建重构词汇列表,名称当然是很关键的了,要充分的表达出重构的核心关键; 2.概要:介绍重构手法的功能,以及应用场景;便于我们查找重构手法;包括三个部分:A.一句话介绍重构能解决的问题B.一段简短陈述,介绍你应该做的事C.一副速写图,简单展现重构前后示例,可以是一段代码或UML图(以一种最能体现重构本质的方式) 3原创 2016-09-13 10:28:25 · 1245 阅读 · 0 评论 -
重构 改善既有代码的设计—— 重新组织方法
一.Extract Method(提炼方法)1.动机:如果函数过长或代码段需要注释才能理解,就将这段代码放到独立函数中;有几个原因造成我喜欢简短而命名良好的的方法:A.函数粒度小,复用几率高B.函数粒度小,复写容易C.函数粒度小,使高层函数读起来向一系列注释 常常有人在问,一个方法长度多长才算合适。在我看来,方法多长不是问题,关键是方法名和方法体之间的语义距离。如果提炼可以原创 2016-09-13 16:41:50 · 1472 阅读 · 0 评论 -
重构 改善既有代码的设计——重构原则
1.何谓重构?答:A.重构(名词意义):对软件内部结构的调整,目的是在不改变软件可观察行为的前提下,提高其理解性,降低其修改成本;B.重构(动词意义):使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构;总结:为了更容易理解和修改软件,在不改变软件功能的前提下,调整软件结构;重构的两种思维:在软件开发的过程中,编码和重构经常会交叉,因为二者是两种不同思维方式原创 2016-09-08 11:52:19 · 7058 阅读 · 0 评论