IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> 如何用 Solidity 创建一个“Hello World”智能合约 -> 正文阅读

[区块链]如何用 Solidity 创建一个“Hello World”智能合约

最近发几篇简单的入门文章,帮助刚刚进入行业的工程师。

这篇文章将带你学习如何使用智能合约开发语言 Solidity 创建一个名为“Hello World”的智能合约。这篇文章不需要先验知识,初学者也很容易上手,跟着下面的步骤操作也可以轻松地的创建你的第一个智能合约。

什么是智能合约

智能合约是在区块链环境中发布和运行的计算机程序。由于它运行在区块链上,所以其运行不需要中心化的组织或服务器。

由于区块链的不变性,智能合约一旦被发布,就无法对其更新或修改。但智能合约中可能编写有具有更改数据功能的函数。信息可以在一个块中记录并在另一个块中删除,其历史记录会被保存并可以对其审核。

Solidity 编程语言

Solidity 是用于实现智能合约的一种面向对象的高级编程语言。它是一种[花括号]编程语言,即使用字符“{”和“}”定义语句块。

Solidity 被设计运行在以太坊虚拟机 (EVM) 上,语法上受 C++、Python 和 JavaScript 的影响。它是一种静态型语言,且支持继承、库和复杂的用户定义类型等。

Remix

Remix 一款基于浏览器的 IDE(集成开发环境),它可用于在线编写、编译、部署和调试 Solidity 代码。 Remix 中有一个在浏览器中运行的区块链模拟器,称为 JavaScriptVM 的环境。接下来我们就会使用到它。

创建智能合约

点击左侧活动栏第一个按钮:“文件浏览器”(File Explorers)(译者注:由于界面会不时更新,图标顺序可能会变化,点击活动栏按钮会打开对应功能的侧边栏)

点击“创建新文件”(Create New File)按钮(译者注:在打开的侧边栏中,下同)。

将文件命名为:HelloWord.sol。

Solidity 文件的扩展名为“.sol”。

复制并粘贴下面的示例代码:


// SPDX-License-Identifier: MIT
pragma solidity 0.8.13;
contract HelloWorld {
    function sayHelloWorld() public pure returns (string memory) {
        return "Hello World";
    }
}

现在我们看下智能合约中都是有什么内容。

// SPDX-License-Identifier

“//”表示这行是注释,而不是代码。

SPDX 许可证列表规范是免费和开放或协作软件中使用的通用许可证列表。

自Solidity 0.6.8 引入了 SPDX 许可证标识符,便于开发人员指定智能合约使用的许可证。

SPDX 许可证标识符应添加到合约代码的顶部,并使用“//”标识。

pragma

pragma用于指定 Solidity 版本,使用语义化版本控制。Solidity 官网有进一步介绍。

pragma solidity 0.8.13;

HelloWorld 合约

这句代码定义了一个名为“HelloWorld”的合约。

合约是函数和数据(其状态)的集合。

一旦部署,合约将存在于以太坊区块链的某个地址上,以太坊官网有进一步介绍。

sayHelloWorld 函数

这里定义了一个公有函数,该函数的功能是返回字符串“Hello World”。函数声明中的关键字 pure表示该函数不读取或不修改区块链状态。

编译智能合约

在Remix活动栏中找到“Solidity 编译器”(Solidity compiler)按钮并点击。

点击“Compile HelloWorld.sol”按钮。

也可以勾选启用自动编译(auto-compile)选项。

检查编译按钮上是否出现绿色标识,若出现绿色标识,鼠标放在按钮上会有编译成功提示信息。

部署智能合约

在活动栏中,点击“部署和运行事务”(Deploy and run transactions)按钮。

因为我们现在只创建了一个智能合约,侧边栏里 “CONTRACT”(合约) 下拉菜单会自动选择该合约。

单击“部署”按钮。

与智能合约交互

当在 Remix 中部署完智能合约后,我们可以在活动栏的 “部署和运行交易”(Deploy and run transactions)里看到它:

  1. 在侧边栏中向下滚动鼠标,找到“已部署合约”( “Deployed Contracts”)。
  2. 展开“HelloWorld”。
  3. 点击按钮“sayHelloWorld”。
  4. 它将返回记录在合约中的信息:“Hello World”。

恭喜,你成功创建了一个“Hello World”智能合约!

下一步

现在你已经使用 Solidity 创建了你的“Hello World”智能合约,你还可以做很多其它尝试,比如将合约部署到测试网甚至主网,更改消息,通过创建状态变量来存储消息,通过创建函数来更新消息,或将消息永久保存到区块链!

Chainlink 中国开发者社区持续服务开发者,欢迎私信加入 Chainlink 开发者社区。

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2022-08-06 10:49:37  更:2022-08-06 10:49:52 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 3:38:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计