谷歌宣称web组件才是web开发的未来
谷歌宣称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开发的未来的更多相关文章
- amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules
amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules 一.总结 1.见名知意:见那些class名字知意,见函数名知意,见文件名知意 例如(HISTORY.md Web 组件更新历史 ...
- 学习React系列(七)——Fragments、Portals、Error Boundaries与WEB组件
React.Fragment portals Error Boundaries WEB组件 React.Fragment 想象一个场景,想把td包装为组件添加到table中去,代码如下: class ...
- stenciljs ionic 团队开发的方便web 组件框架
stenciljs 是ionic 团队开发的方便组件话开发的js 框架,具体以下特点 简单,零配置,简单的api,typescript 支持 性能,压缩之后6Kb,支持ssr,以及强大的原生web c ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- amazeui学习笔记二(进阶开发2)--Web组件简介Web Component
amazeui学习笔记二(进阶开发2)--Web组件简介Web Component 一.总结 1.amaze ui:amaze ui是一个web 组件, 由模板(hbs).样式(LESS).交互(JS ...
- WEB组件 开发 (未完成 4-13)
整理自真阿当的阿当大话西游之WEB组件,课件中的代码下载. 14. 抽出widget类 组件分两大类: utility(大部分与UI无关的组件) 和 widget(应用层,大部分与UI相关的,日历组件 ...
- web组件开发入门
本文是学习慕课网阿当大话西游之WEB组件后的一个总结. 组件的分类 1 框架组件:依赖于某种框架的组件 2 定制组件:根据公司业务定制的组件 3 独立组件:不依赖框架的组件 定义和加载组件 解决css ...
- 【转】组件化的Web王国
本文由 埃姆杰 翻译.未经许可,禁止转载!英文出处:Future Insights. 内容提要 使用许多独立组件构建应用程序的想法并不新鲜.Web Component的出现,是重新回顾基于组件的应用程 ...
- 横向浅谈移动技术------( 原生,混合,web --- 谁能问鼎移动开发的明天)
目前移动互联网基本采用了NativeApp.WebApp.HybridApp三种开发模式,很难说这三种模式那种更优越,目前的情况可以说是三分天下吧,不同的开发者可以根据自己的实际情况选择不同的开发模式 ...
随机推荐
- C语言基础之scanf函数的使用
0.自己实际遇到的坑 Mac下如果用标准键盘,使用scanf输入时不能用小键盘上的回车,否则系统不能很好的识别. 1.scanf函数的基本使用 1: // 定义一个变量,用来保存用户输入的整数 2: ...
- ThinkPHP的自动验证常用的正则
ThinkPHP的自动验证常用的正则 ThinkPHP的自动验证机制是为了进行表单数据验证,验证可以支持function. callback.confirm.equal.unique和regex, ...
- 玩转Nuget服务器搭建(一)
背景 公司项目是分模块进行架构 ...
- 程序编译时书写Makefile注意事项一例
在进行程序编译时,可能需要指定一些库的库的路径.头文件的路径,分别使用的参数选项是-L和-I,需要注意的是: 需要确保-L和-I后边的内容不为空,否则会出现意想不到的错误,而这种错误比较难以发现,引起 ...
- shell中的cut命令
转:http://blog.sina.com.cn/s/blog_5e77c61f0100hqky.html cut是以每一行为一个处理对象的,这种机制和sed是一样的.(关于sed的入门文章将在近期 ...
- Python命令行参数学习
man python 查看python的帮助文件 命令行参数: -B Don't write .py[co] files on import. See a ...
- github 丢失的本地提交
open git bash git reflog git reset xxxxxxx
- 2017.4.7 e.toString() 与 e.getMessage()的区别
我使用的时候,抛出了空指针异常,本来是想将异常信息显示在errorInfo里,却发现没有拿到错误信息. 原因:我用的是getMessage(). 用e.getMessage() 时,返回的是null. ...
- perl学习笔记——输入与输出
读取标准输入 用<STDIN>进行标准输入:chomp($line=<STDIN>); 如果读到文件尾,行输入操作符就会返回undef.便可利用这一性质跳出循环. while( ...
- vue slot slot-scope
https://segmentfault.com/a/1190000012996217 插槽,也就是slot,是组件的一块HTML模板,这块模板显示不显示.以及怎样显示由父组件来决定. 实际上,一个s ...