新人如何高效写 API 文档

什么是 API 文档?

在深入研究 API 文档之前,让我简要解释一下 API 是什么以及它的基本功能。

API 是应用程序编程接口的首字母缩写。

 编辑

切换为居中

通过 API 将设备连接到数据库

无论你是初学者还是高级开发人员,你都会在软件开发过程中经常遇到这个术语。它是你的计算机、手机或应用程序与外部资源之间的桥梁。

换句话说,API 使你的软件能够与其他软件程序、数据库或资源进行交互。无需为应用程序的特定功能编写程序,你可以使用具有类似功能的现成 API。

许多 API 是公共的(免费),而其他 API 是私有的,并且需要支付私钥才能访问 API。有不同类型的 API,例如 REST(具象状态传输)、SOAP(简单对象访问协议)等。

我们继续——那什么是 API 文档?好吧,它是一份书面指南,说明了 API 的功能、如何将其集成到你的程序中、API 的用例以及示例。

请记住,API 文档是技术内容。这意味着它将包含一些技术术语,但仍应可读且易于理解。

API 文档中包含的内容

1. 概述

这类似于项目报告的摘要页面。

概述应包含 API 及其正在解决的问题的摘要。它还可能包括使用此特定 API 优于其他类似 API 的好处。

2. 教程

这是文档的主要部分。

它应该包括你用来向用户解释 API 概念的不同内容格式。它还可以包括参考链接以及集成和使用API的分步指南,以便它能够正常工作。

3. 例子

一旦你解释了 API 的工作原理和/或提供了详细的步骤,最好展示调用、响应、错误处理和其他关于开发人员如何与 API 交互有关的操作的示例。

4. 词汇表

虽然这是可选的,但我建议为你的 API 文档添加词汇表页面。

为了避免长文本块让用户感到厌烦,你在整个文档中使用的各种术语、模式、图像等的解释都可以放到词汇表中。然后你可以在文档中引用这些内容,并链接到词汇表。

如何编写有用的 API 文档

了解 API

正如我们刚刚讨论的那样,你应该对正在记录的 API 有第一手的了解。请记住,你的目标是指导可能对 API 一无所知的潜在用户。

如果你对产品的架构、功能和其他重要信息有深入的了解,你将能够有效地编写 API 的产品描述部分,而无需进行任何猜测。

如果你对正在编写的 API 没有充分了解或完全相信,请花一些时间进行研究并尽可能多地收集信息。自己使用 API,以便深入了解它的工作原理。

使用相关内容

API 文档不仅限于书面指南。你可以使用短视频或 PPT 来说明 API 的集成。

在编写文档时说明不同的用例。这将帮助读者识别哪一个与他们的相似,或者找到他们可以轻松关联的一个。

此外,在你认为必要的地方和时间包括一些代码片段。这将使读者可以在阅读文档时跟进。正如流行的谚语所说,“告诉我,我会忘记。教我,我会记住。让我参与,我会学习。”

使用专业术语

API 是软件或硬件的指南,因此你在编写文档时需要使用一些技术术语。如果你想成为一名专业的技术作者,请一定要坚持。

一份好的文档不是具有复杂语法结构的文档,而是具有相关性、直接性和清晰性的文档。只有用简单易懂的语言编写时,它才能具有相关性。

你的 API 文档应尽可能采用最简单的形式,但不应遗漏任何重要细节。此外,请确保在第一次使用它们时解释首字母缩略词和技术术语,或者将它们放在文档末尾的词汇表中。

列举指南

如果内容是逐项列出的,则文档更容易理解。这是写得简洁的主要原因。

逐步对指南进行编号或逐项列出有助于用户弄清楚在每个时间点要做什么。这类似于从 A 到 Z 阅读字母表。

通过明确的步骤,用户在遇到错误时可以轻松返回。

检查错误

每次阅读文档时,总会有一些内容需要更改、更新甚至删除。这是作者们经常会遇到的经历,这很正常的。

黄金在提炼之前要经过几道熔炉。这么说吧,你的文档应该经历一个相似的过程(而不是一个炽热的熔炉),这样它就会成为一个准备充分的文档。

彻底的审查过程可以帮助你最大限度地减少任何错误并完成清晰明了的文档。

API 文档的最佳工具

编写 API 文档可能非常耗时且难以维护。但是一个好的文档工具可以缓解大部分(如果不是全部)这些问题。

