所有文章 > API生命周期 > API 优先对企业意味着什么?
API 优先对企业意味着什么?

API 优先对企业意味着什么?

API 优先并非昙花一现。毫无疑问,API 优先方法正在兴起,因为越来越多的公司试图利用基于 API 的软件消费模型的可重用性、自助服务和网络效应。但 API 优先到底是什么?API 优先开发又意味着什么?

我们可以从两个角度来思考API-first:技术和业务。从技术角度来看,API-first 很像它的名字。您无需直接编写代码或设计应用程序和用户界面,而是首先建立微服务之间的连接组织。API-first 开发将 API 及其使用模型的创建置于其他重点之前。

有了 API 基础,您可以更轻松地支持多个平台,例如 Web、iOS、Android 或 IoT。您还可以组合来自多个底层 API 的数据来创建各种前端用户体验。为了实施API 优先开发,团队通常会使用共享样式指南、标准规范和相关工具来确保整个组织的技术堆栈的一致性。

但 API 优先不仅仅在内部微服务中流行。在业务方面,API 优先正在成为整个公司赖以生存的常见(和流行)模式。作为证据,截至第三季度, GGV Capitol 的API 优先指数追踪了 60 多家筹集了 5000 万美元或更多资金的 API 优先公司,总融资额达 140 亿美元。这类新的API 即产品公司,如 Stripe、TwilioAssemblyAI、Shippo等,本质上都是 API 优先的,并将开发人员作为其第一消费者。

在我们的API-First LiveCast上,我们邀请了两位专家演讲者深入探讨 API-first 的含义。下面,我们将回顾此次活动的主要内容,以了解如何在您的组织内接受 API-first 思维方式。

从技术角度看 API 优先

对于2022 年 API 状态报告,Postman 询问了 37,000 多名开发人员和 API 专业人员的 API 习惯和偏好。当被要求定义“API 优先”时,最受欢迎的回答是:“在开始开发之前定义和设计 API 和架构。”报告发现,这个答案是 API 优先领导者中最常见的选择。

Postman 开发者关系主管 Joyce Lin 很快强调了上述定义中的架构方面。API 优先不仅与代码优先相反,而且 API 优先实际上意味着架构驱动。流行的 API 规范(例如 OpenAPI v2、OpenAPI v3、JSON Schema和GraphQL)可用于实现这种架构驱动的开发路径。“架构就像一份 API 合同,因此您可以体验设计优势并在生产者和消费者之间达成协议,”Lin 说。

Lin 承认,市场上有许多 API-first 的版本,成熟度从 API-last 到原型优先、设计优先和架构优先不等。架构优先设计将设计优先更进一步,可以说是 API-first 连续体中最成熟的演进。Lin 描述说,有了这个契约,消费者可以信任它来构建他们的集成。她描述说,拥有单一事实来源的最终好处是更早的反馈、降低开发成本、加快开发时间和增长,以及更具弹性的 API。“API 契约是 API-first 的最大标志之一。”

商业环境中的 API 优先

现在,我们已经简要了解了以 API 优先方式进行开发的含义,那么构建 API 优先业务是什么样子的呢?平台如何才能成功做到这一点?TravelTime 首席执行官 Charlie Davies 分享了他对采用 API 优先思维方式的看法。对于 Davies 来说,API 优先意味着改进他们的营销工作、磨练开发人员的经验,也许最重要的是——学会何时说“不”。

保持 API 的利基意味着意识到它们不是端到端的解决方案。正如 Davies 在Nordic API 上的一篇博客文章中所分享的那样,他的团队犯下的最大错误之一就是定位问题。

  • “我们知道 TravelTime 可以帮助优化新医院、零售园区或办公空间的选址。但当我们将自己定位为这些问题的解决方案时,我们的客户希望我们拥有端到端的位置推荐 SaaS 解决方案。”

TravelTime 最初的定位是推出定制环境,根据每个客户更改 API 规范,并反复与客户沟通以满足他们的需求。虽然这种定制工作对于公司早期的建立至关重要,但从长远来看,它并不具备可扩展性。“我们很快意识到,我们需要做出一些决定。我们面临规模问题,”戴维斯说。“我们卖的是建筑,而不是砖块。”

TravelTime 发现,通过调整营销材料来宣传“实体店”,他们可以吸引更多客户。令人印象深刻的是,当主页上的文案强调 API 优先时,他们的客户量增长了 93%。“我们现在知道了我们的局限性——我们是 API 专家,”戴维斯说。

API-First 的优点和注意事项

在设计阶段尽早构建 API 可以为企业带来诸多好处。例如,鼓励使用通用接口可以使您的服务本质上更具可重用性。通过将消费模式置于其他因素之前,您可以显著改善开发人员的体验,使您的应用程序更易于发现和构建。

贝索斯的命令之所以能达到如此神话般的地位是有原因的。就像它帮助亚马逊一样,如果一家公司决定向选定的合作伙伴或更广泛的公众开放微服务,将 API 放在首位可以促进软件开发并有利于外部化工作。强调设计优先的方法还可以从一开始就提高一致性,因为您为开发人员提供了更多的保护。API 优先提供了添加或删除功能的更大灵活性,并且符合敏捷开发原则。

当然,任何方法都有其缺点。采用 API 优先方法也面临一些挑战。首先,它确实需要重大的文化变革,而且你确实需要整个组织的支持才能让它值得你这么做。这可能需要一些准备时间才能实施。

其次,这种方法意味着要对开发人员文档投入更多,因为“文档就是产品”,戴维斯说。就这一点而言,API 优先的公司不应该过多地规定服务的使用方式。产品必须吸引许多潜在的用例,并且能够被不同类型的用户理解,无论他们是开发人员、架构师、首席技术官还是产品经理。因此,完善开发人员文档和支持材料可能是一个持续的平衡行为。

此外,正如 Lin 所说,API 优先确实需要抽象思维和架构规划,这是代码之外的一步。您必须考虑其他工程师可能希望如何访问您的资源。这种思维违背了代码优先的快速完成任务的心态。API 优先也可能是对通常的开发工作流程的重大改变,并且您可能正在处理不是以这种风格构建的遗留技术。这可能导致必须重新实现许多技术,就像Etsy的情况一样。

最后的想法:API-First = 幸福?

Lin 表示:“每个人的 API优先之路从来都不是一帆风顺的——它始终是一个持续而反复的过程。” Postman 的首席布道师兼Breaking Changes播客主持人 Kin Lane 指出,归根结底,人们更关心 API 规范所带来的结果,而不是确切的技术流程。因此,虽然明确定义“纯 API 优先方法”是什么样子及其好处很有帮助,但承认 API 优先是一个连续体这一现实也是有益的,组织在不同的地方发挥作用。

API 优先能带来真正的幸福吗?事实上,75% 的 API 优先公司开发人员表示自己更快乐。事实证明,保持软件开发团队的高昂士气可以积极影响生产力并减少倦怠和人员流失。因此,您可以说采用 API 优先是开发人员优先的决定。因此,请将 API 优先视为一种手段,为您的工程师提供他们所需的工具和经验,以实现更轻松的集成和更敏捷的应用程序开发。

本文翻译源自:https://nordicapis.com/what-it-means-to-go-api-first/

#你可能也喜欢这些API文章!