【2022 元宇宙基础NFT之Solidity OOP编程第02篇】3分钟玩转Solidity合约开发工具Remix
一、先简单聊聊Solidity
Solidity (中文:固态,固体)是一种语法与Javascript相似的高级语言,它最初为Ethereum虚拟机(EVM)编译代码而设计,目前很多国产公链、比如蚂蚁区块链的合约也支持Solidity OOP语言,所以,如果想学习区块链合约开发,可以先从Soldidity开始,其他的就迎刃而解。
Solidity是静态类型的,支持继承,库和复杂的用户自定义类型以及其他功能。
它可以用来创建投票,众筹,盲拍,多重签名钱包等的各种类型的智能合约。
二、Solidity 代码样例
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
/**
* @title Storage
* @dev Store & retrieve value in a variable
*/
contract Storage {
uint256 number;
/**
* @dev Store value in variable
* @param num value to store
*/
function store(uint256 num) public {
number = num;
}
/**
* @dev Return value
* @return value of 'number'
*/
function retrieve() public view returns (uint256){
return number;
}
}
三、Solidity 集成开发环境之Remix
Remix是无需服务器端组件,集编译器和
Solidity
运行时环境于一体的浏览器IDE。
-
Remix-IDE整体布局
四、Remix-IDE编译部署
Remix-IDE 功能细节其实挺多,对于初学者来说先了解基本的合约编译部署即可,更多细节在学习过程中,熟能生巧,你自然而然的就掌握了。
-
编写合约代码
- 切换到文件功能面板
- 新增文件HelloWorld.sol文件
- 新增HelloWorld合约代码
-
编译
-
部署
编译完之后,我们可以进行部署测试
- JavaScrpit VM部署,这个属于本地网络部署,主要用于临时快速测试
-
Injected Web3部署,这个选项可以通过MetaMask部署到以太坊主网、以及各种测试网络
-
Web3 Provider
这个选项是将合约部署到指定的节点,其实对我们目前来说,上面两个已经基本够用,这个留给大家下去测试部署。
五、参考链接
- Ethereum:https://ethereum.org
- Changelog:https://github.cn/ethereum/solidity/blob/develop/Changelog.md
- Story Backlog:https://www.pivotaltracker.cn/n/projects/1189488
- Source Code:https://github.cn/ethereum/solidity/
- Ethereum Stackexchange:https://ethereum.stackexchange.cn/
- Gitter Chat:https://gitter.im/ethereum/solidity/
- https://solidity.readthedocs.io/en/v0.4.24/solidity-in-depth.html
- https://remix-ide.readthedocs.io/en/latest/unittesting.html#generate-test-file