Skip to content

前言

Solidity 是一种面向合约的编程语言,是以太坊虚拟机(EVM)上智能合约的开发语言之一,语法借鉴了 JavaC++ 等语言。

以太坊虚拟机是什么

以太坊虚拟机(Ethereum Virtual Machine,EVM)是一个运行在以太坊网络中的虚拟机。是以太坊智能合约的核心部分,也是执行以太坊网络中所有智能合约的运行时环境。

EVM 可以理解为一个运行于以太坊网络的虚拟计算机。智能合约编写完成后,需要使用 Solidity 编译器将合约代码转换成 EVM 可以理解和执行的字节码,然后通过交易发送到以太坊网络。智能合约在 EVM 上运行时,需要消耗一定的 Gas,这是一种以太币的单位,用来衡量执行合约操作的计算和存储成本。

什么是智能合约

智能合约(Smart Contract)是是一组编程代码,可由开发人员使用一种或多种编程语言(例如Solidity)编写,并经过编译和部署。这些合约的主要目的是通过在区块链上执行代码来处理交易,并自动化执行带条件的交易。例如,当特定条件满足时,可以自动化执行转账。智能合约还可以用于管理数字资产,记录数据和控制访问权限等。

智能合约的执行需要消耗一定的费用,单位为 Gas,用于支付智能合约的计算和存储成本。每个写操作都需要消耗 Gas,且在交易执行前需要预测费用,以确保执行前有足够的费用。