写点什么

API 发展预测

  • 2014-03-10
  • 本文字数:2566 字

    阅读完需:约 8 分钟

去年是 API 快速发展的一年,无论从应用、技术、投资等角度来看都有了很大进步,在 ProgrammableWeb 目录中的 API 数量首次超过了一万个,3scale 网络公司的 CEO Steven Willmott分析了 API 在 2014 年的发展趋势。

从 API 数量方面讲,Steven 认为将会大幅增加:

2014 年会有很多新的 API 出现,列于众所周知的目录中的公共 API 数量刚刚达到 10,000,并且有更多私有和半私有的 API,其数量多于公共 API。这些私有 API 包括各种各样不断增加的种类,包括移动后端、SAAS 集成 API、甚至有重量级的 B2B 集成在家用电子硬件设备,比如修改飞利浦灯泡色调的 API。

在 2014 我们预计这些趋势将继续,公共和私有 API 的数量将爬升到 100,000 和 200,000 之间——其数量已经接近这下界了。如果正常估计的话,私有 API 与公共 API 的数量比将达到 9:1 左右。

不仅是数量增加,API 也会扩展到主流应用。Steven 的第二个预测与公司推出的 API 类型的扩大和增长有关——现在这些包括运动服装公司、零售商、高科技设备制造商、建筑公司、慈善机构和我们能想到的几乎每个经济领域。Steven 认为这一趋势将继续并深化。

API 的版权将成为一个关键争论点,Steven 指出,重新开庭的 Oracle 与 Google Java 的版权一案,代表着在 API 规范上进行版权执法的争论已经回来了,并且这个案子可能有广泛的影响。

如果推翻了——意味着特定的接口模式可能保护其版权并且阻止再利用。虽然在某些情况下可能需要进行保护,但一般的 API 版权却很可能对创新起到很深的恐吓作用——这将有效的限制了通用和关键的接口模式,并禁止其他人使用。类似 API Commons 的活动可能有助于建立起一个可以重复利用的模式体系——但是像这样的努力仍然处于起步阶段——版权辩论将成为 2014 年的一个重要特征。

除此之外,服务描述技术会显得格外突出:对于 REST API 的新兴的重要挑战之一是 API 的提供商很少发布可定位的机器可解析的 API 元数据。虽然有些新兴的格式如 WADL 和 Swagger 可以使用,以及一些新的格式如 Blueprint 和 RAML 的出现,但它们只是很好的部分解决方案,不能被广泛采用。

Steven 认为,更多 API 聚合器将出现:

随着 API 数量的增加,一些中间层计划如 Segment.IO、Zypr 和其他一些正不断涌现。这种类型的聚合器产生了一个单点集成多个后端的 API。在某些情况下,对于它们整合的 API 来说,聚合可能会处于一个危险的位置。但在另一些情况下它们将被张开双臂欢迎——为开发者降低复杂性并且削减了直接支持成本。由于 API 的数量增加,聚合出现的领域也只会增加。

API 开发者工具将成为一个巨大的增长领域,Steven 认为,很多 API 的供应商工具源于一些公司如 Mashery 公司、Apigee 公司和其他一些公司都致力于帮助 API 的所有者来提供这些 API 给其他人。这是一门必要的技术,并且现在也已经被广泛采用。然而,到现在为止很少有工具是为了使用端的 API 而开发的——即为了便于开发人员调试、监控和跟踪他们应用程序中 API 的使用情况的工具。

2013 年已经看到了一些新公司涌现出来满足这种需要,这些公司包括 Runscope 和 API Science,有可能更多公司会涉及此方面,包括 3scale 的一个新产品。对于使用 API 的开发者来说创新是至关重要的,因为对于开发者来说,甚至使用有据可查的 API(有完善文档的 API)来实现自己的目标是个很大的障碍且有很多的挫折。

Steven 指出,单页应用程序将成为 API 新兴的强大驱动:

由于 HTML5 正在显著增长,用于 HTML 页面应用的单页面应用程序架构(SPA)成为了可能。这些应用程序有效地使用 HTML、CSS3 和 JavaScript 联手创造了一种应用程序,它能够只在网页浏览器中打开一个单独的 HTML 页面,并且随后可通过调用 API 到后端服务器来执行所有应用的功能,而不必转到一个新的 Web 页面上去。特别是,采用的 Javascript 框架如 Angular.js 等正在推进其发展、工具也正在改进并且新的框架如 Famo.us 已经给 JS 的发展中增加了网页的吸引力。

因此,我们预计在 2014 年 SPA 架构将开始成为新业务 / 功能型应用程序的常态,并且将慢慢变成拥有 E-commerce/Retail 风格外观的应用程序。

更多超媒体 API 将被采纳,Steven 认为:通过在 API 调用中返回响应中的编码许可操作,超媒体风格的 API 提供了一个增加 API 灵活性的方法,该功能允许 API 的潜在功能来动态的改变他们做出的 API 调用,从而与变化的情况相适应。

在使用超媒体风格 API 和静态的固定 URL 的 API 之间仍然有着显著的权衡,然而有一些新兴的、较大规模的部署,包括新的公共媒体平台 API(Public Media Platform APIs)以及亚马逊最近发布的应用程序流 API(Appstream API)。

