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 )关注我们,并与我们的编辑和其他读者朋友交流。
评论