`

API设计

阅读更多

一、优秀的API具有哪些特征:

1、易学易记;

2、可读性高;

3、不容易用错;

4、容易扩展;

5、具有完整性:用户通过API能去做想做的事情,但是这是比较困难的。即便如此,至少也应该方便扩展和定制化(例如通过继承等等)。当然,设计一个完整的API这可能需要一个过程,但起码得保证有一个清晰的设计思路,或者在朝着正确的方向迈出的一步,因为并不是每一个API从最开始就是很完美的。

 

二、设计过程

1、了解需求

设计 实现 一个API之前你应该有一个 good idea of the requirements。 有时, 需求 相当明确 在大多数情况下 ,您将 需要 梳理并分析 这些需求 一个 很好的着手点 是让 尽可能多的人 知道 尤其 你的老板你的同事, 和潜在用户 他们 要看到 的特性

2、开始写任何代码前先描述用例

在写代码的时候,一个最常见的错误 先实现 功能 然后再设计 API 最终 发布API 。用例反应需求,首先考虑做什么,然后才是考虑怎么做。在设计API时,不要去考虑实现的过程有多么复杂,而是去考虑是否能满足用户的需求和体验。

3、在同一个库中查找类似的API

在一个库中有多个API实现相同或者相近的功能是一件很糟糕的事情。

4、在实现API之前请先定义他

同开始写任何代码前请先描述用例一样。当我们在实现API之前也请先定义这个API。

5、让你的同事review你的API

6、写几个API的例子

7、准备用于扩展

8、不要发布未经过review的内部API

9、如果你对你的API存在疑问或者顾虑,请不要发布,或者标记为内部API或者稍后再重新思考

 

三、设计指南

1、观其名而知其意

2、名称不要有二义性,即使没有参考API的文档的前提下

3、不要让不相近的API,让人感觉他们相近——提防虚假的一致性

4、避免缩写

5、选择一个好的默认值

6、避免你的API过度智能

7、注意边缘的场景

8、The best API is no API

 

分享到:
评论

相关推荐

    C++ API设计 中文高清扫描版 带完整目录书签 PDF

    《C++ API设计》探索了常常被忽视的技术性和非技术性问题,有助于推动成功的设计决策,从而产生高质量的、健壮的而且可以长期使用的API。” ——Eric Gregory,Pixar动画工作室软件架构师 “《C++ API设计》面向中...

    C++ API设计教程代码

    【C++ API设计教程代码】是一份专注于C++应用程序接口(API)设计的教程资源,包含了一系列相关的代码示例和文档。这个压缩包文件提供的内容可能涵盖了从基础概念到高级设计模式,以及文档编写和项目配置等多个方面...

    ASP.NET+Web+API设计(美)布洛克著

    《ASP.NET+Web+API设计》是美国作者布洛克撰写的一本深度探讨ASP.NET Web API开发的专业书籍。这本书详尽地介绍了如何利用ASP.NET框架构建高效、可扩展且易于维护的Web服务。Web API是微软为.NET Framework提供的一...

    C++ API设计.pdf

    C++ API设计.pdf

    RESTful API设计规范

    ### RESTful API设计规范详解 #### 一、RESTful简介 RESTful是一种广泛应用于Web服务的设计风格,全称为Representational State Transfer(表述性状态转移)。它并非一项具体的技术标准,而是一系列设计原则和约束...

    深度 -API 设计最佳实践的思考.pdf

    在API设计领域,确保最佳实践的关键在于理解和适应各种场景,因为每个API都有其特定的应用环境。API设计不仅是技术实现的问题,更是人与人之间沟通的桥梁。本文将探讨API设计的一些核心准则,以帮助创建出易于理解、...

    java API设计

    Java API设计是一个重要的主题,它关乎到软件开发的可维护性、可扩展性和易用性。API(Application Programming Interface)是一组预定义的函数、类、接口和常量,允许开发者通过调用这些元素来实现特定功能,而无需...

    C++ API 设计

    《c++ api设计》适合具有一定c++ 编程经验的程序员阅读,也适合对api 设计主题感兴趣的读者参考。  现代软件开发中的一大难题就是如何编写优质的api。api负责为某个组件提供逻辑接口并隐藏该模块的内部细节。多数...

    基于 RESTful 架构的API设计原则和规范.docx

    基于 RESTful 架构的 API 设计原则和规范 RESTful 架构是目前最流行的一种互联网软件架构,它结构清晰、符合标准、易于理解、扩展方便,基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。因此...

    c++api设计

    C++ API设计是一门深奥且重要的技术,它关乎到软件的可维护性、扩展性和易用性。在本文中,我们将深入探讨C++ API设计的关键要素,包括接口设计原则、命名规范、错误处理机制、封装策略以及面向对象特性在API设计中...

    RESTful-API设计原则与规范

    ### RESTful-API设计原则与规范 #### 一、背景与基础概念 RESTful架构作为一种流行的互联网软件架构,因其结构清晰、符合标准、易于理解和扩展等特点而受到广泛青睐。REST(Representational State Transfer)的...

    Api设计规范

    API 设计规范 在 Java API 设计中,遵循一定的规范和最佳实践是非常重要的。本文将详细介绍 API 设计规范中的重要知识点,涵盖包设计、命名、文档、Java 类设计等方面。 包设计 在设计 API 包时,需要注意以下几...

    Java 2 安全技术-结构,API设计和实现中文版.zip

    《Java 2 安全技术-结构,API设计和实现》是针对Java编程语言中安全性这一重要主题的深度解析。这本书详细介绍了Java 2平台的安全架构、API的设计原则以及其实现机制,对于开发者来说,是深入理解Java安全性的宝贵...

    C++API设计源代码

    C++API设计一书的源代码即: This package contains the C++ source code examples from the book "API Design for C++" by Martin Reddy.

    API接口设计规范.docx

    API 接口设计规范 API 接口设计规范是一组标准化的规则和约定,旨在规范 API 接口的开发和使用。该规范涵盖了 API 接口的设计、实现、测试和维护等方面,旨在提高 API 接口的质量、可维护性和可扩展性。 API 接口...

    API设计实战.pdf

    ### API设计实战——Java框架架构师的实践经验 #### 一、引言 《API设计实战》(Practical API Design: Confessions of a Java Framework Architect)是一本由Java领域经验丰富的专家Jaroslav Tulach撰写的著作。...

    ASP.NET WEB API 程序设计

    《ASP.NET Web API设计》依托ASP.NET Web API阐述API设计与开发的通用技术,是一本全面介绍如何构建真实可演化API的实践指南。本书共分三部分。第一部分介绍Web/HTTP和API开发的基础知识,介绍ASP.NET Web API,为...

Global site tag (gtag.js) - Google Analytics