Steven 认为,公众数据 API 将迎来突破性的一年:

在试图预测哪些种类的 API 将增长最快时,我们一直久违的一类是公众 API。全球城市,例如纽约、芝加哥、旧金山、阿姆斯特丹、赫尔辛基已经发布了越来越多的数据集,并且现在的 API 随着时间的推移——为公众提供了基础设施数据,他们可以反过来制作自己的应用程序、可视化效果和两者的混合。我们认为由于政府提供所有公民需要的网页和移动应用程序太过昂贵——公众数据提供了创新的渠道和公众自我帮助的机会,因此这一趋势将加速的更为迅速。另一个加速的原因是通过一些措施使增长变得更快,如 open311、CitySDK 和 CityProtocol 对整个城市中的一些接口进行了标准化,这使得其使用更加简单并且同时扩大了使用这些数据的应用程序的市场。

此外,openAuth、JSON 和其他 Web 的原生技术将持续增长,Steven 指出:2013 年许多新的 API 首先支持 JSON,并且最重要的是不总是添加 XML。这种趋势,随着其它原生 Web 标准的采用可能在 2014 年变得更加强大,因为手机(移动端)和 HTML5 + Javascript 对 API 的规划将有越来越多的影响。即使 API 的服务主要是 B2B 集成用例(这曾经是 SOAP / XML 的领地),移动用例被认为是未来的附加并且是影响技术的选择。

MuleSoft 公司工程副总裁 James Donelan 最近预言:一场 API 战争即将来临。云端提供商和新一波配备有 API 的开发人员将导致大规模的技术颠覆。而 API 就是这场变革所使用的弹药。James 认为,随着 API 使用的激增,一种构建应用程序的全新的商业模式正在脱颖而出。在这种商业模式下,公司和开发人员通过公共或私人 API 选择微功能部件,这些微功能部件可以相对轻松地被整合或丢弃。

2014-03-10 01:041792
用户头像

发布了 501 篇内容, 共 259.6 次阅读, 收获喜欢 61 次。

关注

评论

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

猿灯塔:spring Boot Starter开发及源码刨析(二)

猿灯塔

Java 猿灯塔 源码刨析

mac vmware centos7 设置静态IP

愤毛阿青

network vmware Centos 7

性能碾压 POI !利用模板语法快速生成 Excel 报表

葡萄城技术团队

表格控件 GCExcel 服务器端开发

Linux 进程必知必会

苹果看辽宁体育

Linux 操作系统

Rust是如何保障内存安全的

博文视点Broadview

读书笔记 rust

Node.js与二进制数据流

自然醒

Java node.js 大前端 二进制

一文看懂 OAuth2

Geek_z9ygea

Java 大前端 Web oauth2.0

图片处理不用愁,给你十个小帮手

阿宝哥

Java 开源 大前端 工具 图片

JVM中栈的frames详解

程序那些事

JVM 堆栈 性能调优 JIT GC

Redis进阶篇三——主从复制

多选参数

redis redis高可用 redis6.0.0 Redis项目

Java集合总结,从源码到并发一路狂飙

给你买橘子

Java 编程 算法 集合

浅析 VO、DTO、DO、PO 的概念、区别和用处!

Java小咖秀

学习 设计模式 模型 经验分享

开发者必备——IDEA配置清单

Noneplus

配置 IDEA

漫画 | 架构设计中的那些事

码农神说

架构设计 架构师 漫画编程

30 张图带你分分钟看懂进程和线程基础知识全家桶

爱嘤嘤嘤斯坦

Java 线程 进程 进程线程区别

kubernetes集群安装(二进制)

小小文

Kubernetes 容器

工厂方法模式

Leetao

Python 设计模式 工厂方法模式

Python中的@staticmethod和@classmethod的区别

BigYoung

Python classmethod staticmethod

Tomcat8.5源码构建

知春秋

tomcat tomcat构建 tomcat源码解读 tomcat剖析

字节跳动面试经验分享,已拿 Offer!

伍陆柒

Java 面试 大厂

关于计划的思考

zhongzhq

带你解析MySQL binlog

Simon

MySQL Binlog

推荐一款Python开源库,技术人必备的造数据神器!

狂师

Python 开源 自动化 开发工具 开发数据

Python类中的__new__和__init__的区别

BigYoung

Python __init__ __new__

还在划水?这个SQL你能写出来吗?

书旅

php MySQL SQL语法 sql查询

SpringBoot入门:00 - 初始化项目

封不羁

Spring Boot java 14

信创舆情一线--《关键信息基础设施安全保护条例》纳入2020年立法计划

统小信uos

信息安全

重学 Java 设计模式:实战访问者模式「模拟家长与校长,对学生和老师的不同视角信息的访问场景」

小傅哥

设计模式 小傅哥 重构 代码优化 访问者模式

​区块链技术的重要性

CECBC

不是完成你学习的 KPI ,而是要形成指导你行动的 OKR

非著名程序员

学习 程序员 提升认知 知识管理

一些思考

张健

API发展预测_语言 & 开发_崔康_InfoQ精选文章