消费者导向的API设计指南
本书是一个深入探讨基于HTTP的API设计的开源资源。它的目标是构建易用且用户喜爱的API接口。从URL设计和一致的HTTP方法应用到更复杂的主题如认证模式和权限管理,本书都有详尽的覆盖。
我的期望是最终能通过出版社或自我出版的方式发行纸质版,同时也会提供免费的电子版本。正如尼尔森·豪在音乐上的尝试一样,我认为这种模式也许同样适用于技术书籍。
目前,这本书大约有55页。如果你觉得书中缺少了任何内容,请以问题的形式提交issue,我将很高兴为其添加相关内容。
购买纸质版
现在,你可以通过亚马逊购买到这本《消费者导向的API设计》的实体书。如果你想支持这个项目,购买一本将是极好的方式: 在Amazon上购买($14)。
下载PDF
PDF版本充分利用了内部链接,例如,目录链接到相关的部分,图例链接到相应的图,引用链接到书后的更多信息。
页面采用了交替的边距设计,因为这是为了双面打印而考虑的。所有的图表都以矢量图形的形式呈现,以保持文件大小小而图像质量高。
Evince中的屏幕截图,显示了超链接
目录
(略)
贡献
如果希望看到更多的话题在这个书中被讨论,提交一个issue并提出你的问题,我会进行研究并编写相关内容。如果你想为本书写作,提交一个pull请求,我会检查它(最好事先联系我,确保你写的主题适合这本书)。届时,我会制定一种系统来跟踪贡献者,并可能在书中专门设立一页来表彰他们。
当然,对本书的任何贡献都将赋予我和可能的出版商非排他的权利,以便我们随意处理这些内容。抱歉,这是法律要求的。
安装LaTeX
安装LaTeX可以让你自己构建这本书。但是,如果你不打算贡献内容,也不必学习LaTeX。只需在认为合适的位置添加内容,然后提交pull请求,我将会审阅并做必要的修改。
OS X
可以安装MacTeX包。安装后,需要将它的目录添加到PATH中:
PATH="$PATH:/usr/texbin"
export PATH
也可以通过Homebrew Cask来安装。
Debian/Ubuntu Linux
在Debian或Ubuntu这样的基于Debian的Linux发行版上,安装texlive
包:
sudo apt-get install texlive texlive-latex-extra texlive-font-utils
其他发行版可能会有不同的包名。
Windows
在Windows上,可以安装MiKTeX项目,但无法运行build.sh
脚本来编译书籍,需要手动执行相关命令。
构建书籍
在书籍目录下运行以下命令:
./build.sh
生成的书籍名为类似"Consumer-Centric API Design vX.Y.Z.pdf"的名称。
许可证
这是一个开放源码项目,允许您自由分享,但不得用于商业目的,也不能进行修改后再分发。
欢迎您探索这个项目,一起打造一个更加易用的API设计环境。
- 国产编程语言蓝皮书《国产编程语言蓝皮书》-编委会工作区016
- nuttxApache NuttX is a mature, real-time embedded operating system (RTOS).C00
- qwerty-learner为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workersTSX027
- 每日精选项目🔥🔥 01.17日推荐:一个开源电子商务平台,模块化和 API 优先🔥🔥 每日推荐行业内最新、增长最快的项目,快速了解行业最新热门项目动态~~026
- Cangjie-Examples本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。Cangjie045
- 毕方Talon工具本工具是一个端到端的工具,用于项目的生成IR并自动进行缺陷检测。Python039
- PDFMathTranslatePDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/DockerPython05
- mybatis-plusmybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.comJava03
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript0108
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09