您的位置:首页 > 其它

《敏捷软件开发-原则、模式与实践》-第五章 重构

2018-03-04 16:32 513 查看
    本章的主要讲的是重构,但是仅仅给出了一个重构的例子以及简略说明了一些重构的方法。重构的知识我认为对于开发人员还是很有必要去单独去找一本书仔细去学习的。这里只大略讲一下本章中提到的一些知识点。
    本章站在第一视角,对一个素数产生的程序进行了重构。看到书中最原始的程序版本,我不禁冒出了一句:“什么鬼?!”。程序中竟然还有变量的名字为s,f这种完全没有意义的东西,甚至是一个函数写到了底。接下来的篇幅,作者描述了整个程序重构的一个过程,文中推荐了intellJ Idea的重构工具。主要的重构操作包括:将一些具有一定功能的代码提取出为新的函数,并注释该函数的功能,重新命名变量以及函数的名字,更改了部分程序的结构。其中令我印象比较深刻的一个细节是:作者甚至把if(isCrossed[i] == false)提取成一个notCrossed()函数,因为这样阅读性更好。我认为这个细节还是很值得学习的,要尽量站在阅读者的角度去写你的主要逻辑(虽然我觉得上述这个改动有点过头了,毕竟谁都知道括号里就是notCrossed的意思)。

    最后,也是最重要的一点:从头到尾阅读自己的代码。

    在本章的结尾,作者也解答了我看完本章心中的一个疑问,过多的把这些小的细节提取出函数难道不会对系统的性能产生影响吗?作者如此说:增加的可读性值得这些额外的花销,如果说会造成巨大的性能损失,可以等待日后证明了再说,我们先假设可以忽略这种性能损失。。

    也许有人认为程序能跑就行,重构的会过多的浪费时间,但是这是建立在程序不出错的基础上。毕竟现实中有很多bug,离职,需求变更。我们吃饭可以不刷碗,但是下次吃饭你就会后悔,因为你要花更多的时间清洁那些已经硬了的污垢。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: