id:BSN_2021
公众号:BSN 研习社
Solidity 语言是一种面向合约的高级编程语言,用于在以太坊区块链网络上实现智能合约。Solidity 语言深受 c ++、Python 和 JavaScript 的影响,针对以太坊 (Ethereum) 虚拟机 (EVM) 设计。
Solidity 的生命周期蕴含:编辑、部署、执行和销毁四个阶段。下图整体展示了 Solidity 程序的残缺生命周期:
源码经编译后,Solidity 文件会生成字节码。这是一种相似 jvm 字节码的代码。部署时,字节码与结构参数会被构建成交易,这笔交易会被打包到区块中,经由网络共识过程,最初在各区块链节点上构建合约,并将合约地址返还用户。
当用户筹备调用该合约上的函数时,调用申请同样也会经验交易、区块、共识的过程,最终在各节点上由 EVM 虚拟机来执行。