Sui Move Analyzer教程 天天报道
Sui Move Analyzer是一个Visual Studio插件,可在编码时提供代码跳转和提示。
(资料图)
Sui Move Analyzer是一款基于Visual Studio的插件,通过分析和改进Move代码的编写过程来简化Sui网络的开发过程。它支持Visual Studio集成开发环境(IDE)中的定义和自动完成,同时会提供一个大纲,让开发人员可以概览大型程序。
与其他Move开发工具不同,Sui Move Analyzer中包含Sui特有的功能。Sui项目模板和Sui Move代码片段能够引导开发工作,促使集成的Sui单元通过测试,提高开发人员写代码的速度。
观看视频:https://youtu.be/79L0CrjLBUg
准备工作
下载和安装Sui Move Analyzer时,需要设置好我们环境来开始构建项目。请注意,本教程使用的是Ubuntu Linux LTS做演示,如果使用的是其他平台,需要根据使用的系统制定操作命令。
设置Sui
使用Sui前需要根据操作系统安装一些必备软件并获取Sui二进制文件。此处推荐您参考以下Sui文档,其中包含有关Linux、Mac和Windows系统的详细信息。
点击此处查看操作系统必备软件(https://docs.sui.io/devnet/build/install#prerequisites)
点击此处安装Sui二进制文件(https://docs.sui.io/devnet/build/install#install-sui-binaries)
除上述步骤外,设置Sui(https://docs.sui.io/devnet/build/install)的文档还包括其他实用信息。
Move Analyzer Language Server
首先,我们需要安装Move Language Analyzer Server,它可以接收来自Sui Move Analyzer插件的请求,对代码的词法和语义进行分析,以帮助插件提供特定语言的功能。使用Rust工具链安装此服务器是最可靠的方法,Rust工具链包括编译器和其他可用于运行Sui Move Analyzer的工具,因此非常方便、非常可靠而且定期维护。
要获取Rust工具链,请打开命令行界面(CLI)并输入以下内容:
curl — proto ‘=https’ — tlsv1.2 -sSf https://sh.rustup.rs | sh
安装好Rust工具链后,在CLI中执行以下命令:
cargo install — git https://github.com/movebit/move — branch move-analyzer 2 move-analyzer
使用以下命令检查是否已正确安装达到要求:
Sui
move-analyzer — version
CLI会输出Move Analyzer Language Server当前的版本和帮助选项,这就表示依赖项已成功设置。
Sui Move Analyzer插件
现在一切准备就绪,可以安装Sui Move Analyzer了。但是,除此之外,我们还需要提前设置好Microsoft Visual Studio。
您需要前往Sui Move Analyzer下载页面(https://www.movebit.xyz/analyzer)并点击下载按钮。
故障排除
如果您在安装Move Analyzer Language Server和Rust工具链时出现意外,我们建议您采取以下步骤:
确保您使用的是最新版本的Rust。打开终端并输入rust up update命令,然后重复安装步骤并重新启动Visual Studio。
如果您将move-analyzer可执行文件安装到Visual Studio目录以外的位置,则可以将其指向正确的设置位置。使用Visual Studio的搜索功能查找 “move-analyzer.server.path”,并将其设置到您安装move-analyzer language server的本地位置。在MacOS系统上,通过点击「Code menu(代码菜单)」,然后选择「Preferences(首选项)」>「Settings(设置)」来导入正确的目录。
如果上述步骤不起作用,则可以向GitHub上的Move repository发送问题报告(https://github.com/move-language/move/issues)。此外,Sui Move Analyzer的详情页面(https://marketplace.visualstudio.com/items?itemName=MoveBit.sui-move-analyzer)上也列出了常见问题。
创建一个新项目
为新项目设置所有必需的配置文件可能非常耗时间,因此我们将Sui Framework与Sui Move Analyzer集成在一起以快速启动该过程。要使用集成命令,请选择命令面板工具并输入“move analyzer/Sui”。 在MacOS系统上,您需要转到「View(查看)」菜单并点击「Command Palette(命令面板)」,此时,Move Analyzer上的命令列表将显示出来。
从命令列表中选择「Create SUI project(创建 SUI 项目)」命令,Sui Move Analyzer即可自动从模板库中生成一个项目,同时还可以实现多项目开发功能。在创建新项目后,您可能需要重新打开一次Visual Studio,以确保创建的项目正常工作。
除项目模板外,Sui Move Analyzer还包含可提高开发人员效率的功能。它支持Sui Framework中许多常用的代码片段,例如,输入“fun init”即可快速生成一个初始函数。
确保代码在模块中正常工作,这有助于避免对已部署程序或智能合约进行大量漏洞搜索。 Sui Move Analyzer集成了单元测试工具来验证代码,如输入“#[test_only]”标签会出现「Run Test(运行测试)」选项(如下所示)。
到目前为止,我们介绍的功能可以帮助新的开发者快速在Sui上构建,并为其消除一些与编码相关的重复性工作。
使用Sui Move编码
Sui Move Analyzer包含其他语言插件中的大部分功能,这些功能都可以在编码时轻松调用。要调出上下文菜单,请在编码屏幕中右键单击标识符(例如局部变量或参数名称)上的光标,然后选择一个选项,您将能够看到该标识符的定义、类型定义和参考项。
将光标悬停在标识符上,会在功能提示中显示其名称。Sui Move Analyzer几乎涵盖了Sui Move的所有标识符,包括内置类型。
在打字时,Sui Move Analyzer会自动显示出Move中几乎所有建议的元素。由于它集成了Sui Framework,在IDE中键入「sui::」即可显示一个可供选择的模块列表。
除了上面列出的功能外,我们还优化了语义分析器的代码,从而提高了效率,也使内存分配更合理。
使用MSL编码
Move规范语言(Move Specification Language,MSL)是Move的一个子集,它提供了Move函数如何相互交互的规范。MSL是Move Prover的核心,而Move Prover是一种旨在帮助构建者准确使用Move代码的CLI工具。与Sui Move Analyzer支持Sui Move的方式类似,它还支持具有自定义和自动完成等功能的MSL。想要在MSL上工作的构建者会发现,Sui Move Analyzer真的很有帮助。
MSL的语法非常灵活,我们已经考虑了各种可能的示例。在函数中选择MSL语法时,自动完成功能将显示可能的标识符。
MSL中的规范决定了Sui Move功能如何交互,Sui Move Analyzer可以为单个函数或 .move文件中的所有函数生成这些规范。
上述功能将Sui Move Analyzer从帮助构建者为Sui编写应用程序扩展到为MSL项目做出贡献,它使代码验证变得简单,尤其对于那些使用Move Prover的人来说更是。
快乐编码
我们希望构建者发现Sui Move Analyzer提高了其编码速度,对于使用过不同编程语言类似插件的人来说,它的许多功能并不陌生。
尽管我们仔细测试了Sui Move Analyzer的功能,但它仍然可能存在一些问题。我们期待收到有关改进或提升的反馈。如果您需要有关Sui Move Analyzer的帮助,请随时联系MoveBit(https://www.movebit.xyz/?ref=blog.sui.io)。
备注:Sui基金会接受欢迎来自整个Sui社区贡献的文章,社区成员表达的观点和意见可能不代表Sui基金会的立场。
关于 Sui Network
Sui是基于第一原理重新设计和构建而成的L1公有链,旨在为创作者和开发者提供能够承载Web3中下一个十亿用户的开发平台。Sui上的应用基于Move智能合约语言,并具有水平可扩展性,让开发者能够快速且低成本支持广泛的应用开发。