将一个复杂的程序依据一定的规则(规范)封装成几个块(文件), 并进行组合在一起
块的内部数据与实现是私有的, 只是向外部暴露一些接口(方法)与外部其它模块通信
根据平台划分
平台 | 规范 | 特性 |
---|---|---|
浏览器 |
AMD、CMD |
存在网络瓶颈,使用异步加载 |
非浏览器 |
CommonJS |
直接操作 IO,同步加载 |
根据同步异步划分
特性 | 规范 |
---|---|
同步加载 | CommonJS |
异步加载 | AMD、CMD |
AMD、CMD两大规范
规范 | 约束条件 | 代表作 |
---|---|---|
AMD | 依赖前置 | requirejs |
CMD | 就近依赖 | seajs |
避免命名冲突(减少命名空间污染)
更好的分离, 按需加载
更高复用性
高可维护性
原文:https://www.cnblogs.com/cjw0217/p/11188110.html