1.move语言中脚本与模块的区别
模板
在Move语言的生态系统中,脚本和模块共同工作,以实现复杂的链上逻辑和交易。
模块是用于定义数据结构和程序逻辑。模块是可复用的代码单元
代码格式:
module Token {
struct Coin {
value: u64,
}
public fun create_coin(amount: u64): Coin {
Coin { value: amount }
}
}
脚本
用于执行一次性的操作,比如发起交易。脚本不会被发布到区块链上
代码格式:
script {
use Token; // 引用Token模块
fun main(account: &signer, amount: u64) {
let coin = Token::create_coin(amount); // 调用模块中的函数
// 使用coin做一些事情,比如转账
}
}
简而言之,模板类似python里面的库,可以重复调用,而脚本是一次性的