Arweave.news

RedStone合同一瞥:一个新部署的SmartWeave SDK

0 58

Original by Xylophone

SmartWeave是Arweave的智能合约系统–一种独特的安全区块链程序理念,可以用JavaScript编写,与Ethereum和其他替代品相比,计算成本微不足道。SmartWeave区别于其他智能合约的一个原始创新是,合约可以被懒惰地评估–合约执行的负担被卸载到客户端,这使得它们的部署和互动成本大大降低。

RedStone一直热衷于对SmartWeave的第一次迭代进行创新,以改善性能并提高RedStone Oracles的效率。在最初调整了原始代码后,该团队决定从头开始重写,并创建了RedStone Contracts

由于RedStone的团队正在使用Smarweave开发基础设施,我们在过程中遇到了反复出现的障碍。经过几次变通,我们最终得到了一个SDK,它与原始代码相差甚远,我们决定将其作为一个独立的流。我们将其称为RedStone Contracts。Peter(Discord: redston-ppe)是这个想法的发起人,也是它背后的核心开发者。- Marcin,RedStone的发展主管

RedStone Contracts是SmartWeave的一种新方法,通过基于Arweave的oracle RedStone的更新SDK,对性能、可用性和测试进行了一系列改进。SmartWeave是Arweave的原生智能合约引擎,可以用JavaScript或TypeScript编写,用于从NFT到整个应用后端的任何东西。

RedStone Contracts为RedStone的整个产品提供动力,作为Arweave最重要的用户之一–每天负责成千上万的交易,所以有很大的动力进行改进。

RedStone合约介绍

RedStone Contracts旨在通过删除对Arweave的不必要的调用和增加对缓存层的支持来解决当前实施中的性能问题。例如,KYVE利用智能合约的这个功能实现了缓存。RedStone在这里提供了一个例子。

通过将核心协议接口分解成各个单元,RedStone合约的代码将更容易测试和建立,因为新的功能–如隔离的执行环境和更好的调试工具–被开发出来了。

这还增加了其他生活质量特性,如改进的命名规则、增强的和完全可配置的日志、更好的文档以及更清晰的函数参数定义。

RedStone Contracts是一个向后兼容的SDK,这意味着所有当前的SmartWeave合约可以使用它,而不是作为smartweave-js的一部分提供的原始SDK。它引入了新的概念和方法,有自己的命名空间,所以有必要进行迁移以使用新的方法调用和提供的语法。RedStone 提供了一份迁移指南,以帮助翻译你现有的基于 SmartWeave 的代码,以使用 RedStone Contracts SDK。

RedStone Contracts使用面向对象的编程设计(OOP),使其更容易测试和扩展新功能。

开发人员已经可以将Redstone的合约添加到他们的项目中:yarn add redstone-smartweave

RedStone的智能合约最佳实践

除了对SDK的具体改进,RedStone还发布了一份指南,解释如何构建像LOOT这样的合同,以及测试合同的最佳实践,以确保它们没有错误。目前,旧工具的一个问题是,合同交互失败的确切原因不容易浮现。

在RedStone的LOOT合约教程中,团队解释了如何编写简单的Node测试或使用JEST,并在此提供了例子

未来之路

在Redstone合约的下一阶段,团队计划广泛关注单元测试,创建合约调用的完整堆栈跟踪(用于调试),实现隔离的执行环境,增加修改外部合约状态g的能力,以及将合约分解为独立的类和接口的能力,以获得更多的OOP方法。点击这里查看完整的路线图


Join our
Telegram / Discord / Twitter / CN Twitter

Leave A Reply

Your email address will not be published.