上一篇我们介绍了如何搭建本地测试节点,它提供了一个智能合约的运行环境。我们还介绍如何使用超级账户
eosio
来创建新账户以及载入系统级别的智能合约。通过上一章的学习,大家可能已经对智能合约有了一个比较模糊的概念。这一章将继续为大家讲解,开发智能合约之前,你还需要知道的事。
摘要
这一章,我们将自己上手部署调用一个简单的智能合约hello
,中间会穿插讲解一些相关概念,这些概念虽然很基础,但是对初学者而言,也很重要。
什么是WebAssembly
之前如果大家简单地浏览过eos项目文件夹,就会看到很多.wasm
文件,而wasm就是WebASseMbly的缩写。这里让我们略过Flash、JavaScript和WebAssembly的爱恨情仇(发展演化),直接一句话概括一下:
WebAssembly是一种新的编码方式,可以在现代的网络浏览器中运行。
想象它是一种可以把底层语言文件变得像JS那样,可以直接在浏览器中运行。而且比JS更轻量、更快速、更安全。过程如下图:
还有一个大家在build
eos的过程中看过一百遍的词:LLVM
。
LLVM是一些分模块、可重用的编译工具链。它提供了一种