2013年影响Web发展的五类API

标签: 资讯 API Web开发 | 发表时间:2012-12-06 19:05 | 作者:
出处:http://blog.jobbole.com

英文原文: 5 APIs that will transform the Web in 2013,编译: CSDN-张红月

本文作者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渲染/透视语言中。

2013年影响Web发展的五类API

这就意味着你可以创造出一些非常奇特的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这个例子:

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

你也许在使用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 发展 api] 推荐:

2013年影响Web发展的五类API

- - 博客 - 伯乐在线
英文原文: 5 APIs that will transform the Web in 2013,编译: CSDN-张红月. 本文作者Alex MacCaw是一名JavaScript 程序员,O’Reilly作者,目前就职于Stripe. 他认为,在接下来的一年,Web领域将会有越来越多的储技术蜂拥而至.

Web API 设计摘要

- - CSDN博客架构设计推荐文章
最近读了一本微电子书 Brian Mulloy 所著《Web API Design》感觉颇多收获,特对其内容做了个整理摘要以便回顾其观点精华以指导日常工作中的设计思路. 本文主要讲述 Web API 设计,追求一种更务实的 REST 风格. 正如作者所说 REST 是一种架构风格,而非严格的标准,没必要在形式定义上去做过多真论,到底什么才是真正的 REST.

Web API设计方法论

- - 博客园_知识库
  英文原文: A Web API Design Methodology.    为 Web 设计、实现和维护 API 不仅仅是一项挑战;对很多公司来说,这是一项势在必行的任务. 本系列 将带领读者走过一段旅程,从为 API 确定业务用例到设计方法论,解决实现难题,并从长远的角度看待在 Web 上维护公共 API.

AT&T公布HTML5 Web应用API

- - HTML5研究小组
北京时间1月10日消息,据国外媒体报道,AT&T首席营销官大卫·克里斯托弗(David Christopher)今天在该公司第六届开发者峰会公布了面向HTML5应用的API(应用编程接口)平台API Catalog. HTML5应用可以在多种设备和移动操作系统上运行.   iPhone版Visual Voicemail将是AT&T的首款网络API.

HTML5 Web Speech API,让网站更有趣

- - SegmentFault 最新的文章
Web API 变得越来越丰富,其中一个值得注意的是 Web Speech API. 传统的网站只能“说”,这个API的出现,让网站能“倾听”用户. 这个功能已经开放了一系列的用法,非常棒. 在这篇文章中,我们将看一下这项技术和建议的用法,以及如何用它来增强用户体验的一些好例子. 声明:本技术比较前沿,目前该规范是W3C的“非官方编辑器的征求意见稿”(截至2014年6月6日).

Flickr向开发者提供实时Web API

- 品味视界 - cnBeta.COM
Flickr今天向程序员推出了一个名叫Photo Hack Day的活动,释放了一批新的代码和API,让开发人员能够利用Flickr实时访问数据库从而构建新的应用,目前Flickr已经保有60亿张以上的图像. 新的API可以搜索每天上传的数以百万计照片并实时提供,这些数据还包含50多个机构例如美国宇航局,美国国会图书馆,美国和英国国家档案馆的更新.

ASP.NET Core Web API 最佳实践指南 - hippieZhou - 博客园

- -
当我们编写一个项目的时候,我们的主要目标是使它能如期运行,并尽可能地满足所有用户需求. 但是,你难道不认为创建一个能正常工作的项目还不够吗. 同时这个项目不应该也是可维护和可读的吗. 事实证明,我们需要把更多的关注点放到我们项目的可读性和可维护性上. 这背后的主要原因是我们或许不是这个项目的唯一编写者.

基于Kong和Kubernetes的Web API多版本解决方案

- - DockOne.io
今天分享一个我们正在使用的一个基于Kubernetes以及Kong网关的Web API多版本管理的解决方案,这种方案已经在我们的生产环境运行了将近两年,也迭代了很多个版本,我们觉得这个方案非常的适合用在微服务当中. 什么是Web API多版本. 版本的概念大家应该都知道,那么什么是Web API的版本呢.

Google 正在打造一个可统领所有网页操作的 Web Intents API

- Yori - 谷奥——探寻谷歌的奥秘
Chromium Blog宣布Google正在打造一个被称为Web Inents的系统,它将允许Chrome用户在不同网页应用之间传输数据,甚至可以让Android用户在不同应用之间分享数据. 其方法就是创造一个通用的API,使得所有网页应用都可调用并存取数据,并允许其它网页应用使用. Google举了一个图片分享网站的例子,比如这个图片分享网站有一个编辑功能,那么就可以使用Web Intents API来让用户使用其它任何一个基于网页的图片编辑器来编辑图片.

LibreOffice将发展Web、iOS和Android版本

- Heng Yang - cnBeta.COM
OpenOffice.org的分支项目LibreOffice的开发方The Document Foundation今天宣布将尝试在Web浏览器和iOS、Android移动设备上运行这一办公软件,预计这些产品将在2012年年底到2013年初正式发布.