重构-改善既有代码的设计
名称 | 动机 | 输入 | 输出 |
Extract Method |
函数过长 不方便阅读 |
简短而良好的函数命名 需对局部变量进行处理 |
函数复写容易 阅读性增强 复用机会变大 |
Inline Method |
内部代码和函数名称 一样清晰易读 一组不合理的函数 重新重构 |
检查函数,确定不具有多态性; 函数被调用点 |
间接性降低 |
名称 | 动机 | 输入 | 输出 |
Inline Temp |
一个临时变量 仅被赋值一次 阻碍重构 |
将变量先赋值成final, 以确定是否只赋值一次 |
简介 |
Replace Temp with Query |
临时变量的临时性 驱使生成长的函数。 临时变量可以被所有函数访问 |
将表达式替换为一个独立函数 临时变量只赋值一次 |
便于重构 |
Introduce Explaining Variable |
复杂表达式转换为一个临时变量 易于阅读 |
一个final 变量 | 易于阅读 |
Split Temporary Variable |
一个临时变量被赋值多次 每个变量只负责一个责任 |
针对每次赋值,创作一个独立,对应的临时变量 | 多个责任的变量,会使用户糊涂 |
Move Method |
检查sourceclass 关联的属性; 检查sourceclass的superclass 和subclass targetclass 声明 如何从source正确引用 target Object; |
source method 变成委托函数 需调整对 source method 的调用,变成对target method的调用 |
降低耦合 |
Move Field |
某个field频繁被另一class用到 需确定何时在source object中使用target object source filed ---> target |
class 函数专一 高内聚 |
|
本文转自 randy_shandong 51CTO博客,原文链接:http://blog.51cto.com/dba10g/414923,如需转载请自行联系原作者
重构-改善既有代码的设计相关推荐
- 重构—改善既有代码的设计
概述 1.1 参考资料 <重构-改善既有代码的设计>读后总结 <重构改善既有代码的设计> 22种代码的坏味道,一句话概括 1.2 何谓重构 首先要说明的是:视上下文不同,重构的 ...
- PHP 杂谈《重构-改善既有代码的设计》之二 对象之间搬移特性
思维导图 索引: Ø Move Method(搬移函数) Ø Move Field (搬移值域) Ø Extract Class (提炼类) Ø Inline Class (将类内联化,就是把当前的类 ...
- 『重构--改善既有代码的设计』读书笔记----序
作为C++的程序员,我从大学就开始不间断的看书,看到如今上班,也始终坚持每天多多少少阅读技术文章,书看的很多,但很难有一本书,能让我去反复的翻阅.但唯独『重构--改善既有代码的设计』这本书让我重复看了 ...
- PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据
介绍 承接上文的PHP 杂谈<重构-改善既有代码的设计>之 重新组织你的函数继续重构方面的内容. 这章主要针对数据的重构. 1.争论的声音--直接访问Field还是通过函数(Accesso ...
- 重构 改善既有代码的设计:代码的坏
以下内容来自<<重构 改善既有代码的设计>> 一.什么是重构 所谓重构(Refactoring)是这样一个过程:在不改变代码外在行为的前提下,对代码做出修改以改进程序的内部结构 ...
- 《重构-改善既有代码的设计》-第1例:租赁影片(2)
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 上接 重构-改善既有代码的设计-第1例:租赁影片(1) 2 运用多态取代与价格相关的条件逻辑 2 ...
- 《重构-改善既有代码的设计》-第1例:租赁影片(1)
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 买了<重构 - 改善既有代码的设计 >一书,一直没有好好看,大致过了下也觉得只是有点点印 ...
- 实践提高《重构改善既有代码的设计第2版》PDF中文+PDF英文+对比分析
重构是编程的基础,是在不改变外部行为的前提下,有条不紊地改善代码.编程爱好者都知道,Martin Fowler 的<重构:改善既有代码的设计>已经成为全球有经验的程序员手中的利器,既可用来 ...
- 重构改善既有代码的设计(github源码)
refactoring improving the design of existing code(重构改善既有代码的设计) https://github.com/CoderDream/refacto ...
- 重构:改善既有代码的设计(软件开发的不朽经典)
重构:改善既有代码的设计(软件开发的不朽经典) 基本信息 作者: (美)Martin Fowler 译者: 熊节[同译者作品] 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:978 ...
最新文章
- linux kernel内存回收机制
- mysql中出现 xC4 xDD_mysql数据库调优总结(二)
- 程序员微信头像_这才是程序员的内心独白
- idea 引入oracle驱动并打包_IDEA下从零开始搭建SpringBoot工程
- 使用PYTHON统计项目代码行数
- 谁说IT男没有审美?怀揣5000元巨款,我们这样改变生活
- 转载牛人的ASP.NET Cookies简单应用 记住用户名和密码
- 详介 MQTT 服务器的搭建与客户端连接
- MPQ Storm库 源码分析 一
- 【艾特淘】淘宝保证金催缴单在哪里,要怎么交?
- Endnote实用快捷键
- docker Docs
- (附源码)计算机毕业设计ssm城市智能公交系统
- 多线程之互斥锁(mutex)的使用方法
- 20155305乔磊2016-2017-2《Java程序设计》第十周学习总结
- open write read 函数
- mysql 中文拼音排序
- 自己动手写SGD算法
- .Net Framework 3.5在Windows 10的安装(2020.3.16可行)
- 开源文档推荐,支持docker私有化部署