扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:meizz 来源:CSDN 2008年1月20日
关键字: 评价 framework JavaScript
近日刚好在无忧里看到一篇讨论脚本框架的帖子,我想谈谈我对目前几个脚本框架的看法(Silverna、Dron Framework、Zerg、script_aculo_us、prototype、bindows、JSVM),(不过我得说一下前提,这里是在讨论框架而非单个功能):TNND,我这么一写,把国内外写框架的人都得罪光了。
Silverna:
1、使用 <script> 标签太多,使用者不可能知道要实现某个功能而需要加载哪些模块
2、重复加载过多,每个页面不得不加载数量众多,字符量巨大的脚本,作为框架,你不可以把这一步重要的核心交给不可靠的浏览器本地缓存
3、对单个脚本文件的书写约束太多,框架没有了开放性
Dron Framework:
1、同上,没有解决每个页面加载过的脚本缓存
2、命名空间的写法太死了,没有 namespace 的封装性
3、源代码里竟然还有中文,对DOM的事件处理竟然不使用监听模式
Zerg:
1、这个太轻量级了,称不上框架,只能说是一个脚本代码导引器
script_aculo_us:
1、用时间线和效果库封装是它的精髓
2、同一效果在同一对象上的叠加很有问题
3、效果处理完成后,没有打扫干净
prototype:
1、对这个框架即爱又恨,给正统的JS编程带来了一股新气,不管是从继承还是类库。
2、整一个文件就是一大类库,几十KB的代码加载起来不小。
3、类库和基础类的扩展运算量比较大,导致页面加载之时有迟纯。
4、其实它算不上是一个框架,没有模块的加载,没有命名空间,没有缓存策略。
bindows:
1、一个成熟的框架,各个方面考虑都比较周全,实现的都很标准。
2、每个类的构造器继承,成员继承,析构等都做得非常规范。
3、同上面几个框架一样,没有考虑过如何处理缓存,以至于加载脚本严重影响页面的加载。
4、没有 namespace 的概念。
5、严重依赖XML,为了兼容每种浏览器它是煞费苦心,但效果不甚完美。
6、体积过于臃肿,升级换代慢。
JSVM:
1、缓存的处理,命名空间的封装,脚本模块化的导入是它的亮点。可以说是继 bindows 之后的又一个成熟框架。
2、整个框架的封装太按照JAVA模式,事无巨细地封装,导致整个框架的臃肿。
3、核心文件的载入量偏大,虽然有缓存策略,但能够分步加载的就不要在核心区载入。
4、整体没有太大的致命伤,只是各人取向不同。
5、在这个框架的基础上没有很多的成熟产品推出,导致别人对框架的认识不足,本身的推广也不够。
至于象JSON、DOJO那样的以功能点为实现目标的东西,在这次评论脚本框架当中就不做评价了。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者