`
kuwoleft
  • 浏览: 1076463 次
文章分类
社区版块
存档分类
最新评论

31天重构指南

 
阅读更多

转发自www.infoq.com上的一篇文章。原文地址:http://www.infoq.com/cn/news/2009/09/31-days-of-refactoring

作者 赵劼 发布于 2009年9月6日 上午11时52分

代 码重构(refactoring)是指在保持程序外部表现不变的情况下改变其内部实现的做法。重构的目标主要是改进程序的内部质量,例如增加代码可读性, 简化代码结构,增强可维护性、性能或扩展性。即使初期设计得再合理,但由于软件发展本身不可能是完美的,因此重构作为改进代码质量的手段,会持续运用在在 软件开发过程中。

重构领域最著名的资源莫过于Martin Fowler所著的《重构:改善既有代码的设计 》,此外,Martin还维护了一个重构资源站点 ,用于随时补充重构有关的信息资料。

八月份,Sean Chambers 在博客中编写了一系列描述重构方式的文章。Sean指出,这些重构方式主要来源于Martin的重构资源站点、代码大全(第二版) 以及平时由他自己收集的互联网资源,他的目的是为各种重构方式提供了一些额外的描述及相关的讨论。

以下是这31篇文章列表:

  1. 封装集合
  2. 移动方法
  3. 提升(pull up)方法
  4. 降低(push down)方法
  5. 提升字段
  6. 降低字段
  7. 改名(方法,类,参数)
  8. 使用委派代替继承
  9. 提取接口
  10. 提取方法
  11. 使用策略类
  12. 分解依赖
  13. 提取方法对象
  14. 分离职责
  15. 移除重复内容
  16. 封装条件
  17. 提取父类
  18. 使用条件判断代替异常
  19. 提取工厂类
  20. 提取子类
  21. 合并继承
  22. 分解方法
  23. 引入参数对象
  24. 分解复杂判断
  25. 引入契约式设计
  26. 避免双重否定
  27. 去除上帝类
  28. 为布尔方法命名
  29. 去除中间人对象
  30. 尽快返回
  31. 使用多态代替条件判断

Sean表示,他打算将这些重构内容制成电子书发布在LosTechies网站 上。如果您对这些重构方式感兴趣,可以下载代码 并做进一步的尝试。

分享到:
评论

相关推荐

    NET 31天重构指南

    31天重构指南31天重构指南31天重构指南31天重构指南31天重构指南

    31天重构指南--代码重构(refactoring)

    代码重构(refactoring)是指在保持程序外部表现不变的情况下改变其内部实现的做法。重构的目标主要是改进程序的内部质量,例如增加代码可读性,简化代码结构,增强可维护性、性能或扩展性。即使初期设计得再合理,...

    31天重构指南 《31Days Refactoring》中文版

    Sean Chambers的31 Days of Refactoring中文版,麒麟.Net翻译。

    31天重构速成

    31天重构速成,小巧实用的31种代码重构.

    [免费高清PDF]31天重构系列笔记.rar

    [免费高清PDF]31天重构系列笔记.rar [免费高清PDF]31天重构系列笔记.rar

    31天重构.pdf

    31天重构

    31天代码重构快速优化代码

    《31天重构速成》该系列文章通过31个示例介绍了31个重构条目。其中大多数重构都可以在Refactoring.com中找到,有一些来自《代码大全(第2版)》,剩下的则是作者平时经常使用或收集自其他互联网资源。

    31天重构速成_中文版.pdf

    31天重构速成_中文版,通过实例来讲解如何运用模式。

    31天重构学习笔记中文版

    31天重构学习笔记中文汉化版,非常好的编程规范书籍

    重构避坑指南2.txt

    重构防坑指南,重构防坑指南,重构防坑指南,重构防坑指南,

    31天代码重构速成 你必须知道的重构技巧

    简介 重构是持续改进代码的基础。抵制重构将带来技术麻烦:忘记代码片段的功能、创建无法测试的代码等等...本着这一精神,我将在明天发布第一篇帖子并开始长达31天的重构马拉松之旅。希望你们能够享受重构并 从中获益。

    31天重构 c# 英文

    这个是一本描述如何重构的书.重构的一些经验, 虽然是英文,但是直接看代码也是不错的

    工程师必知的代码重构指南

    该文档给工程师提供非常好的代码重构指南,来指导工程师为什么,怎样进行代码重构

    31天重构学习笔记.docx

    这个重构在微软的代码库也经常遇到。比如最经典的属性对字段的封装就是一个很好的例子,那么下面我们将看到对集合的封装,如下代码所示,调用端只需要一个集合的信息,而我们则提供了一个IList的集合,大家都知道...

    31天 重构速成 pdf

    不是我写的,当然希望我有这个能力。是在豆丁网上看到的,觉得不错,就下下来,跟大家分享分享。希望对你有所帮助。

    31重构 模式与重构 MVC实例

    两本电子书《31天重构速成》《重构与模式》全是pdf的,其中第二本是英文的。 还有我写的一套.net MVC文章。 打包赚分儿。

Global site tag (gtag.js) - Google Analytics