美文网首页
《重构》

《重构》

作者: 吧啦啦小汤圆 | 来源:发表于2017-12-05 23:27 被阅读36次

第一章 重构

所谓重构是这样一个过程:

在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构

重构前: 先检查即将修改的代码是否有一组可靠的测试机制,避免引入bug,尽管遵循重构手法,但是人毕竟是人,毕竟可能犯错。

重构技术就是以小步的方式修改程序,如果犯下错误,也很容易发现它。

任何一个傻瓜都能写出计算机可以理解的代码,唯有写出人类容易理解的代码,才是优秀的程序员。

第二章 重构原则

重构提供了一种高效且受控的代码整理技术。
重构的目的:使得软件更容易被理解和修改。

kent beck: 我不是个伟大的程序员,我只是个有着一些优秀习惯的好程序员。

为何重构?

  • 改进软件设计 : 消除重复,修改容易;保持代码既有的设计。
  • 使软件更容易被理解:然代码精确的表达出它干的事;早期重构帮助理解
  • 重构帮助找到bug

何时重构?

  • 理解代码时,试着想想难呢过不能冲过它
  • 代码的设计无法帮助我轻松添加我所需要的功能
  • 修补错误时,有bug,却不能一眼看出来
  • 复审代码时
    • code review 的好处:
      • 改善开发状况
      • 在开发团队中传播知识:
        • 新知识的传播
        • 有经验的开发者把知识传播给欠缺经验的人
      • 让更多的人有机会提出有用的意见,编写清晰的代码
  • 结对编程时

为什么要重构?

程序有两面价值:“今天可以为难你做什么?” 和“明天可以为你做什么?”

  • 难以阅读的程序,难以修改
  • 逻辑重复的程序,难以修改
  • 添加新行为时需要修改已有代码的程序,难以修改
  • 带复杂条件逻辑的程序,难以修改

第三章

  • 消除重复代码
  • 避免过长参数
    • 采用对象封装参数列表
  • 避免过大的类
  • 避免 散弹式修改
  • 将数据和对数据的操作行为包装在一起(依恋情节)
  • 总是在多个类或者方法中同时出现的几个字段(参数),可以将它们提炼到一个独立的对象中
  • 避免异曲同工的类,对其重命名,或者抽方法到类中
  • 代码即注释,如果需要注释的,就应该先尝试重构,试着让所有的注释变得多余

未完待续。。。。!

相关文章

  • 代码重构专题(转载)

    代码重构(一):函数重构规则代码重构(二):类重构规则代码重构(三):数据重构规则代码重构(四):条件表达式重构规...

  • 重构代码之美

    什么是重构; 为什么要重构; 什么时候重构; 怎样避免重构的现象; 重构的难点在哪里; 如何来实施代码重构; 重构...

  • 30 - 重构之代码解耦

    重构可以分为大规模高层重构(简称“大型重构”)和小规模低层次重构(简称“小型重构”)。大型重构是对系统、模块、代码...

  • 重构、重构、重构

    【待完成】

  • 重构

    为何重构? 1.重构改进软件设计 2.重构使软件更容易理解 3.重构帮助找到bug 4.重构提高编程速度 何时重构...

  • Effective Refactoring in C++ (二)

    如何实施重构 稍微复杂的重构,基本都是由一系列的重构手法组成. 《重构》一书中针对各种重构场景,给出了大量的重构手...

  • 代码重构流程

    目录 重构功能名称 需求整理 需求评审 设计方案 设计评审 代码重构 重构验收 汇总意见 重构功能名称 待重构功能...

  • 把《重构》变成工具书

    前言一、把它变成工具书二、概述何谓重构注释为何重构何时重构重构、架构和YAGNI重构与软件开发过程重构与性能如何重...

  • 《重构》一书总结(二)

    《重构》一书总结(二) 重构的重点,在于对那些代码进行重构,如果重构不当,反而适得其反。 重构代码终结如下 1.D...

  • 《重构》一书经典总结(一)

    《重构》一书经典总结(一) 为何重构 1.重构改进软件设计2.重构使软件更容易理解3.重构提交稿编程速度4.重构帮...

网友评论

      本文标题:《重构》

      本文链接:https://www.haomeiwen.com/subject/jamhixtx.html