写点什么

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:051961
用户头像

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

关注

评论

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

阿里云蝉联 Forrester FaaS 领导者象限丨云原生 7 月产品技术动态

阿里巴巴云原生

阿里云 云原生

版本发布|Orillusion 0.6.7版本发布啦!

Orillusion

开源 渲染引擎 元宇宙 webgpu AIGC

食品包装MES系统解决方案

万界星空科技

MES系统

Sketch for mac(矢量绘图UI设计软件) 97.2中文特别版

mac

Sketch 苹果mac Windows软件 矢量图设计软件

生成式AI助力企业高效创新

百度开发者中心

人工智能 文心一言

一文吃透低代码开发平台

高端章鱼哥

系统架构 低代码 应用开发 JNPF

生成式AI助力技术文章撰写

百度开发者中心

人工智能 大模型

生成式AI助力小型企业发展

百度开发者中心

#人工智能 文心一言

关于 LLM 和图数据库、知识图谱的那些事

NebulaGraph

图数据库 知识图谱 LLM

重新定义物化视图,你必须拥有的极速湖仓神器!

StarRocks

数据库 数据仓库 StarRocks 湖仓一体 物化视图

生成式AI技术发展趋势报告

百度开发者中心

人工智能 百度文心一言

生成式AI:2023产业机遇与落地场景探索

百度开发者中心

人工智能 百度文心一言

Spring BeanDefinition 也分父子关系?

江南一点雨

Java spring

生成式AI:重新定义生产力

百度开发者中心

人工智能 文心一言

2023中国高校计算机大赛热度再刷新:2100+参赛队伍,获超480所国内知名高校关注!

云智慧AIOps社区

编程 算法 模型 中国大学生计算机设计大赛 计算机大赛

生成式AI:模拟人类智能的未来科技

百度开发者中心

人工智能 文心一言

LeetCode题解:2625. 扁平化嵌套数组,递归

Lee Chen

JavaScript LeetCode

使用 Docker 部署 etcd、启用身份验证

向东是大海

etcd

函数性能探测:更简单高效的 Serverless 规格选型方案

阿里巴巴云原生

阿里云 Serverless 云原生

生成式AI:文本智能的未来发展方向

百度开发者中心

人工智能 文心一言

小灯塔系列-中小企业数字化转型系列研究——电子签名测评报告

向量智库

快手光合大会公开全模态大模型AIGC解决方案 人机协同助力创作全流程提效

Geek老T

AI 短视频

08.25北京站|阿里云Serverless 技术实践营( AI 专场)开放报名

Serverless Devs

阿里云 Serverless 云原生

融入数据浪潮,KaiwuDB 期待与您共赴 DTCC 2023

KaiwuDB

KaiwuDB DTCC2023

mac电脑版Visio绘图文件阅读器 VSD Viewer for Mac

胖墩儿不胖y

Mac 软件推荐 Mac 软件

Vue 框架提升加载速度的优化思路

Onegun

Vue React

晋级名单公布!“域见杯”复赛今日火热开启

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 8 月 PK 榜

关于跨国文件传输需要了解的5点

镭速

跨国文件传输

mac端矢量图编辑器 Boxy SVG 免激活

mac大玩家j

Mac 软件推荐 Mac软件

生成式AI:开启全新的智能时代

百度开发者中心

人工智能 文心一言

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