首页 > 其他分享 >如何从零开始构建 API ?

如何从零开始构建 API ?

时间:2023-06-07 11:34:12浏览次数:47  
标签:API 检查 开发人员 规范 OpenAPI 从零开始 构建

假设你请承包商从零开始建造一座房子,你肯定期望他们交付最高质量的房子。他们必须通过检查、遵守安全规范并遵循项目中约定的要求。因为建房子可容不得走捷径。如果承包商经常走捷径,他们的声誉会受到影响,从而失去客户。其实,开发 API 就像建房子一样。

构建 API 时,在将其推向市场之前,创建一个完全功能的最终产品对于开发人员想要使用和信任至关重要。如果一切顺利,你将有希望扩展你的 API 策略,但是如果没有正确的流程,则可能在错误基础上构建 API 程序,并使长期成功面临风险。所有这些都始于制定正确计划。


1、计划

就像承包商在开始新建筑物时依赖蓝图一样,你需要在开始建构 API 之前制定计划。不要让你的 API 成为比萨斜塔。幸运的是,有一个 API 架构师的蓝图,OpenAPI 规范就是其中之一。OpenAPI 规范旨在提供一种标准格式,使开发人员可以创建易于跨国界、技术堆栈和行业理解和使用的 API。

试图使用 OAS 集成 API 的人应该能够分解和理解 API 提供的内容。就像蓝图清晰地说明了建筑物应该如何建造一样,OpenAPI 规范为API的构建提供了明确的设计结构。在任何开发之前,它让业务和技术利益相关者知道将包含在 API 中的内容。这个过程被称为“先设计后开发”的方法,其中 API 规范处于项目前沿。从一开始遵循 OpenAPI 规范也使得开发人员可以更快地构建出符合要求的 API,因为所有必要信息都已经列出来了。


2、建构

你花费了数小时、数天、数周甚至数月来完善你的 API 设计,现在终于是开始构建的时候了。建造房屋时,拥有适合项目的正确团队和正确工具非常重要。同样,在构建 API 时也是如此。有许多工具可以帮助你以简单高效的方式构建出你的 API。


3、检查

这一步对于成功至关重要。无论是家庭还是 API,都需要进行测试和检查以发现错误和缺陷。在进行房屋检查时,通常需要满足一系列要求才能通过检查。有很多公司不会测试他们的 API。同样,在新房建设上我们也假定建筑师应该确保施工质量良好,但实际情况并非总是如此。创建“足够好”与“完美”的东西各有利弊。在软件方面,“足够好”的第一个产品可以被认为是完全可接受的工作流程,但你应该确保它“足够好”以便使用。


4、描述和文档

太棒了,你已经完成了你的项目。它已经通过检查并且表现出色,现在你准备将其推向市场。 你的第一反应可能是只需将其发布并让 API 自己说话,还不行!为最终用户记录你的项目非常重要。 在我们房屋示例中,你需要描述平方英尺、所在社区、卧室和浴室数量、厨房电器类型、厨房美丽的自然光线等信息。 图片可能会欺骗人,因此为潜在买家详细说明至关重要。对于你的 API 也是如此。 编写文档很困难,但提供易于使用的 API 所带来回报值得投资。 引导他们浏览选项,以便他们不必做出假设,并在假设不正确时感到沮丧。


5、投放市场

你的成品已经经过测试和检查,准备向公众展示!通过创建一个建立在坚实基础上并且有良好文档记录的东西,这样任何看到它的人都会知道里面究竟是什么。无论你是在建造房屋还是 API,请创造出让自己感到骄傲的东西。发布一些能够引起人们注意的东西,这是你创造出惊人之物的机会,在这个环节也要多花点心思。


Eolink 翻译】原文链接:《How to Build an API From The Ground Up》

标签:API,检查,开发人员,规范,OpenAPI,从零开始,构建
From: https://www.cnblogs.com/apibest/p/17462878.html

