主页 > imtoken下载最新版本 > 第一行代码:以太坊

第一行代码:以太坊

imtoken下载最新版本 2023-10-30 05:13:16

4.6 发布和调用智能合约 53

4.6.1 编译智能合约 53

4.6.2 创建以太坊账户 54

4.6.3 使用Web3.js API 发布智能合约 54

4.6.4 挖矿赚钱 56

4.6.5 重新发布智能合约 57

4.7 自动编译智能合约 60

4.8 总结 64

第 5 章以太坊网络技术

5.1 开始使用 Node.js 65

5.1.1 使用 Node.js REPL 66

5.1.2 执行 JavaScript 脚本文件 66

5.1.3 Node.js 集成开发环境 (WebStorm) 67

5.1.4 在 WebStorm 68 中编写 Node.js 程序

5.2 开始使用 Express 70

5.2.1 安装 express 模块 70

5.2.2 使用 express 模块 72

5.2.3 使用 WebStorm 74 创建 Express 项目

5.2.4 为Express项目添加路由 76

5.2.5 使用把手模板 78

5.3 通过 Web 调用智能合约 78

5.3.1 在网页中调用智能合约 79

5.3.2 在服务器端调用智能合约(Node.js) 84

5.3.3 通过AJAX 88异步调用智能合约

5.4 总结 90

第六章Web3.js API详解

6.1 基础 91

6.1.1 Web3.js简介 91

6.1.2 Web3.js开发环境搭建 92

6.2 Web3 API 93

6.2.1 设置和获取 Provider 93

6.2.2 复位状态 94

6.2.3 获取字符串94的SHA3哈希码

6.2.4 将值转换为十六进制字符串 95

6.2.5 十六进制与ASCII 97之间的转换

6.2.6 十六进制与十进制98的转换

6.2.7 将数字或十六进制字符串转换为 BigNumber 98

6.2.8 使用 BigNumber 99

6.2.9 单位换算 101

6.2.10 检查账户地址是否有效 103

6.3 Web3.eth API 104

6.3.1 获取和设置默认账号104

6.3.2 获取和设置默认块104

6.3.3 获取区块105的同步状态

6.3.4 捕获块同步状态 106

6.3.5 获取矿工地址107

6.3.6 检测当前节点是否在挖矿 108

6.3.7 获取以太坊燃料(gas)均价 109

6.3.8 获取以太坊节点109中的账户地址

6.3.9 获取块号110

6.3.10 获取账户余额 112

6.3.11 获取地址113某处存储的值

6.3.12 获取指定地址的代码113

6.3.13 获取区块信息 114

6.3.14 获取区块包含的交易数量 116

6.3.15 获取交易数据 117

6.3.16获取交易凭证118

6.3.17 获取账户发送的交易数120

6.3.18 发送交易到以太坊网络 120

6.3.19 发送签名交易 122

6.3.20 账号签名数据 123

6.3.21 执行以太坊虚拟机中的代码 124

6.3.22 估计交易消耗的gas 124

6.3.23 如何设置gas、gasLimit和gasPrice 125

6.4 总结 128

第七章Solidity语言详解(一)

7.1 Solidity语言介绍129

7.2 Solidity语言基础 130

7.2.1 编译器版本指令(pragma)130

7.2.2 导入其他Solidity源代码

文件(导入)132

7.2.3 使用Web3.js API 发布多个智能合约 136

7.2.4 使用Web3.js API 编译多个智能合约 140

7.2.5 注 142

7.3 值类型 142

7.3.1布尔型(bool) 143

7.3.2 整数类型(int/uint) 144

7.3.3 浮点数(固定) 145

7.3.4 地址类型(地址) 145

7.3.5 获取余额(balance)和转账(transfer) 146

7.3.6 另一种传输方式(发送) 149

7.3.7 定长字节序列 150

7.4 引用类型 152

7.4.1 数据存储位置 152

7.4.2 变长字节序列(bytes) 153

7.4.3 字符串类型 154

7.4.4 使用字节连接字符串 156

7.4.5 使用第三方库连接字符串 158

7.4.6枚举类型(enum)159

7.4.7函数类型(function) 161

7.4.8 数组 164

