zoukankan      html  css  js  c++  java
  • RequireJS和seaJS的区别与联系

    RequireJS和seaJS的区别与联系联系:都是模块加载器,倡导模块化开发理念,核心价值是让 JavaScript 的模块化开发变得简单自然。

                 RequireJS(除了是模块加载器,还是文件加载器) seaJS
    遵循的规范不同 遵循 AMD(异步模块定义)规范,预执行,相对来讲解析模块时间短,停顿次数少。也就是RequireJS会先尽早地执行(依赖)模块, 相当于所有的require都被提前了, 而且模块执行的顺序也不一定100%按照代码中出现的顺序。 遵循 CMD (通用模块定义)规范,可以像 Node.js 一般书写模块代码,可以说是浏览器端的node.js懒执行,解析模块时间长,停顿次数多,但是,执行模块的顺序也是严格按照模块在代码中出现(require)的顺序
    插件机制 RequireJS 采取的是在源码中预留接口的形式,插件类型比较单一 Sea.js 采取的是通用事件机制,具有丰富的可扩展接口,插件类型更丰富
    定位  想成为浏览器端的模块加载器,同时也想成为 Rhino / Node 等环境的模块加载器  则专注于 Web 浏览器端,同时通过 Node 扩展的方式可以很方便跑在 Node 环境中
    推广理念 RequireJS 在尝试让第三方类库修改自身来支持 RequireJS,目前只有少数社区采纳 Sea.js 不强推,采用自主封装的方式来“海纳百川”,目前已有较成熟的封装策略
     对开发调试的支持 RequireJS 无这方面的明显支持。

    Sea.js 非常关注代码的开发调试,有 nocache、debug 等用于调试的插件

     官方文档以及其他  文档更更丰富,基本属于拿来就能用的DEMO。没有把CSS作为模块的一部分来看。维护和使用的人相对比较多。  需要自己读文档研究折腾。
      如果说RequireJS 是 Prototype 类库的话  Sea.js 致力于成为 jQuery 类库,Sea.js 可运行在 Mobile 端

     

  • 相关阅读:
    Eclipse/MyEclip中使用复制粘贴功能很卡
    ActiveMQ使用教程
    ActiveMQ常见消息类型
    推荐12个最好的 JavaScript 图形绘制库
    eclipse 打包springboot成jar
    CentOS 7下ELK(6.2.4)++LogStash+Filebeat+Log4j日志集成环境搭建
    elasticsearch启动常见错误
    使用haproxy实现负载均衡集群
    linux配置mysql5.6 主主复制同步
    力扣No.102 二叉树的层次遍历
  • 原文地址:https://www.cnblogs.com/lihongfei0602/p/4067606.html
Copyright © 2011-2022 走看看