【从0学习Solidity】合约入门 Hello Web3
【学习Solidity的基础】入门智能合约开发 Hello Web3
?不写代码没饭吃上架主页
在强者的眼中,没有最好,只有更好。我们是全栈开发领域的优质创作者,同时也是阿里云专家博主。
✨ 关注我们的主页,探索全栈开发的无限可能!
?我们与您分享最新的技术洞察和实战经验,助您在移动应用开发领域取得成功。
?欢迎访问我们的微信公众号:不写代码没饭吃,获取更多精彩内容、实用技巧、行业资讯等。您关注的是我们前进的动力!
?我们还担任阿里云专家博主的角色,为您提供更深入的技术指导和解答疑点。
?期待与您一起在移动开发的世界中,不断进步和创造!
Solidity 简介
Solidity
是一种编程语言,用于编写以太坊虚拟机(EVM
)智能合约。掌握 Solidity
是参与区块链项目的必备技能,因为大部分区块链项目都是开源的。如果能够理解代码,就能够避免许多亏钱的项目。
Solidity
具有以下两个特点:
- “基于对象”:学会
Solidity
可以帮助你在区块链领域找到好的工作机会,从而实现挣钱和结识新伴侣。 - “高级”:不熟悉
Solidity
在加密货币领域可能显得不够专业。
开发工具:Remix
在本教程中,我们将使用 Remix
来运行和测试 Solidity
合约。Remix
是以太坊官方推荐的智能合约集成开发环境(IDE),适合新手使用。通过在浏览器中使用 Remix
,你可以快速开发和部署合约,无需在本地安装任何软件。
网址:https://remix.ethereum.org ↗
在 Remix
中,左侧菜单栏有三个按钮,分别对应文件(用于编写代码)、编译(用于运行代码)和部署(将合约部署到区块链上)。点击“创建新文件”按钮(Create New File
),即可创建一个空白的 Solidity
合约。
编写第一个 Solidity 程序
这个简单的程序只包含 1 行注释和 3 行代码:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
contract HelloWeb3 {
string public _string = "Hello Web3!";
}
我们来逐行解析这段代码,学习 Solidity
源文件的结构:
- 第 1 行是注释,用于说明代码所使用的软件许可证(license),这里使用的是 MIT 许可证。如果不写许可证,编译时会出现警告(warning),但程序仍然可以运行。
Solidity
的注释以“//”开头,后面跟着注释内容。这些注释不会被程序执行。
// SPDX-License-Identifier: MIT
- 第 2 行声明了源文件所使用的
Solidity
版本,因为不同版本的语法有所差异。这行代码表示源文件只能使用 0.8.4 版本的编译器进行编译(第二个条件由^
提供)。Solidity
的语句以分号(;)结尾。
pragma solidity ^0.8.4;
- 第 3-4 行是合约部分。第 3 行创建了一个合约(contract),并将其命名为
HelloWeb3
。第 4 行是合约的内容,声明了一个公共的字符串变量_string
,并将其赋值为 “Hello Web3!”。
contract HelloWeb3 {
string public _string = "Hello Web3!";
}
接下来,我们将更详细地介绍 Solidity
中的变量。
编译和部署代码
在 Remix
的代码编辑页面中,按下 Ctrl + S 即可对代码进行编译,非常方便。
编译完成后,点击左侧菜单栏的“部署”按钮,进入部署页面。
默认情况下,Remix
会使用 Remix
虚拟机(之前称为 JavaScript 虚拟机)来模拟以太坊链,以运行智能合约。这类似于在浏览器中运行一个测试链。Remix
还会为你分配一些测试账户,每个账户中都有 100 ETH(测试代币),你可以自由使用。点击“Deploy”(黄色按钮),即可部署我们编写的合约。
部署成功后,你会在下方看到名为 HelloWeb3
的合约。点击 _string
,即可看到显示的内容为 “Hello Web3!”。
总结
本节课程中,我们简要介绍了 Solidity
和 Remix
工具,并完成了第一个 Solidity
程序 —— HelloWeb3
。接下来,我们将继续深入学习 Solidity
!