2018 年是 API 世界变革的一年。
像 OpenAPI 规范 (OAS) 这样的开放标准已经得到广泛的增长和采用,像 AWS API Gateway 和 SwaggerHub 这样的 API 工具领域的领导者也扩展了对 OAS 3.0 的支持。我们还看到了供应商持续整合的趋势,包括 2019 年 3 月 Salesforce 以 64 亿美元收购 Mulesoft,以及 2018 年 7 月 Broadcom 以 189 亿美元收购 CA Technologies。
在 Smartbear,我们很高兴为我们的 API 工具带来了一些新的进展,包括发布 Swagger Inspector 用于探索和生成现有 API 的 OAS 3.0 定义,发布API 标准化用于大规模强制执行 API 标准,以及在 SwaggerHub 中支持 OAS 3.0 代码生成,以及添加本机 Jenkins 插件以支持我们的用户在 ReadyAPI 测试平台中不断发展的工作流程。
在 2018 年,我们还看到软件团队增加了对新平台的投资,以帮助促进他们的 API 开发。今天,超过 200,000 家 API 提供商正在利用 SwaggerHub 来标准化他们的 API 设计,并通过 OpenAPI 规范来扩展他们的 API 开发。我们有机会听取了这些团队中几位领导者的故事,他们分享了他们如何通过采用 SwaggerHub 来支持令人难以置信的增长或使他们的 API 工作流程现代化。
随着我们迈向新的一年,我们想借用其中的一些故事,并突出显示为什么更多的软件团队在 2019 年投资 API 开发平台的一些原因。
1. 标准化是扩展的关键
我们一次又一次地从那些在 API 目录不断增长的组织中工作的 API 架构师那里听到的一件事是,缺乏标准化是他们团队的时间和资源的最大压力之一。
对于大多数团队来说,在其 API 中设置和强制执行标准的过程完全是手动的。通常,这个过程涉及多个团队或团队成员,并且随着 API 和利益相关者的数量的增长,变得更加痛苦。
这是 Viasat 团队在 2017 年采用 SwaggerHub 时面临的问题。根据 Viasat 软件工程师 Roger Prenger 的说法:
“我们有很多接口使用相同类型的数据,我们一直在努力解决不同接口之间数据外观的变化。问题在于,它在一个 API 中被称为一种东西,在另一个 API 中被称为另一种东西,在另一个 API 中又被称为第三种东西。通过系统跟踪数据变得令人困惑。”
在 SwaggerHub 中,Viasat 发现可以使用名为 域 的可重用组件来标准化数据模型。通过域,他们可以创建可在 API 中使用的通用模型,而无需额外的强制执行。
“我们找到了一种在 SwaggerHub 中使用域的方法,以便拥有一个可在所有 API 中使用的通用基本数据结构。”
2. 消除沟通障碍
在沟通渠道比以往任何时候都多的时代,您可能会认为协作将是一个完全简化的过程。不幸的是,我们经常从新的 SwaggerHub 用户那里听到的是,分散的沟通渠道(Slack 消息、电子邮件、JIRA 评论)可能会导致在 API 生命周期中进行更改时缺乏可见性。
在 API 开发方面,特别是在计划和设计的早期阶段,拥有用于传达变更、提出问题和提供反馈的标准格式对于避免下游问题至关重要。当您跨团队和跨地域工作时,这一点变得更加重要。
这是我们从 Bonotel 的 CIO Scot Hastings 那里听到的一件事:
“SwaggerHub 极大地改善了我们内部团队和外部合作伙伴之间关于 API 开发的沟通。这一点至关重要,因为我们内部不进行大量的 API 开发 — 大部分工作是通过我们的合作伙伴完成的,他们也会彼此合作。SwaggerHub 充当所有移动部件之间协作的集中主机,并使该过程非常高效、直观和无缝。”
协作是否正在成为您当前 API 开发工作流程中的障碍?了解 Bonotel 如何在 SwaggerHub 中简化协作。
3. 以设计为先的转变
在 2018 年,我们看到越来越多的组织开始采用“以设计为先”的 API 开发方法。在 2018 年 10 月进行的一项对 3,000 多家 API 提供商的调查中,该调查将于 2019 年 1 月正式发布,我们发现近一半的组织至少在开发中的某些 API 中遵循以设计为先的方法。
向以设计为先的方法的转变正在帮助团队在 API 开发的早期阶段达成一致,从而减少错误,加快迭代,并能够实现并行开发。这是 Realpage 移动开发总监 Travis Koenig 在 SmartBear 用户大会 SmartBear Connect 上介绍现代化企业 API 开发流程时讨论的内容。
正如 Travis 解释的那样:
“SwaggerHub 使我们能够以以前不可能的方式执行项目,使我们生命周期中的许多团队能够并行执行更多操作并加快开发速度。”
4. 集中 API 发现
内部发现是一个经常被忽视的挑战,直到多个团队和利益相关者参与 API 的开发和维护。与发现相关的常见问题之一涉及团队如何查找和使用 API 的最新版本。当团队依赖像 Github 这样的源代码控制主机不仅存储源代码,还存储 API 定义时,通常会发生这种情况。
正因如此,我们在 SwaggerHub 中构建了支持托管和版本控制 OAS 定义和 API 文档的功能。SwaggerHub 可以作为团队探索现有 API 的中央存储库,并让开发团队能够为具有不同角色的利益相关者(包括 API 设计者和使用者)分配访问权限。当在 SwaggerHub 中进行更改时,这些更改也会与您的 Github 存储库同步,使 SwaggerHub 成为您 API 文档的权威来源。
Evosus, Inc 的架构师 Steve Hawkins 解释了 SwaggerHub 中改进的 API 发现如何帮助降低成本和工作量:
“SwaggerHub 为我们 API 的开发和呈现提供了一个有效的门户。我们使用 SwaggerHub 作为我们 API 使用者的参考文档。我们了解到,实施我们 API 的开发人员正在使用代码生成选项来减少他们的工作量和成本。”
5. 摆脱开源工具的束缚
作为开源 Swagger 工具背后的公司,我们理解开源的力量,尤其是对于那些试图快速扩展并希望消除技术障碍的组织。但是,随着您的 API 项目增长并变得更加复杂,拥有工具来支持您的工作流程的需求变得显而易见。
这是 Viasat 的系统工程师 Cyndi Recker 在 2018 年 SmartBear Connect 大会上发表的题为《通过以设计为先的方法支持快速系统增长》的演讲中讨论的内容。
“在‘扩大规模’阶段,您需要快速行动,尝试将所有内容整合在一起。当您度过扩大规模阶段后,您真正需要锁定一些业务方式。就使用 SwaggerHub 而言,这对我们来说是一个优势。Swagger 开源是您在 SwaggerHub 中获得的基础,但我经常被问到,我为什么要使用 SwaggerHub?我可以告诉您,随着您的团队成长、您的产品成长、您的市场成长,这正是解决问题的方法。”
拥有支持您增长的工具将有助于打破信息孤岛,改善协作,并减少可能阻碍构建可扩展 API 程序的摩擦。并且,由于 SwaggerHub 将 Swagger Editor、Swagger UI 和 Swagger Codegen 等工具的功能集成到一个中央平台中,因此迁移到 SwaggerHub 将是您团队的无缝过程。
准备好迎接 2019 年了吗?
我们很高兴看到超过 200,000 名 SwaggerHub 用户和数百万的 Swagger 开源用户在 2019 年取得的所有伟大成就。我们将继续发展我们的工具,以满足现代 API 团队的需求,构建新功能来帮助您完成工作,并与您信任的工具集成,以交付高质量的 API。
让 SwaggerHub 成为您 2019 年 API 之旅的一部分。 单击此处立即安排演示。