定 價(jià):¥59.00
作 者: | (印度)里特什,莫迪 |
出版社: | 機(jī)械工業(yè)出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787111616009 | 出版時(shí)間: | 2019-01-01 | 包裝: | 平裝 |
開(kāi)本: | 16開(kāi) | 頁(yè)數(shù): | 字?jǐn)?shù): |
譯者序
前言
審校者簡(jiǎn)介
第1章 區(qū)塊鏈、以太坊和智能合約 1
1.1 什么是區(qū)塊鏈 2
1.2 為什么是區(qū)塊鏈 3
1.3 加密技術(shù) 4
1.3.1 散列 5
1.3.2 數(shù)字簽名 7
1.4 以太幣 7
1.5 gas 8
1.6 區(qū)塊鏈和以太坊架構(gòu) 9
1.6.1 區(qū)塊如何互相連接 10
1.6.2 交易和區(qū)塊如何互相連接 11
1.7 以太坊節(jié)點(diǎn) 12
1.7.1 EVM 12
1.7.2 以太坊挖礦節(jié)點(diǎn) 13
1.7.3 如何挖礦 14
1.8 以太坊賬戶 15
1.8.1 外部賬戶 16
1.8.2 合約賬戶 16
1.9 交易 16
1.10 區(qū)塊 20
1.11 端到端的交易 21
1.12 什么是合約 22
1.13 什么是智能合約 22
1.14 如何部署合約 27
1.15 本章小結(jié) 27
第2章 安裝以太坊和Solidity 29
2.1 以太坊網(wǎng)絡(luò) 29
2.1.1 主網(wǎng) 30
2.1.2 測(cè)試網(wǎng)絡(luò) 30
2.1.3 私有網(wǎng)絡(luò) 31
2.1.4 聯(lián)盟網(wǎng)絡(luò) 31
2.2 Geth 31
2.3 搭建一個(gè)私有網(wǎng)絡(luò) 35
2.4 ganache-cli 40
2.5 Solidity編譯器 43
2.6 web3 JavaScript庫(kù) 43
2.7 Mist錢(qián)包 45
2.8 MetaMask 47
2.9 本章小結(jié) 51
第3章 Solidity介紹 53
3.1 以太坊虛擬機(jī) 53
3.2 Solidity和Solidity文件 54
3.2.1 預(yù)編譯指令 55
3.2.2 注釋 56
3.2.3 import語(yǔ)句 57
3.2.4 合約 58
3.3 合約的結(jié)構(gòu) 59
3.3.1 狀態(tài)變量 60
3.3.2 結(jié)構(gòu) 62
3.3.3 修改器 63
3.3.4 事件 64
3.3.5 枚舉 65
3.3.6 函數(shù) 66
3.4 Solidity中的數(shù)據(jù)類型 68
3.4.1 值類型 68
3.4.2 引用類型 69
3.5 存儲(chǔ)和內(nèi)存數(shù)據(jù)位置 71
3.5.1 規(guī)則1 71
3.5.2 規(guī)則2 71
3.5.3 規(guī)則3 72
3.5.4 規(guī)則4 72
3.5.5 規(guī)則5 72
3.5.6 規(guī)則6 74
3.5.7 規(guī)則7 75
3.5.8 規(guī)則8 76
3.6 字面量 77
3.7 整型 78
3.8 布爾型 79
3.9 字節(jié)數(shù)據(jù)類型 80
3.10 數(shù)組 82
3.10.1 固定數(shù)組 83
3.10.2 動(dòng)態(tài)數(shù)組 83
3.10.3 特殊數(shù)組 84
3.10.4 數(shù)組屬性 86
3.11 數(shù)組的結(jié)構(gòu) 86
3.12 枚舉 88
3.13 地址 89
3.14 映射 90
3.15 本章小結(jié) 94
第4章 全局變量和函數(shù) 97
4.1 var類型變量 97
4.2 變量聲明提前 99
4.3 變量作用域 100
4.4 類型轉(zhuǎn)換 101
4.4.1 隱式轉(zhuǎn)換 102
4.4.2 顯式轉(zhuǎn)換 102
4.5 區(qū)塊和交易全局變量 104
4.5.1 交易和消息全局變量 105
4.5.2 tx.origin 和msg.sender的區(qū)別 105
4.6 加密全局變量 106
4.7 地址全局變量 107
4.8 合約全局變量 107
4.9 本章小結(jié) 108
第5章 表達(dá)式和控制結(jié)構(gòu) 109
5.1 Solidity表達(dá)式 109
5.2 if決策控制 111
5.3 while循環(huán) 113
5.4 for循環(huán) 114
5.5 do...while循環(huán) 115
5.6 break語(yǔ)句 116
5.7 continue語(yǔ)句 117
5.8 return語(yǔ)句 118
5.9 本章小結(jié) 119
第6章 編寫(xiě)智能合約 121
6.1 智能合約 121
6.2 編寫(xiě)一個(gè)簡(jiǎn)單的合約 122
6.3 創(chuàng)建合約 123
6.3.1 使用new關(guān)鍵字 123
6.3.2 使用合約地址 124
6.4 構(gòu)造函數(shù) 125
6.5 合約組合 126
6.6 繼承 127
6.6.1 單繼承 127
6.6.2 多級(jí)繼承 129
6.6.3 分層繼承 130
6.6.4 多重繼承 130
6.7 封裝 132
6.8 多態(tài)性 132
6.8.1 函數(shù)多態(tài)性 133
6.8.2 合約多態(tài)性 133
6.9 方法覆蓋 135
6.10 抽象合約 136
6.11 接口 137
6.12 本章小結(jié) 139
第7章 函數(shù)、修改器和fallback函數(shù) 141
7.1 函數(shù)輸入和輸出 141
7.2 修改器 143
7.3 view函數(shù)、constant函數(shù)和pure函數(shù) 146
7.4 地址相關(guān)函數(shù) 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函數(shù) 154
7.6 本章小結(jié) 157
第8章 異常、事件與日志 159
8.1 錯(cuò)誤處理 160
8.1.1 require語(yǔ)句 160
8.1.2 assert語(yǔ)句 162
8.1.3 revert語(yǔ)句 163
8.2 事件與日志 163
8.3 本章小結(jié) 167
第9章 Truffle基礎(chǔ)與單元測(cè)試 169
9.1 應(yīng)用程序開(kāi)發(fā)生命周期管理 169
9.2 Truffle 170
9.3 使用Truffle進(jìn)行開(kāi)發(fā) 171
9.4 使用Truffle進(jìn)行測(cè)試 176
9.5 本章小結(jié) 178
第10章 合約調(diào)試 179
10.1 調(diào)試 179
10.1.1 Remix編輯器 180
10.1.2 使用事件 183
10.2 使用Block Explorer 183
10.3 本章小結(jié) 186