模块
- 模块组织:Move代码被组织成模块,每个模块类似于其他区块链上的单个智能合约。
- API和交互:模块通过入口函数和公共函数提供API。用户通过调用函数来与这些模块交互,可以是通过交易或其他Move代码。这种交互由Sui区块链处理,并保存任何由此产生的更改。
- 在Sui中强调模块化设计。开发者被鼓励保持模块的小型化,并放置在单独的文件中,遵循清晰的数据结构和代码风格。这有助于应用程序更容易地集成,也使用户更清晰地理解。
结构体
- 结构体是一组相关字段,每个字段都有其自己的类型,如数字、布尔值和向量。
- 每个结构体可以定义具有“能力” - key、store、drop、copy。
- MoveSui支持以下数据类型:无符号整数、布尔值、地址、字符串、向量和自定义结构体类型。
对象
完成本模块后,您应该能够理解:
- 对象的生命周期
- 如何读取对象
- 如何更新对象
- 如何删除对象
- 共享对象与归属对象。
向量
向量可以理解为动态数组,在智能合约中管理项目列表至关重要,反映了区块链应用程序对灵活数据结构的需求。
事件
事件是模块向应用程序前端传达在区块链上发生的事件的一种方式。应用程序可以监听特定事件,并在事件发生时采取相应的操作。
函数
- 公共函数(使用public关键字):可以从任何其他Move模块和交易中调用。
- 私有函数(默认不使用任何关键字):只能在同一模块中调用,不能从交易中调用。