在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

Polymer 0.8 带来了性能的提升,也包含破坏性的变更

  • 2015-04-12
  • 本文字数:1314 字

    阅读完需:约 4 分钟

Polymer 团队推出了 Polymer 0.8 的 alpha 版本,其中包含了“建议包括在 1.0 版本中的 API”,但同时它“与 0.5 版本中的 API 不相兼容”,存在着许多破坏性的变更。这个类库的新版本在文件尺寸和性能方面都得到了优化,而它的特性还没有全部完成。

Polymer 0.8 中包含了一个 _Shady DOM_ 特性,这是它自己实现的一套 Shadow DOM 的 polyfill,最初是由webcomponents.js所提供的。因此用户可以选择导入这个更小的webcomponents-lite.js文件,Shady DOM“对速度进行了优化“,并且希望避免“shadow DOM 这个 polyfill 所带来的复杂性、庞大尺寸、性能缺失以及侵入性。”

新版本中不再使用polymer-element标记,而是用dom-module标记取而代之,正如以下代码片段所表现的一样,它的作用是定义并注册某个元素:

复制代码
<dom-module id="hello-world">
  <style>
    div { color: red }
  </style>
  <template>
    <div>Hello World!</div>
  </template>
</dom-module>
<script>
  Polymer({is: "hello-world"});
</script>

原本在模板中的样式也被转移到模板之外了,正如以上示例所显示的一样。

Polymer 0.8 使用了一个单一属性集合的对象,以定义属性的观察者和计算属性。无论是否出现在属性对象中的所有属性都可以与数据进行绑定。由于使用了生成的属性访问器,因此数据绑定系统变得更易于使用,而调试也变得更简单和快速。在属性对象中的值域中定义了默认值,可以选择直接提供某个数值,也可以选择调用某个函数以返回数值。

复制代码
Polymer({
is: "my-component",
properties: {
observed: {
type: Number,
value: 100,
observer: 'observedChanged'
},
product: {
computed: 'multiply(x,y)'
}
}
});

要了解所有破坏性变更的完整列表,推荐阅读一下迁移指南中的内容。要重点指出的是,0.5 版本中的元素尚未完成移植,但在最终版本中会确定将所有元素移植。而关于对 0.5 版本未来的支持,该团队是这样说的

我们已经意识到目前有许多项目依赖于 0.5 版本中的功能,而且在所有的元素都完成移植之前,这些项目无法转而使用 0.8 版本。我们将持续关注新的 pull request 并进行合并,直至所有元素都完成移植为止。但是,我们目标是将 0.8 版本作为新的基准,全力打造这个高性能、适用于生产线上的新版本。如果 0.5 版本还有任何增量发布,只要有必要,我们都会通过一个新的分支发布该功能。

根据团队的基准测试结果来看,Polymer 0.8 的启动时间快了4 至8 倍,在Chrome 上也是如此。它的资源占用也有明显减少。如果想要深入了解0.8 版中的新特性,推荐你阅读一下开发者指南

有大量的的新特性是针对Polymer 1.0 版本而开发的,这些特性中有许多还无法运行,或只能部分运行,包括:内容体安全策略、支持手势、更好的Shady DOM 表现、跨scope 的样式、更多的模板特性、数据绑定调试工具、基准测试等等。在0.8 版本中已经支持了HTML 元素的继承,但对于扩展自定义元素的支持则推迟到了1.1 版本,原因在于“由于我们在0.8 版本中进行了一些性能方面的改进,变相造成了这一功能在新版本中的实现比起在0.5 版本中要面临更大的困难。”

查看英文原文: Polymer 0.8 Comes with Performance Improvements and Breaking Changes

2015-04-12 06:052421
用户头像

发布了 428 篇内容, 共 201.4 次阅读, 收获喜欢 39 次。

关注

评论

发布
暂无评论
发现更多内容

HarmonyOS数据管理与应用数据持久化(一)

HarmonyOS开发者

低代码可视化逻辑编排工具

树上有只程序猿

低代码 可视化编排 JNPF

特权账号安全管理的难点

尚思卓越

网络安全 数据安全 特权账号管理

特权账号管理系统PAM的优势特点

尚思卓越

网络安全 数据安全 PAM

语音识别技术在医疗健康领域的应用与挑战

数据堂

自动化混沌工程 ChaosMeta V0.6 版本发布

ChaosMeta

云原生 自动化 稳定性 混沌工程 攻防演练

影视企业有哪些方式将视频文件快速海外跨国传输国内?

镭速

跨国文件传输

语音识别技术在智能客服领域的应用与优化

数据堂

云桌面是否可以运行3D软件

青椒云云电脑

桌面云 云桌面

语音识别技术在智能家居领域的创新应用与挑战

数据堂

外贸网站建设攻略:如何建设一个高效的外贸网站

九凌网络

陌生链接可能是诈骗网址,谁来保护我们的上网安全?

最新动态

一座 “数智桥梁”,华为助力“天堑变通途”

脑极体

AI

IoT与鸿蒙、低代码、生成式AI,引爆技术浪潮——华为云开发者日南京站成功举办

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 华为云开发者日

2023-11-01:用go语言,沿街有一排连续的房屋。每间房屋内都藏有一定的现金, 现在有一位小偷计划从这些房屋中窃取现金, 由于相邻的房屋装有相互连通的防盗系统,所以小偷 不会窃取相邻的房屋, 小

福大大架构师每日一题

福大大架构师每日一题

为什么需要对特权账号进行管理

尚思卓越

运维 网络安全 信息安全

高能有料 | 第二届OpenHarmony技术大会议程速递

OpenHarmony开发者

软件测试/测试开发丨利用ChatGPT自动生成架构图

测试人

人工智能 软件测试 ChatGPT

2023年度openEuler领先商业实践遴选征集工作正式启动

彭飞

客服发送一条消息背后的技术和思考

得物技术

体验 IM 客服

缺客户、缺钱、缺时间——实业经营的真挑战,中国企业分别突破

B Impact

第22期 | GPTSecurity周报

云起无垠

桌面云一体机什么品牌最好?

青椒云云电脑

桌面云 一体机 桌面云一体机

陈奕迅全新专辑《CHIN UP!》上线华为音乐,五年后心血之作强势来袭

最新动态

在线涂鸦画板软件哪款好?这7款涂鸦神器值得推荐!

彭宏豪95

效率工具 画图软件 在线白板 涂鸦 绘画软件

跨国文件传输为什么要用专业的大文件传输软件?

镭速

跨国文件传输

Python JSON 使用指南:解析和转换数据

小万哥

Python 程序员 软件 后端 开发

Polymer 0.8带来了性能的提升,也包含破坏性的变更_开源_Abel Avram_InfoQ精选文章