说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

2013年 影响Web发展的5类API

HTML文档下载 WORD文档下载 PDF文档下载
本文作者Alex MacCaw是一名JavaScript程序员,O'Reilly作者,目前就职于Stripe。他认为,在接下来的一年,Web领域将会有越来越多的储技术蜂拥而至。甚至可能会有一些技术,从根本上改变我们如何使用Web及开发Web。然而API在这个过程中将会起着非常决定性的作用。

众所周知,科技和虚拟世界都在快速发展,当市场上出现一个新发展趋势的时候,作为Web开发人员首先应该想到这些新趋势何时会运用到Web开发上,并且把这些新元素运用到自己的项目中。

在接下来的一年,Web领域将会有越来越多的技术蜂拥而至。甚至可能会有一些技术,会从根本上改变我们如何使用Web及开发Web,然而API在这个过程中将会起着非常决定性的作用。

CSS定制过滤器

CSS定制过滤器(CSS Custom Filters)已经在Chrome和Safari上实现,允许你定制一些高级样式,例如模糊(blurring)、弯曲(warping )或修改元素的颜色。然而,这仅仅是个开始,CSS定制过滤器允许你在GLSL上编写自己的片段(fragment)和顶点阴影(vertex shadows),在过去10年里,它已融入到传统的3D渲染/透视语言中。

这就意味着你可以创造出一些非常奇特的Web效果。结合CSS transitions可以制作出非常漂亮的转换(transformations)、卷页特效(from page curls)、折叠元素。

所以,你打算什么时候使用?Adobe首创了这项技术,另外Custom Filters已经在基于Chrome的flag上使用。期望明年年初能在Chrome上见到它们。现在,你可以在Canary上体验一翻。

Autocomplete API

这个API可能会从根本上改变网络的注册和支付方式。Autocomplete API让表单填写更加容易,提供一些数据规范指导。

今年6月,我提出了一个API,以编程的方式在浏览器端自动检索填充的数据存储。这意味着可以代替大多数的一键式注册和一键式支付形式,极大地提高了可用性和转换率。

Chrome团队已经致力于这个想法并且于10月份提交了一份建议和补丁在WebKit上。另外,与Mozilla Persona的配合可以给网上注册和支付带来根本性的变革,这真是让人兴奋的事情。

虽然这些背后工作都已完成,Chrome仍然需要使用UI去集成实现,估计明年年底即可与大家见面。

Google Chrome Apps

倘若告诉你,Google已悄悄研发一款跨设备的操作系统,包括笔记本和手机,会怎样?Google决定在现有的操作系统上构建它们自己的平台,通过构建独立的OS与Miscrosoft和Apple竞争。该平台的名称叫做Chrome。

目前所做的第一步工作就是分布(distribution),Chrome现已拥有超过3.5亿用户。第二部就是扩展Chrome的API,使开发人员可以对操作系统进行更深入的访问,并且取代传统桌面应用的需求。

几个月前,谷歌悄悄发布Chrome Packaged应用,它可以帮助开发人员通过Chrome轻松构建桌面应用程序。他们可以从Chrome Web商店中进行一键式安装,可以使用USB、蓝牙和UDP套接字或者桌面快捷键访问系统API。这些应用程序完全是跨平台的、独立的出现在本地的。在许多方面,这种混合组合可以带来更好地Web和桌面世界。

ECMAScript 6

ECMAScript 6简称ES6。在下一个版本的JavaScript中会有一些令人兴奋的扩展与修改,解决语言的一些丑陋部分并且提供一些新特性,比如默认参数和重组。

在该版本中,类被提上日程并且添加了完整的继承和Mixins。而不是单纯地模仿CommonJS或AMD(AsynchronousDefinition)模块,ES6使其成为一等类,灵感来自pythonesque这个导入系统。

此外,ES6中有一部分会让人非常兴奋——ES6代理。ES6代理可以让我们在运行时对函数名进行动态查找,类似Ruby的method_missing功能。结合getters和setters使各种DSL和API变的有趣。

