定 价:¥59.00
作 者: | (印度)里特什,莫迪 |
出版社: | 机械工业出版社 |
丛编项: | |
标 签: | 暂缺 |
ISBN: | 9787111616009 | 出版时间: | 2019-01-01 | 包装: | 平装 |
开本: | 16开 | 页数: | 字数: |
译者序
前言
审校者简介
第1章 区块链、以太坊和智能合约 1
1.1 什么是区块链 2
1.2 为什么是区块链 3
1.3 加密技术 4
1.3.1 散列 5
1.3.2 数字签名 7
1.4 以太币 7
1.5 gas 8
1.6 区块链和以太坊架构 9
1.6.1 区块如何互相连接 10
1.6.2 交易和区块如何互相连接 11
1.7 以太坊节点 12
1.7.1 EVM 12
1.7.2 以太坊挖矿节点 13
1.7.3 如何挖矿 14
1.8 以太坊账户 15
1.8.1 外部账户 16
1.8.2 合约账户 16
1.9 交易 16
1.10 区块 20
1.11 端到端的交易 21
1.12 什么是合约 22
1.13 什么是智能合约 22
1.14 如何部署合约 27
1.15 本章小结 27
第2章 安装以太坊和Solidity 29
2.1 以太坊网络 29
2.1.1 主网 30
2.1.2 测试网络 30
2.1.3 私有网络 31
2.1.4 联盟网络 31
2.2 Geth 31
2.3 搭建一个私有网络 35
2.4 ganache-cli 40
2.5 Solidity编译器 43
2.6 web3 JavaScript库 43
2.7 Mist钱包 45
2.8 MetaMask 47
2.9 本章小结 51
第3章 Solidity介绍 53
3.1 以太坊虚拟机 53
3.2 Solidity和Solidity文件 54
3.2.1 预编译指令 55
3.2.2 注释 56
3.2.3 import语句 57
3.2.4 合约 58
3.3 合约的结构 59
3.3.1 状态变量 60
3.3.2 结构 62
3.3.3 修改器 63
3.3.4 事件 64
3.3.5 枚举 65
3.3.6 函数 66
3.4 Solidity中的数据类型 68
3.4.1 值类型 68
3.4.2 引用类型 69
3.5 存储和内存数据位置 71
3.5.1 规则1 71
3.5.2 规则2 71
3.5.3 规则3 72
3.5.4 规则4 72
3.5.5 规则5 72
3.5.6 规则6 74
3.5.7 规则7 75
3.5.8 规则8 76
3.6 字面量 77
3.7 整型 78
3.8 布尔型 79
3.9 字节数据类型 80
3.10 数组 82
3.10.1 固定数组 83
3.10.2 动态数组 83
3.10.3 特殊数组 84
3.10.4 数组属性 86
3.11 数组的结构 86
3.12 枚举 88
3.13 地址 89
3.14 映射 90
3.15 本章小结 94
第4章 全局变量和函数 97
4.1 var类型变量 97
4.2 变量声明提前 99
4.3 变量作用域 100
4.4 类型转换 101
4.4.1 隐式转换 102
4.4.2 显式转换 102
4.5 区块和交易全局变量 104
4.5.1 交易和消息全局变量 105
4.5.2 tx.origin 和msg.sender的区别 105
4.6 加密全局变量 106
4.7 地址全局变量 107
4.8 合约全局变量 107
4.9 本章小结 108
第5章 表达式和控制结构 109
5.1 Solidity表达式 109
5.2 if决策控制 111
5.3 while循环 113
5.4 for循环 114
5.5 do...while循环 115
5.6 break语句 116
5.7 continue语句 117
5.8 return语句 118
5.9 本章小结 119
第6章 编写智能合约 121
6.1 智能合约 121
6.2 编写一个简单的合约 122
6.3 创建合约 123
6.3.1 使用new关键字 123
6.3.2 使用合约地址 124
6.4 构造函数 125
6.5 合约组合 126
6.6 继承 127
6.6.1 单继承 127
6.6.2 多级继承 129
6.6.3 分层继承 130
6.6.4 多重继承 130
6.7 封装 132
6.8 多态性 132
6.8.1 函数多态性 133
6.8.2 合约多态性 133
6.9 方法覆盖 135
6.10 抽象合约 136
6.11 接口 137
6.12 本章小结 139
第7章 函数、修改器和fallback函数 141
7.1 函数输入和输出 141
7.2 修改器 143
7.3 view函数、constant函数和pure函数 146
7.4 地址相关函数 148
7.4.1 send方法 149
7.4.2 transfer方法 151
7.4.3 call方法 151
7.4.4 callcode方法 154
7.4.5 delegatecall方法 154
7.5 fallback函数 154
7.6 本章小结 157
第8章 异常、事件与日志 159
8.1 错误处理 160
8.1.1 require语句 160
8.1.2 assert语句 162
8.1.3 revert语句 163
8.2 事件与日志 163
8.3 本章小结 167
第9章 Truffle基础与单元测试 169
9.1 应用程序开发生命周期管理 169
9.2 Truffle 170
9.3 使用Truffle进行开发 171
9.4 使用Truffle进行测试 176
9.5 本章小结 178
第10章 合约调试 179
10.1 调试 179
10.1.1 Remix编辑器 180
10.1.2 使用事件 183
10.2 使用Block Explorer 183
10.3 本章小结 186