什么是构建工具
构建工具是一个把源代码生成可执行应用程序的过程自动化的程序(例如 Android App生成 apk)。构建包括编译、链接以及把代码打包成可用的或可执行的形式。
构建的自动化基本是编写或使一大部分任务自动执行的一个动作(而这些任务则是软件开发者的日常):
- 下载依赖;
- 将源代码编译成二进制代码;
- 打包生产二进制代码;
- 进行单元测试;
部署到生产系统。
原文链接:https://stackoverflow.com/questions/7249871/what-is-a-build-tool
什么是模块化?
一、模块化:指的就是遵循 commonjs 规范,解决不同 js 模块之间相互调用问题。
二、CommonJs:
1.A.js 文件中调用另一个 B.js文件,一定要在 A.js 中引入 B.js
require("B.js");
2.另一个被调用的 js,也就是 B.js 一定要对外提供接口。
module.exports = B;
过程如下:
B.js
var b = "Hell0, I'm module B.";
//暴露一个接口,与 b 对接。这个接口既可以是函数,也可以是对象,甚至是数组。
module.exports = b;
A.js
//实际过程中应当是 B.js 相对于 A.js 的路径,这比使用绝对路径去获取要规范得多。
var _b = require("./B.js");
//此时_b获得了B.js的接口,这个接口指向B.js的变量b
module.exports = b;//"Hell0, I'm module B."
这就是实现了一个简单的模块化工作方式:模块间相互调用,协同工作,实现某特定功能。
三、AMD规范: Async Module Define 异步模块声明
四、CMD规范: Common Module Define 公共模块声明
五、模块化的核心价值:解决不同文件之间的分工和调用问题,即依赖关系。
原文链接:https://segmentfault.com/a/1190000007439277
拓展链接:https://segmentfault.com/a/1190000008443074