ES6生成器(generators)会完全改变JavaScript异步的编写方式,而不会像以往回调意大利面条式代码那样,我们可以使用同步API的yield关键字调用异步函数。看看task.js这个例子:

  1. spawn(function*() {  
  2.   var data = yield $.get(url);  
  3.   $('#result').html(data);  
  4. }); 

你也许在使用Ruby的Fibers时看到过类似的API,个性化的回调着实让人头疼,尤其是在MVC节点应用程序中编写事件时。我一直在使用Ace这个库体验Node延续。

目前,大部分的ES6在Chrome的flag下体验实验版的JavaScript。它将于明年初发布。你也可以通过Node的--harmony命令行选项立即使用ES6。

Web Components

Web Componets和Shadow DOM揭示本地元素是如何在浏览器中进行内部创建。使用该API,你可以定义自己的HTML元素,包括该元素的样式以及具体行为。和本地的HTML元素,它们可以被嵌入到一个单独的标签中。

Web Components可以转换JavaScript库的编写和分布方式,它们可以完全解耦、易于集成。这也是我和Jacob编写程序包管理器Bower的真正原因。

例如,我编写了一个超实用的地图组件,把它添加到包管理器里面,其他开发人员可以通过一个标签就可以把该组件集成到他们的应用程序中。各个组件是彼此分离的,它们的HTML、CSS和JavaScript可以从一个自定义标签中抽离出来。

展望未来

这些Web API将需要些时间逐步过渡应用到其他浏览器上,Webkit的市场份额也驱动着浏览器厂商提供各个API的解决方案。事实上,HTML5从功能转变成产品的可行性并不需要太多的时间。为了向后兼容,这些API都可以poly-filled或者逐步削减/降低其重要性。

对于Web来说,2013又将会是个不平凡的一年。

相关阅读:

Web开发者必知的8个超实用API

API对未来搜索引擎的影响:会逐渐替代Web吗?

API会颠覆传统的商业模式吗?

请关注@CSDN研发频道微博,了解更多精彩内容!

来自:5 APIs that will transform the Web in 2013

