深圳龙岗网站建设培训学校宜昌网站seo收费
news/
2025/9/25 14:11:21/
文章来源:
深圳龙岗网站建设培训学校,宜昌网站seo收费,如何制定网站icon图标,定制做网站技术Solidity是什么
Solidity是一门面向合约的、为实现智能合约而创建的高级编程语言#xff0c;主要目的是为了在以太坊虚拟机#xff08;EVM#xff09;上运行Solidity是静态语言#xff0c;支持继承、库和复杂的用户定义等特性内含的类型除了常见的编程语言中的标准类型主要目的是为了在以太坊虚拟机EVM上运行Solidity是静态语言支持继承、库和复杂的用户定义等特性内含的类型除了常见的编程语言中的标准类型还包括address等以太坊独有的类型solidity源码文件通常以sol作为扩展名目前对于solidity语言编程最好的是Remix。remix是一个基于Web浏览器的IDE它可以编写、部署智能合约
Solidity的语言特性
Solidity语法接近于JavaScript是一种面向对象的语言但是因为Solidity是为了编写真正意义上的运行在网络中的去中心化合约与传统的语言相比具有很多的不同点以太坊底层是基于账户而不是UTXO所以增加了一个特殊的address的数据类型用于定位用户和合约账户语言内嵌框架就支持支付提供了和支付相关的payable关键字可以在语言层面上直接支持支付使用区块链进行数据存储数据中的每一个状态都可以永久存储所以在合约中定义变量是需要指定使用内存还是区块链存储运行环境是在去中心化的网络上所以需要强调合约或者函数执行的调用方式不同的异常机制。遵循原子特性一旦出现异常所有的执行都会被回撤这主要是为了保证合约执行的原子特性防止出现中间状态出现数据不一致的情况
Solidity源码和智能合约
solidity源代码要想成为可以运行在以太坊上的智能合约需要经历以下步骤用Solidity编写的智能合约源代码需要使用编译器编译为成为字节码文件bytecode编译过程中会同时产生智能合约的二进制接口规范Application Binary Interface简称为ABI通过交易Transaction的方式将字节码部署到以太坊网络每次成功部署都会产生一个新的智能合约账户使用JavaScript编写的DApp通常通过修改web3.jsABI去调用智能合约中的函数来实现对于数据的读取和修改
Solidity编译器
Remix
Remix是一个基于web浏览器的Solidity IDE可在线使用而且不需要安装任何东西
solcjs
Solcjs是Solidity的源码库的构建目标之一是Solidity的命令行编译器使用npm可以便携地安装Solidity编译器solcjs默认是安装在/opt/node-v9.0.0-linux-x64的文件夹下可以使用软连接映射到/usr/local/bin文件夹下
命令如下
npm install -g solc
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/917054.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!