谷歌宣称web组件才是web开发的未来

虽然今年的谷歌I/O大会没有出现像去年谷歌眼镜发布时直播疯狂跳伞这样的活动,但是上周仍然有不少产品推出。谷歌宣布对谷歌地图、搜索、安卓,以及其他 很多产品做出更新,谷歌还花了一些时间谈了谈web组件。谷歌的Sundar Pichai指出,这项技术目前仍然处于初级阶段,但他同时也说道,他认为“web组件的前景是非常明确的”,开发者可以利用这项技术开发出“可在各种形 式下运行的用户界面”

对于众多Chrome开发者而言,web组件显然是一个距离Chrome核心最近的主题。举个例子,在本周的一次炉边会议上,许多业界人士都认为web组件是Chrome最主要的功能之一。

目前,许多谷歌工程师正在努力开发Project Polymer,这些工程师的目标,是编写出一个网页应用框架,程序员不仅可以在这个框架上构建web组件,而且可以利用web组件,在浏览器上构建出目前技术无法实现的一些功能。

在本届谷歌I/O大会上,web组件技术已经出露端倪,比如WebGL,还有其他一些已经建立的网页开发技术。非常明显,谷歌相信,web组件技术正潜在地改变着程序员编写未来网web应用的方式。

那么,这意味着什么呢?本质上来说,web组件可以为程序员提供一种更简单的方式, 依靠HTML,CSS以及JavaScript这些已知的语言,他们可以构建出网站,并能在网站上开发出可循环使用的小功能。而web组件背后的理念早已 经出现(数年前,微软就支持过类似的创新,但是他们没有成功),不过即使到今天为止,这项技术对大多数人而言仍然比较陌生。

通过智能组件模式构建独立页面的大型网页应用,在今天也并非易事。web组件可以帮助程序员封装他们的HTML,CSS,以及JavaScript,这样这些应用程序对网页上的其他功能就不会产生影响,同理,网页上的其他功能也不会调停应用程序。

值得注意的是,程序员无法依靠组件在所有浏览器上工作。Chrome Canary包括了对web组件的支持,但是它是隐藏在许多flags属性后面的。Mozilla也很有可能在最近增加其火狐浏览器的相关支持功能。最重 要的是,谷歌的Polymer项目,就是希望可以利用他们开发polyfill框架,把web组件的概念应用在所有浏览器上。

网页组件依靠四大件——模板元素,装饰模式(decorators:将模板应用到 CSS上),自定义元素(允许程序员创建自己的元素),以及Shadow DOM(虽然这个名字不怎么好听,但是它真的只是定义了如何将不同的网页部分拼凑在一起,而且在必要的时候,还能从常规DOM中保护其他三个网页组件)

把上述四大件放在一起,包括自定义元素,程序员可以很快创建自己的HTML标签,他 们还可以扩展已有的元素。此外,web组件还能让程序员更加便捷的分类内容, Shadow DOM则确保了你创建的网页样式不会受到网站其他部分的调停,因为使用web组件创建的应用就可以做到这一点。

所有这一切,听起来似乎不是那么丰满,但是如果能抓住其核心(程序员没有理由不抓 住),这将会改变程序员编写网页应用的方式(谷歌的Eric Bidelman称之为“网页开发构造性的改变”)。加上web组件固有的优势,也将进一步提升用户的网页浏览体验。最后,虽然这代表了一种全新的网页应 用编写方式,但在这场革命完成之前,业界可能还需要一些时间过渡。

浪风也认为这是一个不可逆挡的趋势,前段时间我还和朋友浅谈了web开发的未来:未来的web才是一个最大的框架,不管手机还是电脑还是其他可浏览设备都只是一个显示终端,单个开发人员或是团队开发人员只要让几个数据,就可以构建外观漂亮、内在强大的web网站或者叫web应用程序(cms/erp/crm/mrp)。甚至web无处不在,将为变得和说话一样简单,任何一个人(小学生/中学生/大学生/农民工/行政文员/业务经理/甚至boss老板)都可以针对自己的个人偏好(企业业务)需求创建独特的web应用,随时都可以发布到互联网。要达到这种高度自由定制化也正是web碎片化的未来,毕竟还是未来可能会发生的东西,我也不知道又没表述清楚,不过只要对大家有用就行,有时一个不同的小点会激发大家无限的未来。

