b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

微服务架构 云计算 重构 -改变既有代码的设计 ---- 笔记(5)

电脑杂谈  发布时间:2018-10-13 16:05:07  来源:网络整理

每次你做一小部分修改时,都不的不需要做大量的修改在很多不同的类中

某个方法似乎在另外的类的兴趣高于自己所处的类

一堆数据杂糅在一起(字段, 参数)

使用基本类型替代小对象

当程序中出现很多 switch 语句在很多地方,使用多态来进行替换

每当你为一个类增加一个子类,你不得不为另一个类增加相应的一个子类

当一个类不足与为其自身买单它就应该被删除

所有的钩子和特殊情况处理那些不需要的

一个临时变量仅仅为某种特殊情况做而定,这样的代码让人难以理解

当一个类请求调用一个对象,但是这个类又在调用其他的方法

当一个对象委托大部分功能,开发中可能会过度的使用委托模式,导致某个类中的方法大都委托给其他方法处理

当两个类过度的亲密,需要将其拆散

类的方法过度相似

当我们使用外部依赖库时

不要操作数据类,我们通过封装它的不变性

子类不想使用父类的方法

当一个方法使用过度的注释解释其中的逻辑时,说明这个方法应该被重构了。

你可以将一些代码组合起来,然后放到一个方法中


    void printOwing(double amount) {
        printBanner();
        //print details
        System.out.println ("name:" + _name);
        System.out.println ("amount" + amount);
    }

to


    void printOwing(double amount) {
        printBanner();
        printDetails(amount);
    }

    void printDetails (double amount) {
        System.out.println ("name:" + _name);
    System.out.println ("amount" + amount);
    }

动机

增加代码被复用的机会

* 阅读方法就像阅读一系列声明一样简单


    void printOwing(double previousAmount) {
        Enumeration e = _orders.elements();
        double outstanding = previousAmount * 1.2;
        printBanner();

        // calculate outstanding
        while (e.hasMoreElements()) {
            Order each = (Order) e.nextElement();
            outstanding += each.getAmount();
        }
        printDetails(outstanding);
    }

to


    void printOwing(double previousAmount) {
        printBanner();
        double outstanding = getOutstanding(previousAmount * 1.2);
        printDetails(outstanding);
    }

    double getOutstanding(double initialValue) {
        double result = initialValue;
        Enumeration e = _orders.elements();

        while (e.hasMoreElements()) {
            Order each = (Order) e.nextElement();
            result += each.getAmount();
        }
        return result;
    }


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-89441-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 余小倩
      余小倩

      除了总吨位超过外

    • 杨文林
      杨文林

      只要他不像那样耍赖坐滩

    热点图片
    拼命载入中...