`
nbkangta
  • 浏览: 430524 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

《重构——改善既有代码的设计》读书笔记

    博客分类:
  • Java
 
阅读更多

最近公司开展读书月活动,免费提供书籍要求读完上交读书笔记一篇

 

我借了《重构——改善既有代码的设计》,在这边小小做下笔记

 

重构手法:

1、Extract Method 提炼函数

     必须考虑局部变量的使用,基本分为1)没有局部变量影响 2)局部变量在抽取代码段中只是读取 3)局部变量在代码段中有修改这3中情况

做法:

      创造一个新函数,根据这个函数的意图来对它命名(以它做什么命名,而不是以它怎么做命名)

将提炼出的代码从源函数复制到新建的目标函数中

仔细检查提炼出的代码,看看其中是否引用了“作用域限于源函数”的变量(包括局部变量和源函数参数)

检查被提炼代码段,看看是否有任何局部变量的值被它改变

将被提炼代码段中需要读取的局部变量,当做参数传给目标函数

处理完所有局部变量之后,进行编译

在源函数中,将被提炼代码段替换为对目标函数的调用

编译测试

 

2、Inline Method 内联函数

     这种重构是清楚间接引用带来的复杂度的手法,目标函数必须足够简单,源函数已经足以说明函数用途

做法:

检查函数,确定它不具有多态性

找出这个函数所有被调用点

将这个函数的所有被调用点都替换为函数主题

编译测试

删除该函数的定义

 

3、Inline Temp 内联临时变量

做法:

检查给临时变量赋值的语句,确保等号右边的表达式没有副作用

如果这个临时变量并未被生声明为final,那就将它声明为final,然后编译

找到该临时变量的所有引用点,将他们替换为“为临时变量赋值”的表达式

每次修改后,编译并测试

修改完所有引用点后,删除该临时变量的声明和赋值语句

编译测试

 

4、Replace Temp with Query 以查询取代临时变量

分享到:
评论

相关推荐

    重构——改善既有代码的设计.pdf

    重构——改善既有代码的设计,重构高效,可复用代码。

    重构——改善既有代码的设计

    重构——改善既有代码的设计重构——改善既有代码的设计重构——改善既有代码的设计重构——改善既有代码的设计

    《重构——改善既有代码的设计》第一个案例代码

    《重构——改善既有代码的设计》是Martin Fowler的经典著作,它为软件开发人员提供了一套系统化的重构技术,旨在提升代码质量、可读性和维护性。在这个案例中,我们聚焦于一个影片出租点的程序,通过逐步的重构过程...

    重构——改善既有代码的示例代码

    大部分取自《重构——改善既有代码》一书,部分取自其他书籍或者自编。 每一项重构对应一个package。 CodeRefactor 工程是重构前的代码 CodeRefactorExcise 是重构后的代码 里面的重构步骤与《重构》一书微有差异...

    重构——改善既有代码的设计 pdf

    《重构——改善既有代码的设计》是软件开发领域的一本经典著作,由马丁·福勒(Martin Fowler)撰写。这本书深入探讨了如何通过一系列微小、系统化的步骤来改进已有的代码结构,提升代码质量,同时保持软件功能的...

    Martin Fowler《重构——改善既有代码设计》(中文版)

    《重构——改善既有代码设计》是软件工程领域的一部经典著作,作者Martin Fowler,该书与《设计模式》被并称为软件工程的双雄。《重构》一书的主旨在于向读者展示重构的过程与方法,即通过一系列小的、有步骤的改变...

    [免费PDF高清]重构-改善既有代码的设计+中文版. 侯捷.熊节.rar

    《重构:改善既有代码的设计》是由马丁·福勒(Martin Fowler)所著的一本经典IT著作,中文版由侯捷和熊节翻译。这本书详细探讨了软件开发过程中的一个重要环节——重构,即在不改变软件外部行为的前提下,通过改进...

    重构——改善既有代码的设计 中文完整版

    晰地揭示了重构的过程,解释了重构的原理和最佳实践方式,并给出了何时以及何地应该开始挖掘代码以求...《重构:改善既有代码的设计》提出的重构准则将帮助你一次一小步地修改你的代码,从而减少了开发过程中的风险。

    重构——改善既有代码的设计 中文版

    重构——改善既有代码的设计 中文版pdf

    重构-改善既有代码的设计

    一直很喜欢重构这本书,但是由于自己记性不太好,书看过之后其中的方法总是记不住,于是想如果有电子版的重构书就好了,工作中遇到重构的问题可以随时打开查阅。在网上搜索了许久,发现重构这本书有英文chm版本的,...

Global site tag (gtag.js) - Google Analytics