17611538698
webmaster@21cto.com

新编程语言:用于 API 开发的 TypeSpec

编程语言 0 118 2024-05-06 06:30:38

导读:微软新推出 TypeSpec 语言,这是一种以 API 为中心的开发语言。

微软表示,TypeSpec于 4 月 25 日推出,目标是 API 开发者、管理人员和架构师,旨在满足在高质量 API 和相关复杂环境体验中越来越重要的要求。

微软将 TypeSpec 描述为一种轻量级开源语言,它使用任何协议或序列化格式来描述 API,并将常见数据类型、API 模式和 API 指南封装到高级、可重用的组件中。

它可以用最少的类型定义复杂的数据与 API 结构。 

图片

TypeSpec 项目经理在介绍产品

该语言的灵感来自微软的TypeScript和C#语言,并且很容易学习,微软已在许多 Azure 云服务内部使用 TypeSpec。

有关该语言入门的说明可以在项目网站上找到。

官方网站:https://typespec.io/

图片

TypeSpec 提供了一个平台,支持抽象、鼓励开发者进行代码重用,并利用Visual Studio和Visual Studio Code等现代工具进行快速开发。

API 使用任何具有熟悉语法的协议或序列化格式进行描述。

如今,许多人使用OpenAPI 来描述 REST API,但以 YAML 或 JSON 格式手动编写大型且复杂的配置文件可能非常麻烦。这就是 TypeSpec 发挥作用的地方,它会让人们的工作变得更加轻松。

目前该语言可以编译为 OpenAPI、JSON Schema、Protobuf格式,也可以同时编译成这3种语言。

图片

微软表示说,TypeSpec“不仅仅是另一种 API 描述语言”,而是一种更高级的定义语言,能够定义 API,然后输出不同的协议、客户端、服务器、文档以及其它功能。

因此该语言因此成为适应各种开发场景的工具。

此外,TypeSpec 工具使开发和维护变得容易,可以在开发时发现错误和违反相关准则的情况。

下图显示了编译为 OpenAPI 的 TypeSpec 描述示例:

图片

按照微软的说法,TypeSpec 不仅仅是一种语言,而且是一个抽象计算平台,可以更轻松地重用代码的平台。

还有 VS Code 和 Visual Studio 的附加组件,可以在代码编辑器中为 TypeSpec 提供格式设置和语法突出显示。

请看下图所示:

图片

VS Code 和 Visual Studio 的附加组件会在代码编辑器中向开发者提供警告和语法突出显示。 

微软在其内部也大量使用了 TypeSpec,包括在 Azure 平台中提供的许多服务中。

该公司在内部博客写道:通过利用 TypeSpec 的强大功能,Microsoft Graph 团队彻底改变了微软内部的 API 开发。这种合作提高了生产力并简化了定制,这凸显了 TypeSpec 的强大潜力。


TypeSpec 是免费开源的,相关地址:

官网:https://typespec.io/

GitHub:https://github.com/microsoft/typespec

评论