首页 > 其他分享 >Solidity基础入门

Solidity基础入门

时间:2025-01-09 17:00:53浏览次数:3  
标签:Remix 入门 部署 代码 Solidity 基础 编译 合约

Solidity 简介
Solidity 是一种用于编写以太坊虚拟机(EVM)智能合约的编程语言。我认为掌握 Solidity 是参与链上项目的必备技能:区块链项目大部分是开源的,如果你能读懂代码,就可以规避很多亏钱项目。

Solidity 具有两个特点:

“基于对象”:学会 Solidity 之后,可以助你在区块链领域找到好工作,挣钱找对象。
“高级”:不会 Solidity,在币圈会显得很 low。
开发工具:Remix
本教程中,我们将使用 Remix 运行 Solidity 合约。Remix 是以太坊官方推荐的智能合约集成开发环境(IDE),适合新手,可以在浏览器中快速开发和部署合约,无需在本地安装任何程序。

学习网址

在 Remix 中,左侧菜单有三个按钮,分别对应文件(编写代码)、编译(运行代码)和部署(将合约部署到链上)。点击“创建新文件”(Create New File)按钮,即可创建一个空白的 Solidity 合约。
在这里插入图片描述

第一个 Solidity 程序

这个简单的程序只有 1 行注释和 3 行代码:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;
contract HelloWeb3{
    string public _string = "Hello Web3!";
}

我们拆解程序,学习 Solidity 代码源文件的结构:
在这里插入图片描述

编译并部署代码

在 Remix 编辑代码的页面,按 Ctrl + S 即可编译代码,非常方便。

编译完成后,点击左侧菜单的“部署”按钮,进入部署页面

在这里插入图片描述

1.编写代码

在这里插入图片描述

2.编译代码

在这里插入图片描述

3.部署

在这里插入图片描述
在这里插入图片描述

默认情况下,Remix 会使用 Remix 虚拟机(以前称为 JavaScript 虚拟机)来模拟以太坊链,运行智能合约,类似在浏览器里运行一条测试链。Remix 还会为你分配一些测试账户,每个账户里有 100 ETH(测试代币),随意使用。点击 Deploy(黄色按钮),即可部署我们编写的合约。

在这里插入图片描述

部署成功后,在下方会看到名为 HelloWeb3 的合约。点击 _string,即可看到 “Hello Web3!”。

总结

本节课程中,我们简要介绍了 Solidity 和 Remix 工具,并完成了第一个 Solidity 程序 —— HelloWeb3。接下来,我们将继续深入学习 Solidity!

标签:Remix,入门,部署,代码,Solidity,基础,编译,合约
From: https://blog.csdn.net/weixin_44774466/article/details/145010751

相关文章

  • C# 入门
     创建一个WebApicd自己想要建项目的路径下#创建webApi项目,-o后面是输出文件夹名称dotnetnewwebapi-fnet6.0-oTestApi#进入项目目录cdTestApi#运行项目dotnetrun#默认自带swaggerhttp://localhost:port/swagger/index.html 创建一个控制台应用程序D......
  • 【python基础】python中copy用法
    在Python中,**复制(copy)**变量的操作主要有两种:浅复制(shallowcopy)和深复制(deepcopy)。这些复制方法会根据容器类型(如列表、字典等)不同的行为来决定如何复制对象。我们将分别介绍它们的用法和区别。1.浅复制(ShallowCopy)浅复制是指创建一个新的对象,但新对象中的元素是对原......
  • 【免杀】静态免杀入门
    shellcodeloadershellcode要想执行需要经历如下几个过程:申请一块内存;把shellcode加载到这块内存;执行这块内存。这过程中需要注意如下几点:加载dll,采用动态调用的方式,可以避免IAT的hook;不要直接申请rwx(读写执行)的内存,可先申请rw内存,后面再改为可执行,杀软......
  • java入门与基础语法
    java入门三高问题:高可用,高性能,高并发Java特性与优势:简单性,面向对象,可移植性,高性能,分布式,动态性,多线程,安全性,健壮性Java三大版本Javase(标准版),javame(嵌入式开发),javaee(企业级开发)jdk:java开发者工具包jre:java运行环境jvm:java虚拟机安装java环境(自行搜索网上其他博......
  • 模拟ic入门——设计一个带隙基准Bandgap(三)高阶温度补偿与启动电路设计
    上一节我们介绍了Bandgap相关的参数,以及做了其中一个经典电路的电压模仿真,但如果对于温度系数有较高的要求,可以进行高阶温度补偿,本节我们来介绍高阶温度补偿,以及一些启动电路的设计,会附上一些经典的论文供大家学习一、电流模Bandgap首先我们进行电流模bandgap的仿真,运放我采......
  • C语言基础语法_03
    5、函数    函数就是程序中独立的功能,其实就是将程序打包,取一个名字,方便后面重复使用。函数的使用提高了代码的复用性和可维护性。 /*函数的定义:返回值类型函数名(形参1,形参2……){函数体;return返回值;}*/        首先先定义一个简单的不......
  • IntelliJ IDEA 调试技巧:从入门到精通
    IntelliJIDEA调试技巧:从入门到精通IntelliJIDEA是一款功能强大的集成开发环境(IDE),尤其在调试代码方面提供了丰富的工具和功能。无论是初学者还是经验丰富的开发者,掌握IDEA的调试技巧都能显著提高开发效率。本文将详细介绍IDEA的调试功能,并结合一些实用技巧,帮助你更好地理......
  • PCL点云库入门——PCL库点云特征之FPFH点快速特征直方图(Fast Point Feature Histogram
    1、FPFH原理        快速点特征直方图(FastPointFeatureHistograms,简称FPFH)是对PFH(PointFeatureHistograms)计算方法的一种简化,具体内容看参考十四节内容。该方法的核心在于独立计算查询点的K邻域内每个点的简化点特征直方图(SimplifiedPointFeatureHistogram,简......
  • 《前端技术基础》第02章 CSS基础【合集】
    目录......
  • Hadoop3.x 万字解析,从入门到剖析源码
    ......