`
i_am_birdman
  • 浏览: 274507 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

《重构》读书笔记

 
阅读更多
如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那就先重构那个程序,使特性的添加比较容易进行,然后再添加特性。



重构的第一步永远不变:为即将修改的代码建立一组可靠的测试环境。好的测试是重构的根本。


代码块越小,代码的功能就越容易管理,代码的处理和移动也就越轻松。


Extract Method要运用到Replace Temp with Query,Split Temporary Variable,Replace Method with Method Object,Remove assignments to Parameters,Substitute Algorithm.


如果临时变量承担多个责任,它就应该被替换为多个临时变量,每个变量只承担一个责任。同一个临时变量承担两件不通的事情,会令代码阅读者糊涂。

-------2011-07-24-17:16

从本质上说,对象的引用是按值传递的,因此我们可以修改参数对象的内部状态,但对参数对象重新赋值是没有意义的。(你吗看不懂啊)

-------2011-07-24-23:23
分享到:
评论

相关推荐

    《重构商业:产业互联网时代的商业模式重构》读书笔记模板.pptx

    《重构商业:产业互联网时代的商业模式重构》读书笔记模板.pptx

    如何改善代码的设计-读《重构》读书笔记.pdf

    如何改善代码的设计-读《重构》读书笔记.pdf

    代码整洁之道读书笔记.zip

    个人读书笔记,学习共享,希望每个苦恼于代码一坨坨混乱不堪的程序员都能学习. * 整洁代码的意义? 可读性,可维护性。 * 如何写出整洁代码? 1.只做一件事 2.不重复 3.有表达力 * 整洁代码的态度要求,要遵守...

    《重构_改善既有代码设计》观后感PPT

    【美】马丁福勒 著 是国际著名的面向对象分析设计、UML、模式等方面的专家,敏捷开发方法的创始人之一 重构_改善既有代码设计 软件工程领域的超级经典巨著,与另一巨著《设计模式》并称"软工双雄

    重构-第3章 代码的坏味道-读书笔记

    NULL 博文链接:https://aqxiebin.iteye.com/blog/1579688

    Java版水果管理系统源码-RefactorMindMap:重构第一版重构手法读书笔记思维导图

    虽然这本书已经出版了很久,但是在这20年左右时间里,重构的核心思想并没有过时,许多实际的重构手法并没有什么重大变化。让我觉得是时候考虑再版有几个原因:一个原因是,第1版里的代码已经很陈旧了,书里面还有...

    简明代码和代码重构思维导图

    clean code和重构的读书笔记,都是思维导图,方便记忆。

    《从零开始学架构》精华读书笔记

    《从零开始学架构》精华笔记 《从零开始学架构》这本书的内容主要包含以下几部分:1) 架构设计基础,包括架构设计相关概念、历史、原则、基本方法,让架构设计不再神秘;2) 架构设计流程,通过一个虚拟的案例,...

    阅读笔记-阿里妈妈AI智能文案.pdf

    阅读笔记-阿⾥妈妈AI智能⽂案 ⽂章⽬录 之前解决⽂本多样性的⽅法 1. 修改loss 主要代表是的相关研究,提出了新的⽬标函数 MMI 对 Seq2Seq进⾏建模。 原始的⽬标函数采⽤ log-likelihood 建模, 这个loss的问题是,...

    W3学习笔记--文献检索与有效阅读1

    标题摘要介绍难度2 详读并 记笔记可转述正标出不理解的名间 提问批判性思考改进重构作者的作到新 不是③献综述 学术观点 t 理论法1批判性归纳与评论堆砌只研究意

    Android代码-一个集Gank.Io,Rxjava示例,操作符,MD控件使用,各种好玩Ap示例的学习App。

    安卓艺术开发探索读书笔记,EffectiveJava读书笔记. 收集各大神博客以及安卓笔记,安卓面试笔记等方便手机端查看. 更新说明 v2.2.2 1.增加了一些最近在学习比较好的安卓大神的博客. 2.增加了来自GeniusVJR整理的安卓...

    leetcode题库-notes:笔记

    重构:改进现有代码的设计 – Martin Fowler 成为更好的编码员破解编码面试 - Gayle Laakmann McDowell 其他 软技能:软件开发人员生活手册 – John Sonmez OCP Oracle 认证专家 Java SE 11 开发人员完整学习指南 –...

    解析极限编程 拥抱变化

    本书是在《解析极限编程》第一版面世的5年之后,作者重新考虑,整理和重构XP的基础上写成的,也是作者不断参与软件开发项目的心路历程和对XP的许多新的深刻理解。  本书共分两部分。第1部分包括第1章至第16章,阐述...

    notes-refactoring:阅读笔记:Refactoring(福勒)

    重构-福勒(WIP) 我的学习笔记来自阅读《 第三章-代码中的不良气味1.神秘的名字函数,模块,变量和类的名称混乱。 确保他们清楚地传达他们的工作方式和使用方法。 2.重复的代码同一代码结构存在多个地方。 它需要在...

    Refactoring-summary-2nd-[removed]“重构摘要”

    我在阅读Martin Fowler的“重构:改进现有代码的设计(第二版)”时的个人笔记。 它仅包含一些基本概念作为我的理解。 如果您想了解更多,我强烈建议您购买该书。 如果您是发布者,并且认为此存储库不应该公开,请...

    java8源码-jdk-learn:jdk-学习

    重构,主要指修改已有的阅读笔记,极少情形下会修改源码 (注2) :recycle: (5) :pencil: 校对,主要指更正错别字、调整源码分组、修改源码排版等 :pencil2: (6) :check_mark_button: 发布测试文件 :white_check_mark:...

    阅读注意事项

    代码301阅读笔记 关于本课程所有当前和将来课程的网站 读# 阅读标题/链接 课01 SMACSS和响应式Web设计/ 第02类 jQuery,事件和DOM / 03年级 Flexbox和模板/ 04级 响应式网页设计和正则表达式/ 05级 Heroku部署/ ...

    婚庆管理系统java源码-LearnThread:学习Java多线程

    重构,主要指修改已有的阅读笔记,极少情形下会修改源码 (注2) :recycle: (5) :pencil: 校对,主要指更正错别字、调整源码分组、修改源码排版等 :pencil2: (6) :check_mark_button: 发布测试文件 :white_check_mark:...

    301-Reading-Notes

    代码301阅读笔记 在这里,您将找到有关代码301:中间软件开发的注释。 随时为此添加书签,以随时关注我的Notes更新。 表中的内容 读数字 阅读标题 阅读链接 01 SMACSS和响应式网页设计 02 jQuery,事件和DOM 03 ...

    brucezhaor.github.io:Bruce Zhao的技术博客-重构中..

    这个博客将用来记录在使用R过程中的笔记和感想,欢迎大家与我交流数据分析方面的知识〜 欢迎大家RSS订阅我的博客,只需要复制http://brucezhaor.github.io/feed.xml到邮箱或订阅阅读器之类的地方就可以了。 郑重声明...

Global site tag (gtag.js) - Google Analytics