zoukankan      html  css  js  c++  java
  • 软件开发 —— 重构(refactor)

    0. 代码坏味道

    • Large Class,过大的类;Large method,过长的(成员)函数;

    1. 基本内涵

    在不改变代码外在行为的前提下对代码做出修改,以改进代码的内部结构的过程。 —— 《重构》(Martin Fowler)

    只是为什么要修改已经能够工作的内部结构呢?代码模块的能够工作不是唯一要求。每一个软件模块都具有三种职责。

    • 第一个职责是能运行起来所完成的功能,这也当然是模块得以存在的原因;
      • 完成功能;
    • 第二个职责是应对变化,几乎所有的模块在它们的生命周期中都要变化,开发者有责任保证这种改变应尽可能的简单。
      • 适应变化;
    • 第三个职责在于,和阅读它的人进行沟通。对该模块不熟悉的开发人员应该能够比较容易地阅读并理解它。
      • 可读性;

    2. 重构基本手段

    • Replace temp with Query,通过查询的方式替换临时变量:

      while (Rental aRental: rentals) {
          double tmp = 0;
          ...
          tmp = aRental.getCharge();
          total += tmp;
      }

      便可替换为:

      while (Rental aRental: rentals) {
          ...
          total += aRental.getCharge();
      }
  • 相关阅读:
    机器学习到底适合哪些人群?
    Window 下载Android系统源代码
    KeyguardSimPinView
    TrustManagerService.java
    ScrimState.java
    KeyguardSliceView.java
    博客
    name="verify-v1"是做什么用的
    基础练习 特殊回文数
    算法训练 P1103
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9421292.html
Copyright © 2011-2022 走看看