Blockly 会使用一些工具和库进行开发,包括 Git、npm 和 Closure 编译器。本部分将提供每种工具的一些基本说明,并提供指向各个工具详细信息的链接。
我们通过脚本使用其中的许多工具。您可能不需要直接运行这些测试。知道名称可能仍然有助于调试或提交问题或功能请求。
Git
Git 是一个版本控制系统,用于跟踪和管理文件更改。
GitHub
GitHub 是一个用于对开源代码进行版本控制、协作和分发的托管平台。Git 会跟踪文件;GitHub 提供流畅的界面,供您查看代码、跟踪问题和查看更改历史记录。
使用入门:如果您刚开始接触 Git 和 GitHub,请参阅 GitHub 的quickstart教程,熟悉基础知识。
节点
Node.js 是在服务器(而不是在浏览器中)运行 JavaScript 的一种方式。npm(见下文)在 Node 上运行。
npm
npm 有两种形式:
- 我们用于安装依赖项和运行脚本的命令行工具。
- 我们在其中发布代码的在线注册表,以便其他开发者轻松使用 Blockly。
使用入门:安装 Node 和 npm。
Closure 编译器
Closure 编译器是一种用于加快 JavaScript 下载和运行速度的工具。我们使用它将所有 JavaScript 文件合并到单个库中,还会用它来检查语法和类型。
使用入门:您无需直接安装或运行 Closure 编译器:我们会通过 npm 安装并运行它。
了解详情:介绍 JavaScript 类型和类型注解的 Closure 编译器文档。
ESLint
ESLint 是一个静态分析器,用于查找 JavaScript 代码存在的问题。我们使用它在整个代码库中定义和强制执行一致的样式。代码方面的一些小问题(缺少分号、间距不一致等)通常称为 lint。当您向我们发送拉取请求时,ESLint 会自动运行。您也可以在本地运行。
使用入门:在 Blockly 核心和 blockly-samples 中,您可以使用 npm run lint
运行 ESLint。许多代码编辑器也具有 ESLint 集成,可在您输入时显示问题。
了解详情:每条 ESLint 规则都有一个文档页面,其中描述了该规则,并提供了正确和不正确的代码示例。
咖啡色
Mocha 是一种 JavaScript 测试框架。我们使用它在浏览器和 Node.js 上运行测试(针对无头用例)。
使用入门:在 Blockly 核心和 blockly-samples 中,您都可以使用 npm run test
运行 Mocha 测试。在 Blockly core 中,此功能还会运行其他测试。Blockly 核心的 Mocha 测试在 tests/mocha 目录中定义。
了解详情:Mocha 允许开发者定义钩子,让您可以为测试定义集中式设置和拆解函数。
奶茶色
Chai 是我们在 Mocha 测试中使用的断言库。
了解详情:Cai 具有多种“变种”语法,可让您轻松与现有项目集成。Blockly 使用 assert 变种。