术语

整个准则中,需要了解以下术语:

架构委员会

Azure 开发者体验架构委员会由语言专家组成,他们为用于访问 Azure 服务的客户端库提供建议和评审。

Azure SDK

单一目标语言的客户端库的集合,用来访问 Azure 服务。

Azure 核心

许多客户端库的依赖。Azure 核心库提供了对 HTTP 管道、普通认证凭据类型和以及其他适合整个 Azure SDK 的类型访问。

客户端库

一个库(和相关工具、文档、示例),使用者可以使用它更轻松地使用 Azure 服务。通常每个 Azure 服务和每个目标语言都都有一个客户端库。有时一个客户端库将包含连接到多个服务的能力。

使用者

为了恰当消除各种开发者类型的歧义,我们使用“使用者”术语来表示那些使用应用程序中的客户端库来连接 Azure 服务的开发者。

文档注释

嵌入在代码中的注释,描述正在实现的 API 接口。文档注释在构建期间被提取和后处理,以生成 API 参考文档。

库开发者

为了恰当消除各种开发者类型的歧义,我们使用“库开发者”术语来表示正在写客户端库的开发者。

软件包

将客户端库打包后分发给使用者。软件包通常使用软件包仓库中的包管理器安装。

软件包仓库

每个客户端库分别发布到恰当的特定语言的软件包仓库。例如,我们将 JavaScript 库分发到 npmjs.org(也叫做 NPM Registry),将 Python 库分发到 PyPI。这些发布仅由 Azure SDK 工程系统团队执行。使用者使用软件包管理器安装软件包。例如,JavaScript 使用者可能会使用 yarn、npm 或者类似的工具,而 Python 使用者将使用 pip 来安装软件包到他们的项目。

渐进式概念披露

与客户端的第一步交互不应该依赖于高级服务概念。随着库的使用者更加熟练,我们将在使用者需要这些概念来实现的时候公开必要的概念。渐进式披露最初是由 Nielson Norman 集团作为一种设计更好的用户界面的方法进行讨论的。

要求

在这个文档中的每个要求都用标记和颜色编码来展示它的相对重要性。按照重要性从高到低的顺序:

✅ 对客户端库采用此要求。如果您觉得您需要例外,请在实现前与架构委员会协商。

⛔️ 不要为客户端采用此要求。如果您觉得您需要例外,请在实现前先和架构委员会协商。

☑️ 您应该认真考虑对客户端采用此要求。如果不遵循此建议,您必须在架构委员会设计评审期间展示差异。

⚠️ 您应该认真考虑不要对客户端采用此要求。如果不遵循此建议,您必须在架构委员会设计评审期间展示差异。

✔️ 如果此建议适用于您的情况,您可以考虑采用此建议。不需要通知架构委员会。

Last updated

Was this helpful?