WinJS 2.0:更快的速度、更多的功能

  • Jeff Martin
  • 孙浩

2013 年 8 月 5 日

话题:语言 & 开发

Windows JavaScript 库(WinJS)首次是和 Windows 8 一起出现的,它为 JavaScript 开发者提供了一种有效的方式来创建 Windows 应用商店应用。2.0 版本将作为 Windows 8.1 发布的一部分,微软也承诺将增加其特性以及大大提高其性能,这将使所有用户受益,特别是那些运行着 ARM 或者基于 Atom CPU 的设备。

在 Paul Gusmorino 关于“WinJS 的新特性”的Build 演示大会上,他详细展示了 WinJS 2.0 上将会看到的变化。Gusmorino 列举了很多已经切换到 2.0 版本的 Win 8.1 应用,包括众多应用中的应用商店、音乐和 Skype。

查看 WinJS 2.0 的设计目标,我们发现开发人员和用户都将受益于 2.0 中包含的更多的用户界面模式及其速度的提高。在 2.0 中 ListView 控件比在 WinJS 1.0 中快了大约 30%(关于 Microsoft Surface 的报告)。在 Gusmorino 的演示中,Windows Mail 应用程序被用来展示控件增加的速度,它显然快多了。

WinJS 2.0 一览表

Improved Controls

  • List view
  • App bar

Infrastructure

  • Scheduler
  • Dispose model
  • Async debugging

New Controls

  • Hub
  • Navigation bar
  • Search box
  • Back button

Building Blocks

  • Binding template
  • Repeater
  • Item Container

有趣的是,作为一个以触控为中心的操作系统,列表视图控件和应用 bar 条控件将得益于改进的键盘支持。列表视图将增加支持垂直网格和分组列表布局,这样在创建用户界面时也就提供了额外的灵活性。

控件并不是 WinJS 唯一的改善点,WinJS 库的内部也得到了提升。使用 dispose() 方法可以使控件清理变的更加简单,该方法将移除控件和所有对它的引用,然后垃圾收集器就可以进行垃圾回收了。dispose() 方法也是分层级的,一个拥有子对象的父对象也可以被一个单独调用父对象的 dispose() 方法移除。由于调用堆栈可以获得更多的信息,异步调试也因此变的更容易了,因为它显示了一个更全面的关于调用异步方法执行步骤的清单。

要获得更多关于新控件和升级控件的信息,可以查看WinJS 2.0 预览文档

查看英文原文:http://www.infoq.com/news/2013/07/winjs20


感谢水羽哲对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

语言 & 开发