美文网首页
【读书笔记】:《编写可维护的JavaScript》第09章 将配

【读书笔记】:《编写可维护的JavaScript》第09章 将配

作者: 龍天下 | 来源:发表于2020-11-20 18:46 被阅读0次

第09章 将配置数据从代码中分离出来

任何时候修改源代码都会有引入 bug 的风险,即使是只修改一些数据的值也会带来一些不必要的风险。数据不应该影响代码的正常运行。精心设计的应用应当将关键数据从主要的源码中抽离出来,这样我们修改数据时才更加放心。

9.1 什么是配置数据

// 不好的写法 将配置数据埋藏在代码里
function validata(value) {
    if (!value) {
        alert("Invalid value");
        location.href = "/error/invalid.php";
    }
}

function toggleSelected(element) {
    if (hasClass(element, "selected")) {
        removeClass(element, "selected");
    } else {
        addClass(element, "selected");
    }
}

这段代码中有三个配置数据片段。第一个是字符串“Invalid value”(非法的值),这个是用来给用户提示的。因为这个字符串可以被用户接触到,所有它可能会被很频繁地修改。第二个是 URL “/error/invalid.php”。在开发过程中,当架构变更时则很可能频繁修改URL。第三个是CSS的className “selected”。有三处都用到这个className,这也就意味着想要修改这个className则必须修改三处,很可能不小心丢掉了某处修改。

下面给出了一些配置数据的例子:

  • URL
  • 需要展现给用户的字符串
  • 重复的值
  • 设置(比如每页的配置项)。
  • 任何可能发生变更的值。

我们时刻要记住,配置数据时可发生变更的,而且你不希望因为有人突然想修改页面中的展示信息,而导致你去修改JavaScript源码。

9.2 抽离配置数据

将配置数据从代码中抽离的第一步就是将配置数据拿到外部,即将数据从JavaScript代码中拿掉:

// 好的写法 将配置数据抽离出来
var config = {
    MSG_INVALID_VALUE: "invalid value",
    URL_INVALID: "/error/invalid.php",
    CSS_SELECTED: "selected"
};

function validata(value) {
    if (!value) {
        alert(config.MSG_INVALID_VALUE);
        location.href = config.URL_INVALID;
    }
}

function toggleSelected(element) {
    if (hasClass(element, config.CSS_SELECTED)) {
        removeClass(element, config.CSS_SELECTED);
    } else {
        addClass(element, config.CSS_SELECTED);
    }
}

这段代码中,我们将配置数据保存在了 config 对象中。config 对象的每个属性都保存了一个数据片段,每个属性名都有前缀,用以表明数据的类型(MSG 表示展示给用户的信息,URL 表示网络地址,CSS 表示一个className)。当然,命名约定是个人偏好。

将配置数据抽离出来意味着任何人都可以修改它们,而不会导致应用逻辑出错。同样,我们可以将整个 config 对象放到单独的文件中, 整个对配置数据的修改可以完全和使用这些数据的代码隔离开来。

9.3 保存配置数据

现在流行的做法就是将配置文件存放到json格式的文件中。

相关文章

  • JavaScript检测原始值、引用值、属性

    上周写过一篇读书笔记《编写可维护的JavaScript》之编程实践,其中 第8章 避免『空比较』是博主在工作中遇坑...

  • 编写可维护的JavaScript

    基本的格式化 行的长度: 代码但行长度不超过80个字符 换行:超过单行最大字符限制,手动将一行拆成两行,下一行增加...

  • 编写可维护的javascript

    每个人都有固定的一套编码习惯,但在团队协作过程中,则需要每个人都遵守统一的编码约定和编程方法。 编程风格 基本的格...

  • 编写可维护的 JavaScript

    几乎每个程序员都有接手维护别人遗留项目的经历。或者,有可能一个老项目某一天又被重新启动。 通常情况下,接手老项目都...

  • 前端技术书

    入门级 《JavaScript高级程序设计》 《编写可维护的JavaScript》 《Javascript语言精粹...

  • <编写可维护的JavaScript>读书笔记

    这本书你将学到如何写出具有高维护性的代码,以便团队任何人都可以轻松地理解、修改或扩展你的代码。 “程序是写给人读的...

  • 编写可维护的JAVASCRIPT 读书笔记

    编写可维护的JAVASCRIPT 读书笔记 缩进层级:4个空格字符为一个缩进层级 行的长度:单行不超过80个字符 ...

  • 《编写可维护的javascript》读书笔记

    为什么要编写可维护的javascript? 软件生命周期80%的成本消耗在了维护上。 几乎所有的软件维护者都不是它...

  • <编写可维护的JavaScript>总结

    第一部分 编程风格 "程序是写给人读的,只是偶尔让计算机运行一下" --- Donald Knuth ...

  • 编写可维护的JavaScript——注释

    注释是代码中最常见的组成部分,他们是另一种形式的文档,也是很重要的一部分。 JavaScript支持两种不同类型的...

网友评论

      本文标题:【读书笔记】:《编写可维护的JavaScript》第09章 将配

      本文链接:https://www.haomeiwen.com/subject/blbvbktx.html