Ruby类型检查工具Sorbet于VS Code商店上架

线上支付服务Stripe发布适用于VS Code的扩展组件Sorbet,Sorbet可通过语言服务器协议,提供Ruby开发环境编辑器功能。在这个开源的版本中,开发者于VS Code中使用Sorbet时,可以简单地使用语言服务器协议功能,简化Sorbet使用上的麻烦。

由于Stripe有一大部分的程序,都以Ruby撰写而成,因此致力开发各种Ruby工具,并且也持续将这些成果贡献给社群。该公司在2019年的时候,开源了Ruby类型检查工具Sorbet,这个类型检查工具能够检测程序代码中存在的类型不一致,所产生的安全性风险。

开发者在撰写程序代码的时候,有时候会不小心写出不连贯的程序代码,像是在字符串变量使用Map方法,而这会使程序出现错误。在动态类型程序语言中,这类错误必需要等到执行期间,才会引发问题,而使用类型检查工具则能够分析程序代码,更早地发现错误。

Stripe提到,因为Ruby松散的语法和猴子修补(Monkey Patch)的特性,能够让开发者很快地拼凑出功能强大的应用程序,但是程序代码容易出现疑义,Sorbet能够降低程序代码混乱的问题,增加Ruby程序代码的稳定性和清晰度。

Sorbet为多线程设计,能够利用CPU核心线性扩展,在数秒内检查完程序代码中的类型。Sorbet能够让开发者的Ruby开发环境,拥有类似IDE的功能,包括自动完成、编辑器内文件和跳转到定义等,而这项功能是利用语言服务器协议来实例,能够与开发者熟悉的编译器搭配使用。

而现在Stripe发布适用于VS Code的Sorbet扩展组件,便能够让VS Code用户,更方便地配置,并且开始使用Sorbet。过去Sorbet通过公开—lsp旗标,供开发者以语言服务器协议来启动Sorbet,回应各种语言服务器协议请求,像是跳转到定义、查询所有参照,以及自动完成等功能。

而现在有了VS Code的Sorbet扩展组件,降低了开发者在VS Code配置和使用语言服务器协议模式的门槛。这次Stripe的发布,包括VS Code商店中的预构建扩展组件,以及GitHub上的Sorbet存储库,同时官方也提供完整的Sorbet安装和使用指南。