包
- 包(Package)是 Node.js 最重要的支柱。
- Node.js 根据 CommonJS 规范实现了包机制,但不完全遵循。
- 包是在模块基础上更深一步的抽象,Node.js 的包类似于 C/C++ 的函数库或者 Java/.Net 的类库。它将某个独立的功能封装起来,用于发布、更新、依赖管理和版本控制。
- 开发中使用 npm 来解决包的发布和获取需求。
CommonJS 包规范和 Node.js 包实现
CommonJS 规范的包应该具备以下特征:
- package.json 必须在包的顶层目录下;
- 二进制文件应该在 bin 目录下;
- JavaScript 代码应该在 lib 目录下;
- 文档应该在 doc 目录下;
- 单元测试应该在 test 目录下。
Node.js 对包的要求并没有这么严格,要求如下:
- 包是一个目录,其中包含一个 JSON 格式的包说明文件 package.json;
- 但为了提高兼容性,建议在制作包的时候,严格遵守 CommonJS 规范。