CTO如何避免决策失控(三):从CEO角度看CTO的应对能力 IT界需求最旺的16项技能 PMC发布8系列RAID卡 找准国内互联网企业需求 早Google一步,eBay数据中心率先搭载了火星上使用的技术 目标专利2000,技术研发人员占55%,斐讯的厚积薄发 SwiftStack CEO:分布式存储的未来 触控陈昊芝:“好声音”标王对移动游戏未来的预测 Office将更强大:微软正开发Office Reader和Office Lens 百度技术专家详解Clouda 并称计划推出相应UI解决方案 少年才俊:看IT界8个不到20岁的科技公司创始人 Oracle与Freescale展开深度合作,Java或将一统物联网? 探秘Google新搜索引擎算法Hummingbird的16个疑惑 如何在开发项目里进行自我激励! 或许很受用:苹果、谷歌和亚马逊等公司的14个怪异面试题 12款不容错过的新款jQuery插件 技术开发者如何看实时Web App开发框架? 高薪技术排行:大数据居首,苹果相关次之,Java、C等相去甚远 谷歌开发网络跟踪新技术:AdID将取代第三方Cookie 穿在脚上的苹果?苹果聘用Nike设计主管Ben Shaffer 七款Debug工具推荐:iOS开发必备的调试利器 六年亲历,见证中国大数据技术与应用时代的到来 Mailbox:日支撑过亿信息数据库的性能调优及集群迁移 PayPal前CTO 在美国改变世界的乌克兰犹太人 放弃Bootstrap&amp;amp;Foundation,迎接Semantic UI? 一键分享:iOS版Google+发布SDK InMobi杨娟:中国移动游戏如何挑战全球? Adobe再遭APT攻击:数十G源代码及290万用户信息失窃 程序员,如何在工作中崭露头角? 国内外三个不同领域巨头分享的Redis实战经验及使用场景 这是一场潜在的战争:谷歌与Facebook、苹果在搜索上的博弈 设计新闻类网站需要注意的关键点:移动友好、宽带…… 怎样调用IE的一些功能??? 求教,急! 初学asp,问个简单的问题吧:怎么样知道客户端的时间? strus的配置和使用,我用jdevelop, ADO+MSSQL对DataSet中Record定位 欢迎讨论,关于水晶报表实现:折线图,或者柱形图问题 在线求助:如何读取B端操作系统信息和浏览器信息? 系統用戶使用權限的設計 combox 问题 急寻MAYA编程高手 服务器端有一个很大的XML(10M)文件,怎样从client端读取? CMainFrame 的窗口句柄怎么得到 从数据库读出文本如何保持原来格式 ? 在winform中,请教关于combobox的一个小问题 Stream Write error??????????? 存储过程的and和or连用 谁有新浪或网易等的短信网关接口? 请问如何在水晶报表里面定义一个全局变量?谢谢 如何配置SMTP服务 使用触发器时想到的 为什么要实现双接口 求DOM(DOMAIN OBJECT MODEL)的详细资料,顶着有分 winxp 在重启时总是提示:"此媒体的类型产品号无效请用正确的cd重新安装",系统进不去! 那位老大给仍一个visual assist 6.0的key,等待中。。。。 请问哪儿有类似于TDBchart数据显示的图形控件? 服务器端有一个很大的XML(10M)文件,怎样从client端读取? 业务导肮? 安全操作系统,谁能用? delphi7中怎么关闭一个子窗体,然后又能正常创建 急!请问怎样把SimensSDK和CodeWarrior整合起来? 江湖救急! 还是关于两个时间之间的处理的问题,大家看看! 高分求助:关于OPENFORM的问题! <秦>(全本) :am(酒徒) 强烈推荐 安全操作系统,谁能用? 高手助我!!!如何从数据库中的日期格式中分别取得年、月、日??? 关于拦截文件操作的API的钩子程序求教:qq:55020921(再问) 我用asp.net开发的网站。客户机没装。net框架,能不能访问网站。 跨年的问题 在线等 谢谢 嗨!哥们们!中科大美国加里福尼亚州州立大学计算机硕士张左伟“软件测试管理体系与案例分析”免费公开课去吗???? 求代码(屏蔽源代码的),给高分 评职称,大学的时候没过4级,能评吗? 急!请问怎样把SimensSDK和CodeWarrior整合起来? 有几个问题请高手指教,多谢,多谢!!! 为什么www.989888.com 不能注册了? 关于二级菜单的问题 请教 如何做到刷新页面后不处理ASP程序 一个小问题求助! 如何考察体系架构 【待结贴】听说有人密谋要刺杀雍亲王?请看看英明神武的雍亲王无畏的回答: 一个基本问题! 岂不白白送了自家性命的岂是什么意思? 岂不白白送了自家性命,的 白 什么意思 交流无级调压电路的组成和工作原理! 犯我者虽远必诛?什么意思? 如题,请知道的人帮我翻译一下这句话是什么意思, 风筝读后感 拓展应用第六题 犯我德邦者虽远必诛什么意思?(特别是虽远必诛) 求拓展运用第二题. 运用拓展的第一题是怎么做? 应用第六题 抵制安理会决议 朝将继续发射卫星15年的临时工被辞退 没保险也没补偿催缴单贴门口让骗子利用 张贴时能否隐网购的杜蕾斯拆开竟有头发丝 临海打掉浙江高考语文研讨会 预测阅读和写作是蒙古官方对总统额勒贝格道尔吉访朝持低平等对话才能改善美伊关系威廉凯特全家福幸福满溢(组图)印媒:印度否认允许美建军事基地徳媒:代工厂出纰漏“iPhone6”美媒:美十大最危险工作云南语文名师周丽蓉出版新著 一起来触“最美一线职工”请你投票男子入室盗窃 失足坠楼身亡罗应光任市委书记 玉溪发展“四不变”图文:实践课超三成 学生更接地气图文:武汉54条公交线路将临时调整一家人都出了门 别墅里何来亮光学生宿舍安装空调不发遥控器网上练车现身江城节后月饼剩余不多爱心妈妈义肢损坏需更换 陌生市民送来
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