Sui Move可编程交易让开发更高效,让交易轻松并发执行

在其他区块链中,每个交易只能处理单个操作,而Sui Move中的可编程交易区块允许开发者在单个交易中包含多项操作。

Sui Move可编程交易让开发更高效,让交易轻松并发执行

Sui 中的可编程交易块(PTB)为开发人员提供了一个非常强大的编程工具,这是其他区块链所不具备的。在更广阔的软件工程领域,在单个可执行文件中将多个交易链在一起的能力可能被认为是理所当然的,但在区块链上,这代表了根本性的飞跃。

区块链开发的历史相对短暂,它主要关注于交易处理,在去中心化网络中这是一个难题,因为独立运营商必须处理每个交易并就其是否有效达成共识。通过实施一个被充分理解的交易处理机制,Sui实现了PTBs,使开发者能够将涉及多个对象的一系列操作组合到一个交易中。

PTBs将区块链世界从只能执行单个操作的简单交易转变为可以包含多个操作的交易,从而允许真正精妙而复杂的apps在Sui上运行。在Sui上,PTBs允许apps在将整个区块作为交易发送到网络进行验证之前,能够处理一系列输入、可执行代码行和对象。

链接交易

传统的区块链逐个处理提交到网络上的每个交易,通常旨在确保真实性和效率。尽管在专注于两者之间交换的系统中这种模式是合理的,但与现代软件工程原则相比,它似乎过于简单。从工程角度来看,这就像是每个app每次只能运行单个可执行代码行。多个apps可能需要完成我们今天认为是简单任务的事情,比如在图片编辑app中编辑和保存数字图像。

Sui 中的 PTB 基元让开发人员编写的代码可以访问所有智能合约中的任何公共链上Move 函数。PTB 可以接受多个输入,并在执行过程中影响多个对象。例如,一款赛车游戏应用可以使用 PTB 接收用户对汽车的转向和加速输入,处理来自物理模型的更多输入,并记录与轮胎墙的碰撞,包括改变组成汽车的对象以反映损坏情况。

Mysten Labs首席技术官Sam Blackshear在描述PTBs时说:“…以发送100个交易来铸造100个NFT的简单情况为例,您可以发送一个铸造100个NFT的交易,且这个的成本与铸造一个NFT的成本几乎相同。”

PTBs支持多达1024个单独的交易,使apps能够展示复杂和精巧的功能。而且,它们不再需要网络逐个处理每个交易,而是作为一个大型交易进行处理。开发人员将使用 TransactionBlock 原语来构建PTB。

如果PTB中的一个交易失败,那么整个PTB都会失败。这种设计可以防止apps执行不完整的操作。

不断进步的编程

随着更加智能、高效的方法被工程师发现,软件编程往往会不断进步。区块链领域相对较新,作为一个新的领域,它需要围绕分布式系统自身进行编程的进化。然而,更广泛的软件工程领域提供了许多最佳实践和创新,可以应用于区块链。

尽管Sui的开发根植于区块链领域,但它从其他软件领域的现有示例中汲取了经验。开发人员可能已经习惯于在其他平台上的操作,PTBs是Sui向开发人员提供无限表达能力和提高效率的方式之一。