AMD与CMD的异同?

1、从官方推荐的写法上面得出:

  • CMD ----- 依赖就近
  1. //CMD
  2. define(function(require,exports,module){
  3. var a = require('./a');
  4. a.doSomthing();
  5. });
  • AMD ----- 依赖前置
  1. //AMD
  2. define(['./a','./b'],function(a,b){
  3. //......
  4. a.doSomthing();
  5. //......
  6. b.doSomthing();
  7. })

当然AMD也支持CMD的写法。

2、执行顺序上

  • CMD是延迟执行
推崇的是as lazy as possible
 
  • AMD是提前执行
requireJS从2.0开始可以延迟执行
 

3、api设计角度

  • CMD的API推崇职责单一,没有全局的require
  • AMD的API默认是一个当多个用:比如require有全局的和局部的

扩展阅读:

1、玉伯的总结: http://www.zhihu.com/question/20351507

2、CMD:http://zhangyaochun.iteye.com/blog/1689112

3、AMD:http://zhangyaochun.iteye.com/blog/1688991

最新文章

  1. Android 获取系统相册中的所有图片
  2. grunt安装、配置、在webstrom中使用
  3. Springmvc整合tiles框架简单入门示例(maven)
  4. 那些年,我们开发的接口之:QQ登录(OAuth2.0)
  5. 如何由jdk的安装版本改成非安装版本
  6. 请教下 Yii 和 Ajax来验证用户名是否存在
  7. angularJS中XHR与promise
  8. centos 图形界面和命令行界面切换
  9. zhihu spark集群,书籍,论文
  10. lua编译出liblua.so
  11. BZOJ 1101: [POI2007]Zap( 莫比乌斯反演 )
  12. Oracle获取时间日期月份星期数
  13. Delphi中TApplication详解
  14. 英语学习app案列分析
  15. JavaScript 字符串与对象互换
  16. Javascript学习二---DOM元素操作
  17. JavaScript -DOM 编程艺术 2nd 完
  18. 阿里云.log
  19. time与datetime模块
  20. 【oracle入门】Oracle数据库11g企业版主要优点

热门文章

  1. linux下时间问题---date
  2. ssm中返回中文字符串时出现乱码?
  3. centos7 完整配置openvpn详情教程
  4. K-means算法的原理、优缺点及改进(转)
  5. (转)9 db2trc案例2(1,2)
  6. Android初识Helloworld
  7. 全网最详细的启动或格式化zkfc时出现java.net.NoRouteToHostException: No route to host ... Will not attempt to authenticate using SASL (unknown error)错误的解决办法(图文详解)
  8. Vue笔记:在项目中使用 SCSS
  9. 修改wireshark协议解析规则
  10. SpringCloud入门之eclipse新建maven子项目和聚合项目