Azle:适用于互联网计算机上 JavaScript 开发人员的 TypeScript CDK
大家好,这里是 Demergent Labs 的 Jordan Last,Azle 是我们开发的一个容器开发工具包,它允许开发人员使用 TypeScript 和技术上的 JavaScript 编写互联网计算机容器智能合约。
这是一个大问题,TypeScript 和 JavaScript 是世界上最流行的编程语言之一,拥有广泛的社区、库、文档、YouTube 视频、博客文章、播客和专业知识,Azle 使全球数百万 TypeScript 和 JavaScript 开发人员能够使用他们最喜欢的工具和库在互联网计算机上编写智能合约。
Motoko 和 Rust 是用于 IC 开发的两种成熟的高性能语言,Azle 为 JavaScript 全栈开发人员提供了一个平易近人的替代方案,我现在很高兴地宣布,Azle 最近已经达到了与 Rust 和 Motoko CDK 相同的功能。
特征比较
每个 CDK 为开发人员提供对 IC API 的访问略有不同,Azle 现在提供对 TypeScript API 的访问,这些 API 可以解锁几乎所有在 Rust 或 Motoko 中编写容器时可用的 IC 功能,包括核心 IC 系统功能,例如创建容器、访问副本时间和容器间调用。
要比较所有三个 CDK 的功能,请查看 Azle 功能比较文档:
github.com/demergent-labs/azle#feature-parity
例子
我们的示例应用程序库很大并且还在继续增长,各种示例都有等效的源代码,展示了如何用 TypeScript、Rust 和 Motoko 编写相同的应用程序,这些示例对于学习用三种语言中的任何一种编写容器应该很有用。
查看 Azle 存储库中的示例:
github.com/demergent-labs/azle/tree/main/examples
我们还在研究更高级的示例,这些示例是概念证明或现实应用程序的参考实现,例如 Multisig Vault 和 IC Chainlink Data Feeds。
基准
我们还一直致力于自动化基准测试流程,基准的主要目的是为那些有兴趣采用 Azle 的人提供透明的数据,使他们能够评估选择 Azle 而不是 Rust 或 Motoko 时的货币成本差异。
作为一个额外的好处,Rust 和 Motoko 开发人员应该更多地了解这些语言相对于彼此的性能差异。
第一轮基准测试具有指导意义,但并不完美。根据他们的结果,我们对 Azle 容器的成本通常比用 Rust 或 Motoko 编写的容器高出约 2 倍的想法感到满意。
实际成本将取决于许多因素,如果您有兴趣自己挖掘数据,请前往 Azle 基准部分:
github.com/demergent-labs/azle#benchmarks
现在对于即将发生的事情......
HTTP(S)、tECDSA 和比特币
我们正在努力为 IC 上即将推出的三个主要功能提供开箱即用的支持:传出 HTTP(S)请求、阈值 ECDSA 和比特币集成。
HTTP(S)功能已经完成并发布在候选版本中,我们现在正在开发 tECDSA 和比特币。
这三个功能将极大地扩展容器可用的用例集,我个人一直专注于 HTTP(S)功能,虽然很棘手,但使用起来很令人兴奋。
生产就绪之路
Azle 正在朝着 IC 的硬化和生产就绪 CDK 稳步推进,我们认为它目前适用于某些项目(MVP、PoC、具有数据备份或低安全风险的应用程序等),但我们通常不推荐将 Azle 用于生产。
生产就绪的途径至少包括以下内容:广泛的自动化属性测试、多个独立的安全审查以及 Boa 1.0 的发布,到 2022 年底,我们希望在这条道路上取得重大进展。
如果您想使用您的 TypeScript 技能为去中心化云构建,那么今天就开始吧,如果您有任何问题,请联系我们。
在 internetcomputer.org 上开始构建,并在 forum.dfinity.org 加入开发者社区。
作者:Jordan Last
翻译:Catherine
- 往 期 推 荐 -
无处可通的链桥 - 为什么链桥会被黑客入侵以及 IC 将如何解决桥接困境?
长按关注 DFINITY 微信公众号
随时答疑解惑
*添加小助手微信 comiocn 进交流社群