谷歌宣称web组件才是web开发的未来的更多相关文章

  1. amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules

    amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules 一.总结 1.见名知意:见那些class名字知意,见函数名知意,见文件名知意 例如(HISTORY.md Web 组件更新历史 ...

  2. 学习React系列(七)——Fragments、Portals、Error Boundaries与WEB组件

    React.Fragment portals Error Boundaries WEB组件 React.Fragment 想象一个场景,想把td包装为组件添加到table中去,代码如下: class ...

  3. stenciljs ionic 团队开发的方便web 组件框架

    stenciljs 是ionic 团队开发的方便组件话开发的js 框架,具体以下特点 简单,零配置,简单的api,typescript 支持 性能,压缩之后6Kb,支持ssr,以及强大的原生web c ...

  4. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  5. amazeui学习笔记二(进阶开发2)--Web组件简介Web Component

    amazeui学习笔记二(进阶开发2)--Web组件简介Web Component 一.总结 1.amaze ui:amaze ui是一个web 组件, 由模板(hbs).样式(LESS).交互(JS ...

  6. WEB组件 开发 (未完成 4-13)

    整理自真阿当的阿当大话西游之WEB组件,课件中的代码下载. 14. 抽出widget类 组件分两大类: utility(大部分与UI无关的组件) 和 widget(应用层,大部分与UI相关的,日历组件 ...

  7. web组件开发入门

    本文是学习慕课网阿当大话西游之WEB组件后的一个总结. 组件的分类 1 框架组件:依赖于某种框架的组件 2 定制组件:根据公司业务定制的组件 3 独立组件:不依赖框架的组件 定义和加载组件 解决css ...

  8. 【转】组件化的Web王国

    本文由 埃姆杰 翻译.未经许可,禁止转载!英文出处:Future Insights. 内容提要 使用许多独立组件构建应用程序的想法并不新鲜.Web Component的出现,是重新回顾基于组件的应用程 ...

  9. 横向浅谈移动技术------( 原生,混合,web --- 谁能问鼎移动开发的明天)

    目前移动互联网基本采用了NativeApp.WebApp.HybridApp三种开发模式,很难说这三种模式那种更优越,目前的情况可以说是三分天下吧,不同的开发者可以根据自己的实际情况选择不同的开发模式 ...

随机推荐

  1. 程设刷题 | 程序设计实践II-2017(部分)

    目录 1165-算术题 题目描述 代码实现 1184-Tourist 1 题目描述 代码实现 1186-Tourist 2 题目描述 代码实现 1224-LOVE 题目描述 代码实现 1256-湘潭大 ...

  2. 用kermit通过串口往nandflash任意地址里烧写任何文件!

    1.安装kermit #apt-get install ckermit 2.使用kermit之前,在用户宿主目录下(/home/用户名/)创建一个名为.kermrc的配置文件,内容如下 : set l ...

  3. Python学习笔记——常量和变量

    数字常量 如下是python的一些常量表示形式: 2            整数 3.23            浮点数 52.3e-4        科学技术法表示的浮点数 -5 -4.6j     ...

  4. JavaScript继承(图解笔记)

    JavaScript有多种继承模式,总结起来用到的方法有:原型链的传递.构造函数的借用.对象的复制.   对于原型链和原型的解释,可参考:JavaScript 原型中的哲学思想这篇文章讲得很清晰,让我 ...

  5. elasticsearch 聚合时 类型转换错误

    有一个域 inp_type本来为Interger类型,但有的存储了string类型; 执行这个域的聚合时, "aggs":{ "level2":{ " ...

  6. 使用Spring开发和监控线程池服务

    第1步:添加maven 项目 第2步:添加依赖库 将Spring的依赖添加到Maven的pom.xml文件中. 1 2 3 4 5 6 7 8 9 10 11 <!-- Spring 3 dep ...

  7. [Functional Programming] Define Discrete State Transitions using the State ADT

    We build our first state transactions as two discrete transactions, each working on a specific porti ...

  8. 系统重装 JUJUMAO VHD安装WIN7解析

    1 把原有系统分区一个删除(使用第三方分区工具如PM或者PQ)并新建一个系统分区(也可以同时新建其他分区如D盘,E盘,但是一定要把C盘设置为NTFS格式并且活动的!)   2 将JUJUMAO_VHD ...

  9. S4:装饰模式 Decorator

    动态的给一个对象添加额外的一些职责,就增加功能而言,比继承更具灵活性. 如果仅有一个ConcreateComponent,也可以让Decorator继承ConcreateComponent来实现装饰功 ...

  10. elasticsearch 单节点实现

    一.安装java环境,这么不说了,一般用源码安装,配置好环境变量 二.新建es用户和组,es不能用root启动 三.下载需要的稳定版es 四.解压安装es .zip /opt/app/ es / 五. ...