zoukankan      html  css  js  c++  java
  • roc-charts 开发笔记:单一来源原则

    今天在写代码的时候发现 class 中一些地方会有这样的写法:

        update(options) {
            this.elem.innerHTML = '';
            this.init(options || this.options);
        }

    一个方法中接收参数,如果调用此方法的时候没传这个参数则使用 class 内部的属性。

    逻辑上看来是没问题,但是会导致一个问题。

    如果这里出现 BUG 的,就需要去排查是传入的参数的问题还是内部的属性问题,无形中增加了复杂度。

    所以,要么改为统一使用参数的 options,要么统一使用 this.options,不要混用。

    现在鼓吹的函数式编程也是在一定程度上解决了这个问题,统一由入参决定出参而不使用外部变量。但是在面向对象编程中所有方法这样操作是不现实的,只能自己提高代码质量。

  • 相关阅读:
    9.4
    9.3
    9.2
    2016.9.1
    html,body
    prototype
    京东笔试题的一些小细节
    gulp安装过程中的问题。
    json
    双飞翼布局和圣杯布局
  • 原文地址:https://www.cnblogs.com/3body/p/13029544.html
Copyright © 2011-2022 走看看