Appearance
前言
Solidity
是一种面向合约的编程语言,是以太坊虚拟机(EVM
)上智能合约的开发语言之一,语法借鉴了 Java
、C++
等语言。
以太坊虚拟机是什么
以太坊虚拟机(Ethereum Virtual Machine,EVM
)是一个运行在以太坊网络中的虚拟机。是以太坊智能合约的核心部分,也是执行以太坊网络中所有智能合约的运行时环境。
EVM
可以理解为一个运行于以太坊网络的虚拟计算机。智能合约编写完成后,需要使用 Solidity
编译器将合约代码转换成 EVM
可以理解和执行的字节码,然后通过交易发送到以太坊网络。智能合约在 EVM
上运行时,需要消耗一定的 Gas
,这是一种以太币的单位,用来衡量执行合约操作的计算和存储成本。
什么是智能合约
智能合约(Smart Contract
)是是一组编程代码,可由开发人员使用一种或多种编程语言(例如Solidity
)编写,并经过编译和部署。这些合约的主要目的是通过在区块链上执行代码来处理交易,并自动化执行带条件的交易。例如,当特定条件满足时,可以自动化执行转账。智能合约还可以用于管理数字资产,记录数据和控制访问权限等。
智能合约的执行需要消耗一定的费用,单位为 Gas
,用于支付智能合约的计算和存储成本。每个写操作
都需要消耗 Gas
,且在交易执行前需要预测费用,以确保执行前有足够的费用。