登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書

『簡體書』以太坊Solidity智能合约开发

書城自編碼: 3469918
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: 嘉文,管健,李万胜
國際書號(ISBN): 9787111646426
出版社: 机械工业出版社
出版日期: 2020-03-01

頁數/字數: /
書度/開本: 16开

售價:HK$ 77.9

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
古典与现代 : 民国大学的潮与岸
《 古典与现代 : 民国大学的潮与岸 》

售價:HK$ 89.7
浮华梦醒:民国实业家的创业之路
《 浮华梦醒:民国实业家的创业之路 》

售價:HK$ 64.4
财之道丛书·后资本主义生活:财富的意义、经济的未来与货币的时间理论
《 财之道丛书·后资本主义生活:财富的意义、经济的未来与货币的时间理论 》

售價:HK$ 78.2
人文与社会译丛:自由意志、能动性与生命的意义
《 人文与社会译丛:自由意志、能动性与生命的意义 》

售價:HK$ 79.4
儿童折纸大全(儿童创意美术手工系列)
《 儿童折纸大全(儿童创意美术手工系列) 》

售價:HK$ 34.3
意识形态与现代文化(人文与社会译丛)
《 意识形态与现代文化(人文与社会译丛) 》

售價:HK$ 90.9
最好的教养:别错过孩子的4~7岁成长关键期
《 最好的教养:别错过孩子的4~7岁成长关键期 》

售價:HK$ 57.3
给孩子的语文四书:语文原来可以这样学(全四册)
《 给孩子的语文四书:语文原来可以这样学(全四册) 》

售價:HK$ 170.2

 

