初步了解新的Azure SDK

如果您要构建可与Azure服务配合使用的应用程序,则可能正在使用一个或多个Microsoft已发布的SDK 。 这是一种有意义的方法,可以节省时间并控制代码。 这是因为直接针对代表性状态转移API进行工作可能很复杂,因为您必须构造适当的查询并解析响应JavaScript对象表示法。

使用针对您使用的任何语言量身定制的SDK,可以大大简化流程,将调用转换为方法,将响应转换为对象。 无需转换数据格式或构建复杂的查询字符串,从而减少了出错的风险。 微软从其公共云的早期开始就为Azure提供了SDK,并在其库推出时为其库添加了新功能。

[使用Visual Studio代码? 不要为每个开发人员错过这10个Visual Studio Code扩展 •了解最新版本的Visual Studio Code中的新增功能 | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]

悠久的历史和Azure的快速增长使当前的SDK组与我们构建现代应用程序的方式有些不同。 尽管它们工作得足够好,但它们不容易与当前的设计思想相融合,也不完全适合现代企业应用程序开发中使用的模式和实践。 当启动新服务并将其内置到应用程序中时,您必须快速。 您没有时间坐下来与其他SDK团队合作处理服务的其他方面,使您的方法保持一致或了解您的SDK的使用方式。

[ 点击此处注册免费的三个小时的Kubernetes入门课程,该课程由Pluralsight和InfoWorld提供。 ]

成熟的Azure服务需要成熟的SDK

Azure的核心服务正在走向成熟。 它们为Microsoft内部以及整个世界的应用程序奠定了基础。 由于Azure的开发节奏较慢,现在是时候重新设计支持的SDK并建立使用Azure 的新的通用且一致的方式 。 返工的第一个成果现已到来:用于Azure存储,Azure Cosmos DB,Azure Key Vault和Azure Event Hub的预览SDK。

新的SDK作为PythonJavaJavaScript.Net (Azure上最常用的语言)的库提供。 它们基于针对开发人员的原则,建立了一套用于库设计和开发的通用标准。 Microsoft最初的博客文章将这些原则定义为:

  1. 创建易于使用的API,其生产率可与语言生态系统的最佳库相提并论。
  2. 提供使用的语言和生态系统惯用的API。
  3. 随着时间的推移,以一种非常兼容的方式发展。
  4. 与API一样,重点放在文档和样本上。

他们是明智的规则。 前两个要求Microsoft了解开发人员使用语言的方式以及使用这些语言的原因。 如果Azure SDK不适合开发人员使用语言的多种方式,则将不使用它们。 现代开发方法论和语言被认为是定义代码的结构和样式。 任何服务中的任何SDK都必须适合这些结构和样式。 Azure需要适应最终的开发方法。

微软的开发者至上方法

从开发人员的角度来看,最后一个原则很重要。 良好的文档记录是良好应用程序的关键。 您需要查看诸如Twilio之类的API优先公司,才能了解SDK和文档如何并存。 没有文档和代码示例,Twilio的构建过程不会将新的API或SDK推向生产环境。

Microsoft似乎在其新的SDK版本中牢记了这些原则。 它们是在公共GitHub存储库树中公开开发的。 Microsoft在这里发布其总体设计指南,以及针对当前支持的语言的特定实现和指南,以及与四种主要语言一起开发的另一套Go SDK。

由于SDK是开放源代码,因此Microsoft接受捐款,尽管您在提出任何请求请求之前需要先同意“捐款者许可协议”。 您只需执行一次,因为它涵盖了所有公共的Azure GitHub存储库。

在新的Azure SDK中

值得更详细地研究新的SDK,因为它们是对您已经在使用的库的完全重写。 每种语言最初都会有不同的服务集。 它们都支持核心服务集,但是其中一些(如.Net和Java SDK)增加了对其他服务的支持,包括Azure的身份服务。

.Net SDK是一系列NuGet程序包,其中包含与Azure服务一起使用所需的库,从而使代码膨胀降至最低。 如果使用的是Azure存储,则需要安装适当的存储包 ,并为Blob,队列和文件安装单独的包。 例如,如果您要编写旨在与Blob一起使用的代码,请首先使用门户或Azure CLI将Azure存储帐户添加到您的订阅中。 然后,您可以使用dotnet add package命令在开发系统上安装客户端库。

下载并添加到项目后,您可以在代码中添加适当的using语句,然后使用库方法来建立与Blob容器和特定文件的连接,您可以在其中使用简单的上传和下载方法来建立连接。与Azure存储进行交互。 SDK中使用的API通过特定版本的关键方法支持同步和异步操作。

每个SDK的GitHub存储库中的文档清晰易读,并带有示例代码和指向Azure SDK文档的链接。 许多文档是自动生成的 ,但是您应该找到足够的文档来完成大多数开发任务,以及示例源代码和任何自述文件。

其他开发平台的存储库类似,库已加载到适当的存储库中并可以在您的代码中使用。 这意味着在Python中使用pip,在Java中使用maven,在JavaScript中使用npm。 您可以将SDK内置到现有的开发工具和流程中,而无需进行任何更改。

新的Azure SDK仍处于初期阶段,但是乍一看显示出很多希望。 它们很容易理解,并且很适合语言最佳实践:.Net库的行为类似于.Net; JavaScript库的行为类似于JavaScript。 结果是使代码更易于阅读,易于理解,并且最重要的是易于调试。 如果您愿意冒险使用预览代码,则值得探索如何使用新库更新应用程序。 如果不是这样,它们很快就会发布,您可以在代码中开始使用它们。

From: https://www.infoworld.com/article/3409043/a-first-look-at-the-new-azure-sdks.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值