7.4.9 结构体(struct) 168

7.5 映射 170

7.6 总结 172

第八章Solidity语言详解(二)

8.1 表达式和控制结构 173

8.1.1函数参数和函数返回值173

8.1.2 控制结构 176

8.1.3 在其他合约中调用函数 179

8.1.4 函数的命名参数 181

8.1.5 通过new关键字创建合约对象 182

8.1.6 函数多返回值解构与元组赋值 184

8.1.7 变量声明和作用域 185

8.1.8 错误处理 186

8.2 测量单位和全局变量 187

8.2.1 以太计量单位 187

8.2.2 时间计量单位 189

8.2.3 块变量 190

8.2.4 msg 变量 191

8.2.5 其他全局变量和函数 193

8.3 智能合约 194

8.3.1 函数和状态变量访问权限 194

8.3.2 吸气函数 195

8.3.3自定义修饰符(modifier)197

8.3.4常量201

8.3.5 查看函数202

8.3.6 纯函数 204

8.3.7回退函数205

8.3.8 函数重载 206

8.3.9 事件 207

8.3.10 契约继承 210

8.3.11合约构造器211

8.3.12 抽象合同 211

8.3.13接口213

8.4 总结 214

第 9 章:松露和甘那许的实际应用

9.1 松露基础知识 215

9.1.1 安装松露 215

9.1.2 创建 Truffle 项目 216

9.1.3 Truffle项目结构216

9.1.4 在 Truffle 项目中创建自己的合约 217

9.1.5 编译合约 218

9.1.6部署合同219

9.1.7 测试合约 219

9.2 以太坊客户端 220

9.2.1 Truffle 内置以太坊客户端 220

9.2.2 Ganache 概述 221

9.2.3 安装 Ganache 221

9.2.4 使用 Truffle 在 Ganache 上发布合约 222

9.3 Truffle 224的高级应用

9.3.1 在 Solidity 224 中编写测试代码

9.3.2 用JavaScript编写测试代码 227

9.3.3 捕获事件和异常 228

9.3.4 使用松露合约 API 调用

合约函数 231

9.3.5 编写 Truffle 扩展脚本 232

9.4 总结 234

第十章项目实战sol币会是下一个以太坊吗sol币会是下一个以太坊吗:在以太坊上发行数字资产

10.1 数字资产原理 236

10.2 代币合约 239

10.2.1 ERC20代币接口239

10.2.2 编写代币合约 242

10.2.3 测试代币合约中的功能 245

10.2.4 代币合约中的测试事件 247

10.3 在以太坊上发行和使用代币 248

10.3.1 如何在以太坊 249 上部署代币合约

10.3.2 安装 MetaMask 扩展 250

10.3.3 创建以太坊账户 251

10.3.4 免费申请无限以太币(ether)254

10.3.5 在以太坊上部署代币合约 257

10.3.6 代币交易260

10.4 使用Web3.js API完成泰坦币265的转账

10.5 以太币和以太坊代币的区别269

10.6 互联网的未来:DApps 270

10.7 小结 271

第十一章 项目实战:支持以太坊的小程序云笔记

11.1项目功能概述272

11.2 微信小程序基础 273

11.2.1 搭建小程序开发环境 273

11.2.2 创建小程序工程 275

11.3 云笔记智能合约 277

11.3.1 编写和测试云笔记智能合约 277

11.3.2 部署CloudNoteService合约到以太坊网络279

11.4 使用Note.js和Express开发小程序服务器程序 281

11.4.1 编写调用CloudNoteService契约函数的Database类 281

11.4.2 测试数据库类 289

11.4.3 为服务增加集中存储能力 291

11.4.4 添加小程序服务器路由294

11.5 开发云笔记客户端 296

11.5.1 云笔记首页设计 296

11.5.2 实现云笔记主页面逻辑代码298

11.5.3 设计和添加云笔记页面 300

11.5.4 实现添加云笔记页面302的逻辑代码

11.5.5 设计云笔记列表页面304

11.5.6 实现云笔记列表页面305逻辑代码

11.5.7设计云笔记编辑页面307

11.5.8 实现云笔记编辑页面309逻辑代码

11.6 小结 310