有许多工具可以让你的 API 文档之旅更轻松。使用工具的好处是这些工具提供的协作功能和标准模板,而不是从头开始。

下面列出了一些流行的工具及其优势。

Eoapi

Eoapi 是一款类 Postman 的开源 API 工具,它更轻量,同时可拓展。

支持API有关的核心功能,还可以通过插件市场帮助你将API发布到各个应用平台,比如发布到网关成API 上线,或者和低代码平台结合,将API 快速变成可使用的组件等。

Postman

Postman 是一个用于构建和维护 API 的平台,具有创建 API 文档的功能。

Postman 使用其机器可读的文档工具来简化 API 文档过程。你可以免费注册 Postman 并将其安装在你的 PC 上。

尽管 Postman 为其自动生成的所有 API 文档提供更新,但它的 UI 一开始可能难以理解。

DapperDox

DapperDox 是一个开源 API 文档工具,它提供了用于创建文档的各种主题。该工具结合了图表、规范和其他内容类型,为你提供更好的文档。

它的优点是允许作者使用 GitHub 风格的 markdown 进行编写,但此工具的更新是不定期的。

SwaggerHub

SwaggerHub 是许多技术作家的流行 API 文档工具,因为它具有交互性且易于使用。

虽然它对初学者很友好,但它需要为个人使用以外的任何东西付费。因此,如果你是某个组织的一员并且想要使用 SwaggerHub,则你的组织必须为此付费。

希望这篇文章能帮助到你~

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/22037.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mr. Cappuccino的第53杯咖啡——Mybatis源码分析

Mybatis源码分析 Mybatis源码分析入口1. 读取配置文件总结 2. 解析配置文件核心代码(一)核心代码(二)分析parse()方法分析build()方法 总结 3. 获取SqlSession总结 4. 获取mapper代理对象总结 5. 使用mapper代理对象执行Sql语句二…

MySQL操作命令详解:增删改查

文章目录 一、CRUD1.1 数据库操作1.2 表操作1.2.1 五大约束1.2.2 创建表1.2.3 修改表1.2.3 删除表1.2.4 表数据的增删改查1.2.5 去重方式 二、高级查询2.1 基础查询2.2 条件查询2.3 范围查询2.4 判空查询2.5 模糊查询2.6 分页查询2.7 查询后排序2.8 聚合查询2.9 分组查询2.10 联…

【移动机器人运动规划】02 —— 基于采样的规划算法

文章目录 前言相关代码整理:相关文章: 基本概念概率路线图(Probabilistic Road Map)基本流程预处理阶段查询阶段 优缺点(pros&cons)一些改进算法Lazy collision-checking Rapidly-exploring Random Tree算法伪代码…

数据结构 10-排序4 统计工龄 桶排序/计数排序(C语言)

给定公司名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。 输入格式: 输入首先给出正整数(≤),即员工总人数;随后给出个整数,即每个员工的工龄,范围在[0, 50]。 输出格式: 按工龄的递…

【Jmeter】配置不同业务请求比例,应对综合场景压测

目录 前言 Jmeter5.0新特性 核心改进 其他变化 资料获取方法 前言 Jmeter 5.0这次的核心改进是在许多地方改进了对 Rest 的支持,此外还有调试功能、录制功能的增强、报告的改进等。 我也是因为迁移到了Mac,准备在Mac上安装Jmeter的时候发现它已经…

Keil MDK环境下FreeModebus移植踩坑记录