內容簡介:
本书从零开始介绍Solidity程序开发,从Solidity语言中基础的关键字和语句开始介绍,逐步深入到高级应用,包括设计模式、合约可升级的设计、合约的安全性问题及对策等,并结合EVM的实现,讨论Solidity语句的汇编实现;对一些原理的讲解,提供了相对应的实例,以期更易于理解原理的实现机理;同时,对Solidity应用于DApp开发,及使用区块链上的去中心化存储(IPFS)也有详细的介绍。
本书可作为对区块链感兴趣的程序开发人员、高校师生等的参考书,也可作为相关课程的培训教材。
目錄
目录
前言
第1章以太坊简介1
11以太坊1
111不对称加密体系2
112密码学哈希函数4
113对称点对点网络4
114区块链4
115以太坊虚拟机5
116节点5
117矿工5
118工作量证明6
119去中心化应用6
1110Solidity6
12智能合约6
13燃料7
131为什么需要燃料?8
132燃料组成8
14ether9
15账户9
16交易10
第2章预备知识11
21简单的例子11
22工具准备12
221编程环境准备12
222编程工具准备16
223区块链浏览器26
23测试环境26
231MetaMask访问测试环境27
232测试环境领取测试用币27
233开发时连接测试环境28
24以太坊源码编译29
第3章Solidity编程基础31
31sol文件结构31
311编译开关31
312引用其他源文件31
313注释31
314合约32
315库32
316接口33
32合约文件结构33
33变量类型33
331值类型34
332引用类型35
333字典映射37
334特殊情况37
34操作符38
35语句39
351条件语句39
352循环语句40
353其他40
36修饰符40
361标准修饰符40
362自定义修饰符44
37数据位置46
38事件47
381智能合约返回值给用户接口48
382异步的带数据的触发器49
383一种比较便宜的存储49
384事件里的Indexed参数50
39继承51
391单继承51
392多重继承51
310其他52
3101内置52
3102特殊单位54
3103类型转换及推断55
3104异常56
3105汇编56
第4章Solidity编程的高级话题59
41This关键字59
42ERC20标准接口59
421方法61
422事件62
423OpenZepplin框架62
43ERC721标准接口63
431ERC721接口定义63
432元数据扩展75
433可枚举扩展77
434ERC165标准81
44合约间调用82
441函数调用82
442依赖注入84
443消息调用84
444获取合约间调用的返回值88
45基础算法90
46用Go与合约交互93
461创建项目93
462创建一个简单的以太坊合约93
463用Go访问以太坊合约94
464本地测试94
465连接到一个以太坊节点98
466为账户创建加密的JSON钥匙98
467最后验证98
第5章ABI接口102
51内存结构102
52函数选择子102
53类型的定义102
54EVM里的数据表示103
541固定长度数据类型的表示104
542动态长度数据类型的表示105
55编码108
551简单的例子108
552外部调用例子109
553外部方法调用的ABI编码112
56基于ABI的编程116
第6章智能合约运行原理118
61设计模式118
611合约自毁118
612工厂合约模式119
613名字登录120
614映射迭代121
615撤出模式122
62省燃料122
621注意数据类型123
622以字节编码的形式存储值123
623利用SOLC编译器压缩变量123
624使用汇编代码压缩变量124
625合并函数参数125
626使用默克尔树证明减少存储成本125
627无状态的合约127
628在IPFS上存储数据127
629位压缩127
6210批处理128
6211Storage结构类型读写分离129
6212uint256和直接内存存储130
6213汇编代码优化130
63汇编代码130
631栈131
632调用数据131
633内存132
634存储133
64解构智能合约134
641合约创建138
642合约本体通用部分141
643合约本体特定代码145
第7章可升级的合约147
71方法147
711代理合约147
712分离逻辑和数据147
713通过键值对来分离数据和逻辑147
714部分升级148
715比较148
716简单的代理合约例子148
72通用的代理模式150
73Storage154
731继承存储154
732永久存储154
733非结构化存储155
74Augur156
741合约部署156
742存储部署157
75Colony158
751存储部署158
752合约部署159
76总结159
第8章编写安全的合约161
81以太坊已知常见漏洞 161
811上溢和下溢161
812Solidity可见性修饰符的差别165
813重入问题166
814出乎意料的ether操作170
815代理调用174
816默认可见性修饰符178
817熵随机源180
818外部合约引用180
819短地址参数攻击184
8110未验证的CALL返回值185
8111竞争条件186
8112阻塞攻击188
8113操纵块时间戳190
8114谨慎使用构造函数191
8115未初始化的存储指针192
8116浮点数精度193
8117交易授权194
82以太坊一些奇怪的特性195
821没有Key的ether195
822一次性地址197
823一个交易的空投197
83以太坊智能合约——最佳安全开发指南198
831尽早且明确的暴露问题198
832在支付时使用(pull)模式而不是(push)模式199
833函数代码的顺序:条件,行为,交互200
834留意平台局限性201
835测试用例203
836容错及自动b
內容試閱
随着区块链技术浪潮的方兴未艾,基于以太坊的智能合约编程也成为一个广为人知的热门话题。本书写作的目的就是从零开始,由浅入深地介绍Solidity这一热门的智能合约编程语言的使用。希望本书可以一站式地为读者提供Solidity编程所需的所有信息。Solidity的设计使用了很多面向对象编程的概念,比如继承、重载等。所以,本书适合学习过至少一门面向对象编程的大学生和开发人员。
在现有的智能合约编程语言里,无论是编程语言社区数、使用者数量、使用范围,还是活跃的合约数量, 以及大众的辨识度,Solidity都当之无愧地雄踞榜首。虽然目前智能合约编程的前沿已经转向Web Assembly,但是在可预见的将来,Solidity仍将在智能合约编程领域占有举足轻重的地位。
Solidity不仅仅是一门新的编程语言,它和传统的Java、C++最显著的不同是:Solidity编写智能合约是在完全去中心化的环境里运行,而且由以太坊虚拟机(EVM解释执行。因此,Solidity的编程、设计、调试和传统编程是完全不同的。传统的编程语言有解释型和编译型,而且代码在绝大部分的情况下是不公开的。而Solidity的智能合约编程,是部署到以太坊公链上,源代码公开透明。每一位有计算机基础知识的用户都可以通过各种各样的工具(比如区块链浏览器)看到Solidity的源代码。这种公开透明的特性给智能合约编程带来巨大的挑战:如何编写安全的、没有漏洞的合约?同时,传统的程序一般是基于某种体系架构,比如WindowsIntel, LinuxAMD等,而Solidity编程是基于以太坊虚拟机(以太坊虚拟机是一个栈机器,没有WindowsIntel架构里的寄存器)。EVM具有很多独特的特性,而这些特性都会无形地影响Solidity编程,比如编程模式、内存格式、地址寻址方式。本书对EVM进行了详细的探讨,帮助程序员编写更有效、耗费更低、功能更强大的程序。
本书的结构如下:
预备篇
第1章介绍了以太坊上的一些基础概念和术语。
第2章介绍了Solidity开发测试环境的配置和安装。
基础篇
第3章介绍了Solidity编程语言的基础知识:关键字、语句、修饰符以及特殊特性。
第4章介绍了流行的ERC20、ERC721协议家族以及合约间如何调用,编程语言如何与智能合约交互。
高级篇(本书的重点)
第5章介绍了二进制接口(ABI)规范以及数据的编码。
第6章介绍了Solidity编程的一些高级话题:设计模式,如何省GAS,以及Solidity语句的汇编实现。
第7章讨论了如何设计可升级的智能合约。
第8章讨论了智能合约编程的安全性以及最佳实践方案总结。
应用篇
第9章介绍了基于Solidity智能合约的DApp编程,以及如何使用去中心化的存储。
第10章介绍了Solidity的测试工具和使用示例。
致谢
首先感谢本书的合著者管健先生、李万胜先生在编写本书时付出的努力以及贡献的宝贵意见。其次感谢催生本书的出版界的朋友:朱伟博士以及机械工业出版社的吉玲编辑。最后,这本书也献给我的母亲,本书大部分内容编写于母亲卧病陪床之际,相信母亲知道本书顺利出版,她在天国也会感到很安慰。
嘉文

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.