[SE] 关于代码重构

1134阅读 0评论2011-11-03 web_surf
分类:项目管理

  1. Ref:
    重构-改善既有代码的设计
  2. 什么是重构(Refactoring)
    重构就是在不引入新功能的情况下,对代码进行改进。
  3. 重构的目的
    a)改进软件设计
    b)增强代码可读性
  4. 何时重构
    随时随地的应重构(但在期限快来临时,不要重构)。但应该找到一个平衡点,不要让重构无止境地进行下去。
    一般在重复写同样功能的代码时、Fix Bug时、代码审查时。
    但是重构的前提是现有代码能够在大部分情况下能正常运行;如果设计特别垃圾、或代码特别混乱,充满了错误,这时候应该重写而不是重构
  5. 重构的步骤
    a)建立自动测试用例,以验证重构后代码能正确工作。
  6. 如何重构
    • 命名规范
    • 代码对齐
    • 模块化
      a)功能相同或相近的放在同一个代码块、函数、类、文件中。
      b)降低模块间的耦合性
    • 消除冗余
      将冗余代码提取出来,放入一个独立的函数、独立的类、父类中
    • 分解过长的代码块
      代码块越小,功能越简单,修改越容易。
      a)将过长的代码块、函数,过大的类、文件,分解成功能相对独立的小模块
      b)将逻辑复杂的函数,分解成多个小的函数
      缺点:
      a)过于小的模块,会增加了理解代码的难度
      b)修改接口参数列表可能引起连锁反应
    • 解决长参数列表问题
      使用结构或类,减少参数个数
    • 优化注释
      a)删除垃圾注释
      b)代码最好能自注释
      c)引入解释性变量以省去注释;  int serviceStarted = xxx.getxxx();
  7. xxx

上一篇:[Java] Concurrent: Lock, ReadWriteLock, Condition
下一篇:[Java] Format & Parse: Date, Number, Decimal, Message