免费下载案例集|20+数字化领先企业人才培养实践经验 了解详情
写点什么

Google 发布 Polymer 1.0 版本

  • 2015-06-04
  • 本文字数:1402 字

    阅读完需:约 5 分钟

在 2013 年的 Google I/O 大会上,谷歌公司首次推出了 Web UI 界面设计套件——Polymer。该工具由加盟谷歌公司的原 Palm webOS 团队打造,以“一切皆组件、最少化代码量、最少框架限制”为设计理念,意在变革浏览器的操作体验。经过近两年的发展,该团队已经陆续推出了 Polymer 的若干后续版本。在近日召开的 2015 年度 Google I/O 大会上,谷歌正式发布了 Polymer 1.0 版本。

Polymer 与 W3C Web 组件这一社区标准计划紧密相连。传统网页开发都是采用 HTML、CSS 以及 JavaScript 等进行混合编程的方式,非常不利于修改、调试以及重用。为了降低开发的复杂度并提高可用性,Web 组件计划被提出,并获得所有现代浏览器厂商的支持。谷歌正是基于 Web 组件的可重用性和简洁性提出了 Polymer 项目。

Polymer 由基础层(Foundation)、核心层(Core)以及元素层(Element)三部分组成。其中,基础层包含了用于监视 DOM 元素与 JavaScript 对象改变的 DOM Mutation Observer 和 Object.observe()、处理鼠标和触摸操作的 Pointer Event、Shadow DOM、用于自定义 HTML5 元素的 Custom Element、封装自定义元素的 HTML Import、在 HTML 中实现数据绑定的 Model-Driven View(MDV)以及统一 Web 通话实现的 API——Web Animation。作为 Polymer 中关键的组件,基础层的作用在于代替浏览器为上层应用提供统一的 API,使得设计可以跨平台使用。核心层利用 polymer.js 提供了一层代码来表示 Polymer 选项,用于连接基础层与元素层。元素层包含了 Polymer Element 和 Polymer UI Element,为开发人员设计网页提供各种组件。

作为一个跨平台开源库,Polymer 支持开发者按照 Web 组件标准所定义的方式去编写组件。它把复杂的代码和结构封装在了不同的组件中,并允许开发者使用简单易用的规则进行命名。此外,Polymer 还提供了一套预定义的 UI Element,方便用户使用和二次开发。通过结合 HTML Imports、Template 标签、Shadow DOM 以及 Custom Element,开发人员只需要把不同的组件进行简单组合,即可轻松的创建出所需的网页。这样,开发人员就可以根据网页设计人员的需求不断的变更网页,提升用户体验和性能。而且,对于一个设计复杂的大型网站,只有基于 Web 组件的 Polymer 可以有效的对资源进行管理和调度。至于 W3C 标准还没有正式发布的问题, Polymer 产品经理 Taylor Savage 表示,所有相关的标准目前都已经比较成熟,相信很快就会进行发布。同时,基于这些标准的 Polymer 会相应的不断升级,继续为用户提供很好的服务。

在这两年中,Polymer 已经经历了 10 个版本的更新。在开发者预览版本(0.5 版本)之后,Polymer 团队听取广大开发人员的意见重写了开发库,在保持开发者良好使用体验的同时,大大提升了浏览器的性能。以 Chrome 浏览器为例,后期的版本比开发者预览版本代码量少 36%,速度却是原来的 3 倍。据Polymer 团队透露,本次发布的1.0 版本相比于之前的0.9 版本并没有很大变化,修复了一些bug,并再次进行了性能提升。由此可见,此次发布的Polymer 1.0 版本在性能、稳定性等方面已经成熟。目前,利用Polymer 的初学者套件,用户可以直接开始体验新版的Polymer。


感谢郭蕾对本文的审校。

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

2015-06-04 09:472842
用户头像

发布了 268 篇内容, 共 121.8 次阅读, 收获喜欢 24 次。

关注

评论

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

Ubuntu系统编译OpenCV4.8源码

芯动大师

ubuntu 操作系统 编译

智谱AI亮相2024 ICLR,分享面向AGI的三大技术趋势

Geek_2d6073

第六届·2024 MindSpore 量子计算黑客松热身赛赛题解读

华为云开发者联盟

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

基于阿里云向量检索 Milvus 版与 PAI 搭建高效的检索增强生成(RAG)系统

阿里云大数据AI技术

人工智能 阿里云 Milvus

OpenHarmony 成功亮相国际学术会议 ASPLOS 2024

科技热闻

PS磨皮滤镜降噪插件套装 Imagenomic Professional Plugin Suite 支持ps2024

Rose

3个免费图片网站,助你轻松创建PPT素材库!

彭宏豪95

职场 PPT 在线白板 效率软件 素材库

MySQL面试二之binlog日志

Hunter熊

MySQL Binlog

Linux中的chsh命令及示例

百度搜索:蓝易云

云计算 Linux 运维 Shell 云服务器

激发大数据场景价值,润和软件HopeOS闪耀鲲鹏昇腾开发者大会2024

科技热闻

Imagenomic Portraiture 4.5 ps智能磨皮滤镜插件

Rose

爆爽,英语小白怒刷 50 课!像玩游戏一样学习英语~

Immerse

英语 学英语

克服 Prometheus 单值数据模型的局限性:GreptimeDB 的新路径

Greptime 格睿科技

数据库 sql Prometheus PromQL

速度围观|使用分布式企业级任务调度平台,到底有多香?

智在碧得

数字化转型 XXL-JOB 任务调度平台 http任务 elastic job

SVN 合并到 Git 时有文件大于 100 M 被限制 Push

HoneyMoose

inBuilder 低代码平台新特性推荐 - 第十八期

inBuilder低代码平台

低代码

ETL中如何执行Python脚本

RestCloud

Python 脚本 ETL 数据集成工具

Mybatis-Plus常见注解

百度搜索:蓝易云

sql 云计算 Linux 云服务器 Mybatis-Plus

浅析Jetty与tomcat区别

百度搜索:蓝易云

Java tomcat 运维 Web jetty

Spring与Docker:如何容器化你的Spring应用

百度搜索:蓝易云

Java Docker spring Linux 运维

"Global Golden Course" - Certified ScrumMaster (Delivered in English at weekend)

ShineScrum捷行

Scrum Agile ScrumMaster Agile Coach

金融大模型,要听见远方的风

脑极体

AI

IBM发布开源AI编程模型Granite Code

算AI

人工智能 AI AI编程

芯盾时代智能风控决策系统信贷版

芯盾时代

监管合规 风控系统 金融业 信贷

低代码技术赋能未来乡村建设:创新与实践

快乐非自愿限量之名

低代码 信息化 乡村振兴

智能助手上线,大模型提供云服务专属顾问

Baidu AICLOUD

大模型 Copilot AI智能客服

DockerCompose部署es和kibana

百度搜索:蓝易云

Docker Linux 运维 ES 云服务器

详解GaussDB(DWS)中的行执行引擎

华为云开发者联盟

数据库 华为云 华为云开发者联盟 华为云GaussDB(DWS) 企业号2024年5月PK榜

2023年TCL实业营收突破1,200亿元,同比增长13%

Geek_2d6073

手把手系列!使用 Zilliz Cloud 和 AWS Bedrock 搭建 RAG 应用

Zilliz

AWS Zilliz zillizcloud Amazon Bedrock

Google发布Polymer 1.0版本_Google_张天雷_InfoQ精选文章