相关文章

  • .net core WebAPI 初探及连接MySQL
    1.前言笔者最近跟着微软官方文档学习.netcoreWebAPI,但发现其对WebAPI连接数据库、读取数据库方面讲得不够细致明了。写此文的目的,即实现.netcoreWebAPI的GET、POST方法访问数据库,并输出结果。2.开发准备2.1操作系统Windows10/Windows72.2.netcoresdk.netcore......
  • Adobe 构建 IDP 之路的经验与教训
    在过去的25年多时间里,我创建了软件组件和分布式框架,建立并领导了相关团队。近几年我致力于推动Adobe服务开发、部署和管理系统的开发人员生产力。 抽象陷阱在云时代早期,Adobe的每个团队都有自己的云账户、部署系统,其对应的成熟度也截然不同。很快我们就意识到需要对此进行......
  • cookies Web Storage API
    https://developer.mozilla.org/zh-CN/docs/web/api/document/cookie从Firefox2起,有更好的客户端存储机制用以替代cookie- WHATWGDOMStorage (en-US).你可以通过更新一个cookie的过期时间为0来删除一个cookie。请注意,更多/更大的cookies意味着每个请求都要包......
  • 如何在Flutter中构建自定义Widget
    Flutter最近越来越流行。您可以使用它来构建可在MacOS、Windows和Linux上顺畅运行的复杂应用程序。但是构建这些应用程序并不总是一个简单的过程。您经常需要重构代码以保持应用程序的性能。一种这样的重构技术是提取重复的代码和组件并在多个地方重用它们。在本教程中,您......
  • 构建之法读书笔记之二
    继续我的阅读之旅,上次说到我们编程时要规范化代码,这样方便他人也方便自己,其次就是要交流,来使我们的合作更加顺利。第五章又是团队,果然在软件工程这一领域扩展到信息技术乃至整个人类社会,最不能忽视的就是团队,这也是老生常谈了。本章讲了团队模式。团队模式有很多种如作者给我们......
  • 构建之法读书笔记之一
    和人月神话一样,构建之法也是老师所推荐的书目,当然这也是一本早有耳闻却现今才刚刚上手的一本。此书开始便告诉我们什么是软件工程,以及它与现代计算机技术之间的关系。什么是软件工程呢?软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程。它包括下......
  • 构建之法读书笔记之三
    首先还是回顾一下之前的阅读,团队的合作模式、敏捷流程。对于合作,我们需要足够的交流,足够的耐心,同时也要积极发展个人能力,争做软件工程界面的优等生。这次我们要讲的是用户,每一个程序、项目,最终的审核者都是我们的目标受众——用户。因此我们最终的目的就是让用户满意。那怎么才能......
  • 构建之法阅读笔记01
    阅读代码大全有感: 在我的软件开发经验中,我经常会写出冗长且难以理解的代码。我认为将所有功能都放在一个函数或者一个类中是最简单的方法,同时也不需要处理代码的复杂性。但是,在读完《代码大全》后,我意识到这种做法会导致代码的可维护性降低,而且使代码的重复性也增加。 根据书......
  • 构建之法阅读笔记02
    人月神话读书有感:在我的软件开发经验中,我曾经认为增加人力就能够加快软件开发速度。但是,我在读完《人月神话》后,意识到这种做法是错误的。根据书中的描述,增加开发人员的数量并不一定能加速软件开发的进度,反而可能会延迟项目的完成时间。这是因为在一个时间节点上,有很多的......
  • 构建之法阅读笔记03
    阅读《人件》有感:在我的学习中,我曾经认为技术才是软件开发中最重要的方面。因此,我在项目学习中更注重了技术层面,而忽视了人性层面。然而,通过阅读《人件》这本书,我意识到这种做法是错误的。根据书中的描述,技术是软件开发中非常重要的一部分,但是人性因素同样重要。充分考虑......