Keil MDK环境下FreeModebus移植踩坑记录 文章目录 Keil MDK环境下FreeModebus移植踩坑记录armcc (arm compiler v5)环境实验一:实验二: armclang (arm compiler v6)环境实验一:实验二:实验三:实验四 总结 armcc (arm c…

安防视频汇聚平台EasyCVR视频广场面包屑侧边栏支持拖拽操作

智能视频监控平台EasyCVR能在复杂的网络环境中,将海量设备实现集中统一接入与汇聚管理,实现视频的处理与分发、录像与存储、按需调阅、平台级联等。 TSINGSEE青犀视频汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协…

详聊API接口?淘宝API接口在ERP系统中扮演者什么角色?

什么是API? API全称应用程序编程接口(Application Programming Interface),是一组用于访问某个软件或硬件的协议、规则和工具集合。电商API就是各大电商平台提供给开发者访问平台数据的接口。目前,主流电商平台如淘宝…

软件安全测试和渗透测试的区别在哪?安全测试报告有什么作用?

软件安全测试和渗透测试在软件开发过程中扮演着不同的角色,同时也有不同的特点和目标。了解这些区别对于软件开发和测试人员来说非常重要。本文将介绍软件安全测试和渗透测试的区别,以及安全测试报告在软件开发和测试过程中的作用。 一、 软件安全测试和…

【JavaEE初阶】Servlet(四) Cookie Session

文章目录 1. Cookie && Session1.1 Cookie && Session1.2 Servlet会话管理操作 1. Cookie && Session 1.1 Cookie && Session Cookie是什么? Cookie是浏览器提供的持久化存储数据的机制.Cookie从哪里来? Cookie从服务器返回给浏览器. 服务…

IntelliJ IDEA 2023.2社区版插件汇总

参考插件帝:https://gitee.com/zhengqingya/java-developer-document 突发小技巧:使用插件时要注意插件的版本兼容性,并根据自己的实际需求选择合适的插件。同时,不要过度依赖插件,保持简洁和高效的开发环境才是最重要…

JdbcTemplate

目录 1、简介 2、开发步骤 2.1、导入坐标 2.2、创建表和类 2.3、创建JdbcTemplate对象 2.4、执行数据库操作 3、解耦 4、增删改查 ⭐作者介绍:大二本科网络工程专业在读,持续学习Java,努力输出优质文章 ⭐作者主页:逐梦苍穹…

AlmediaDev Style Controls Crack

AlmediaDev Style Controls Crack StyleControls是一个稳定、强大的包(超过100个组件),它使用经典绘图、系统主题、GDI和VCL样式。该软件包包含扩展标准VCL控件的独特解决方案,还包含许多独特的高级控件,用于创建具有Fluent UI模糊背景的现代…

Windows下QT Creator安装MinGW 32bit编译器

前言 注:本作者是基于FFmpeg开发需要,故在Windows下QT Creator中安装MinGW 32bit编译器!其它型号编译器参照此文章基本可以实现! 一、下载需要的编译器 1、下载链接 链接: 链接:https://pan.baidu.com/…

C++ - 模版进阶 - array

简介 之前对模版的进行了初步了解和使用,可查看博客:C 初始模板_c模板初始化_chihiro1122的博客-CSDN博客 其实模版除了是一类算法,或者自定义类型的 套用,还有其他功能,和其他的更高阶的使用方法。 之前在实现 各种 …

集成学习算法是什么?如何理解集成学习?

什么是集成学习? 集成学习通过建立几个模型来解决单一预测问题。它的工作原理是生成多个分类器/模型,各自独立地学习和作出预测。这些预测最后结合成组合预测,因此优于任何一个单分类的做出预测。 机器学习的两个核心任务 任务一&#xff1…

嵌入式:C高级 Day3

一、整理思维导图 二、判断家目录下,普通文件的个数和目录文件的个数 三、输入一个文件名,判断是否为shell脚本文件,如果是脚本文件,判断是否有可执行权限,如果有可执行权限,运行文件,如果没有可…

ARM 常见汇编指令学习 9 - 缓存管理指令 DC 与 IC

文章目录 ARM64 DC 与 IC 指令 上篇文章:ARM 常见汇编指令学习 8 - dsb sy 指令及 dsb 参数介绍 ARM64 DC 与 IC 指令 AArch64指令集中有两条关于缓存维护(cache maintenance)的指令,分别是IC和DC。 IC 是用于指令缓存操作&…

4.msf辅助模块

目录 1 在虚拟机中设置与外部相同的网段 2 当前内网中的可用IP arp_sweep 3 搜索指定IP的TCP端口信息 portscan/tcp 4 扫描http服务的路由 http/dir_scanner 5 SSH密码爆破 ssh/ssh_login 1 在虚拟机中设置与外部相同的网段 我真实机的地址的网段是192.168.0 我虚拟…

前端:地图篇(一)

1、前言 在很多的出行程序中,都会使用到地图这一个功能,在实际的开发中我们也不会去开发一个自己的地图模型。如果自己开发一个地图模型,那么需要投入的成本、人力都是非常巨大的。所以我们很多网站和APP中使用的都是第三方的接口和JS&#…