reacher-lu / mobile-lib

mobile libs compare
1 stars 0 forks source link

overview

罗列一下备选的移动web开发类库,简单对比他们的加载,初始化时间

在实际应用中,去纠结某一个方法执行一万遍,不同类库性能上几毫秒的差异,意义不是特别大,目前美店的优化的方向还是减小类库体积,初始化时间。所以这里并没有参考网上的测试报告,感兴趣的可以点这里自行测试

手机端wifi下30次加载&执行时间统计如下

类库 大小 首次耗时 平均耗时
jquery 85k 111ms 71ms
jquery-build 50k 79ms 55ms
zepto 24k 97ms 38ms
jquip 32k 69ms 35ms
sprint 17k 41ms 34ms
kissy-mini 31k 50ms 27ms
kissy-seed 44k 81ms 57ms

include

detail

  1. 执行 grunt,构建出需要的文件

  2. 运行 python -m SimpleHTTPServer 起一个本地服务,手淘或其他浏览器访问该页面,页面将自动刷新30次,计算出脚本加载与执行的平均值。

  3. 修改time.js的阈值以及setTimeout时间,可进行更多次加载,取的更精确的结果


jquery


jquery-build


zepto


jquip


sprint


kissy mini


kissy seed

小结

  1. 手机端wifi下30次加载&执行时间统计如下
类库 大小 首次耗时 平均耗时
jquery 85k 111ms 71ms
jquery-build 50k 79ms 55ms
zepto 24k 97ms 38ms
jquip 32k 69ms 35ms
sprint 17k 41ms 34ms
kissy-mini 31k 50ms 27ms
kissy-seed 44k 81ms 57ms

1.对结果的一些思考(仅个人)

  1. 分析几个大型类库的API,虽然支持模块分解,但每个模块里面都有大量我们不会用到的代码,后期要将代码缩减到极致,最好的办法还是我们手动去写,网上也有很多实现的文章,如: