没有合适的资源?快使用搜索试试~ 我知道了~
31天代码重构速成 你必须知道的重构技巧
需积分: 15 26 下载量 162 浏览量
2010-03-23
13:15:18
上传
评论 1
收藏 368KB PDF 举报
温馨提示
试读
63页
简介 重构是持续改进代码的基础。抵制重构将带来技术麻烦:忘记代码片段的功能、创建无法测试的代码等等。 而有了重构,使用单元测试、共享代码以及更可靠的无bug 的代码这些最佳实践就显得简单多了。 鉴于重构的重要性,我决定在整个8 月份每天介绍一个重构。在开始之前,请允许我事先声明,尽管我试 着对每个重构进行额外的描述和讨论,但我并不是在声明它们的所有权。 我介绍的大多数重构都可以在Refactoring.com 中找到,有一些来自《代码大全(第2 版)》,剩下的则是我 自己经常使用或从其他网站找到的。我觉得注明每个重构的出处并不是重要的,因为你可以在网上不同的 帖子或文章中找到名称类似的重构。 本着这一精神,我将在明天发布第一篇帖子并开始长达31天的重构马拉松之旅。希望你们能够享受重构并 从中获益。
资源推荐
资源详情
资源评论
31 天重构速成
你必须知道的重构技巧
2009-11-01
Sean Chambers, Simone Chiaretta
麒麟.NET 译
目录
简介 .............................................................................................................................................................. 5
Refactoring Day 1 : Encapsulate Collection ..................................................................................................... 6
Refactoring Day 2 : Move Method .................................................................................................................. 7
Refactoring Day 3 : Pull Up Method ............................................................................................................. 10
Refactoring Day 4 : Push Down Method ....................................................................................................... 12
Refactoring Day 5 : Pull Up Field................................................................................................................... 13
Refactoring Day 6 : Push Down Field ............................................................................................................ 14
Refactoring Day 7 : Rename(method,class,parameter) ................................................................................. 15
Refactoring Day 8 : Replace Inheritance with Delegation .............................................................................. 16
Refactoring Day 9 : Extract Interface ............................................................................................................ 18
Refactoring Day 10 : Extract Method ............................................................................................................ 20
Refactoring Day 11 : Switch to Strategy ........................................................................................................ 22
Refactoring Day 12 : Break Dependencies .................................................................................................... 27
Refactoring Day 13 : Extract Method Object ................................................................................................. 29
Refactoring Day 14 : Break Responsibilities .................................................................................................. 32
Refactoring Day 15 : Remove Duplication ..................................................................................................... 34
Refactoring Day 16 : Encapsulate Conditional............................................................................................... 36
Refactoring Day 17 : Extract Superclass ........................................................................................................ 37
Refactoring Day 18 : Replace exception with conditional .............................................................................. 38
Refactoring Day 19 : Extract Factory Class .................................................................................................... 40
Refactoring Day 20 : Extract Subclass ........................................................................................................... 42
Refactoring Day 21 : Collapse Hierarchy ....................................................................................................... 43
Refactoring Day 22 : Break Method .............................................................................................................. 44
Refactoring Day 23 : Introduce Parameter Object ........................................................................................ 47
Refactoring Day 24 : Remove Arrowhead Antipattern .................................................................................. 48
Refactoring Day 25 : Introduce Design By Contract checks ........................................................................... 50
Refactoring Day 26 : Remove Double Negative ............................................................................................. 52
Refactoring Day 27 : Remove God Classes .................................................................................................... 54
Refactoring Day 28 : Rename boolean method............................................................................................. 56
Refactoring Day 29 : Remove Middle Man ................................................................................................... 57
Refactoring Day 30 : Return ASAP ................................................................................................................ 59
Refactoring Day 31 : Replace conditional with Polymorphism ...................................................................... 61
附录 A ......................................................................................................................................................... 63
简介
重构是持续改进代码的基础。抵制重构将带来技术麻烦:忘记代码片段的功能、创建无法测试的代码等等。
而有了重构,使用单元测试、共享代码以及更可靠的无 bug 的代码这些最佳实践就显得简单多了。
鉴于重构的重要性,我决定在整个 8 月份每天介绍一个重构。在开始之前,请允许我事先声明,尽管我试
着对每个重构进行额外的描述和讨论,但我并不是在声明它们的所有权。
我介绍的大多数重构都可以在 Refactoring.com 中找到,有一些来自《代码大全(第 2 版)》,剩下的则是我
自己经常使用或从其他网站找到的。我觉得注明每个重构的出处并不是重要的,因为你可以在网上不同的
帖子或文章中找到名称类似的重构。
本着这一精神,我将在明天发布第一篇帖子并开始长达 31 天的重构马拉松之旅。希望你们能够享受重构并
从中获益。
剩余62页未读,继续阅读
资源评论
zjjmsjsy
- 粉丝: 2
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功