4.2课程PPT:智能合约的定义、编译和测试.pdf

4.2课程PPT:智能合约的定义、编译和测试.pdf

4.2智能合约的定义、编译与测试 01 智能合约的定义 智能合约:指的是由计算机程序定义、可自动执行的承诺和协议。 以太坊智能合约:代码(即合约功能)和数据(即合约状态)的集合,存在于以太坊区块链的特定 地址。 合约账户能够在彼此之间传递信息,进行图灵完备的运算。合约依靠以太坊虚拟机(EVM) 以 字节代码的二进制格式在区块链运行。、 以太坊智能合约可以分为5种:数据库合约、管理员合约、合约管理合约(CMC)、应用程序逻辑契 约(ALC)和公用合约。 区块链与创新思维 02 智能合约的定义 数据库合约:仅用作数据存储。允许其他合约写入、更新和获取数据,以及检查调用者权限。 管理员合约:在数据库合约上运行。执行批量读/写操作。 合约管理合约(CMC):目的是管理其他合约。主要任务是跟踪系统的所有合约/组件,处理这些组 件之间的通信,并简化模块化设计。保持此功能与正常业务逻辑分离。 应用逻辑合约(ALC):包含应用程序特定的代码。一般来说,如果合约使用控制器和其他合约来执 行特定的任务,则它是ALC。 公用合约:执行特定的任务,并且可以被其他合约无限制地调用。它可能使用某种算法散列字符串, 提供随机数字或其他东西。通常不需要太多存储空间,而且只有很少或没有依赖关系。 区块链与创新思维 03 智能合约的编译 1.智能合约源码 在部署智能合约之前,需要两件事 情:编译代码和应用程序的二进制 接口 区块链与创新思维 04 智能合约的编译 2.智能合约编译工具的安装 安装智能合约编译工具solc ,solc 是一个Solidiy命令行编译器,是Solidity编译方法之一。 区块链与创新思维 05 智能合约的编译 2.智能合约编译工具的安装 区块链与创新思维 06 智能合约的编译 3.智能合约的编译 在命令行输入下面的bin命令进行智能合约代码solc编译: solc --bin HelloWorld.sol 编译以后,得到以下字节码信息: 部分字节码信息 区块链与创新思维 07 智能合约的编译 3.智能合约的编译 除了字节码数据,还需要一个abi接口,通过执行abi命令: solc --abi HelloWorld.sol 得到abi信息,在之后的测试部署中可能会用到: 区块链与创新思维 08 智能合约的测试 三种智能合约测试的方式,分别是Remix+MetaMask、wallet +MetaMask 和truffle 区块链与创新思维 09 智能合约测试工具安装及使用 1.Remix+MetaMask • remix 是一个浏览器版的solidity开发 IDE (集成开发环境),可以使用在线版的 /下载下来,也可以通过/ethereum/remix- ide 安装到本地。 • MetaMask是一个浏览器插件,作用相当于一个轻型的以太坊钱包,谷歌或者火狐浏览器 都可以使用。安装方法是:直接在浏览器应用商店中搜索MetaMask,或者在MetaMask官 网https://metamask.io/根据需要直接点击下载安装。 区块链与创新思维 10 智能合约测试工具安装及使用 1.Remix+MetaMask • 以太坊钱包安装完成之

文档评论(0)

1亿VIP精品文档

相关文档