类似推荐
编辑推荐
这是一部能指导读者从入门到进阶的以太坊智能合约开发指南。
内容简介
本书深入浅出地介绍了区块链2.0时代的代表作品——以太坊。全书分为准备篇、基础篇、进阶篇、实战篇,从以太坊的发展历程、基本概念开篇,逐渐深入到Solidity智能合约开发语言、以太坊虚拟机等核心内容,既适合初次涉及区块链领域的读者进行概念了解,也适合相关领域的开发者进行以太坊核心技术的学习。本书还对多个通用智能合约进行了源码级分析,着重解读了智能合约安全编码,为想要基于以太坊进行DApp开发的读者提供了丰富的开发示例,同时强调了开发过程中必须要注意的安全事项,避免开发者由于缺乏开发安全合约的思维而产生安全隐患。所以说,本书是一本不可不读的书籍。
作者简介
作者杨镇,国内区块链与智能合约领域的知名技术专家、布道师、独立讲师,有15年的一线软件研发和工程项目经验。对以太坊相关技术有非常深入的研究,活跃于各个中文区块链技术社区,致力于区块链、智能合约技术的推广及企业级区块链应用落地的探索。
曾独立校订和增补更新《以太坊黄皮书》中译版,并作为管理员和主要校订人参与了 Solidity 文档的中译项目,独立开发了以太坊智能合约高级课程。《精通以太坊》译者之一。截至 2018 年年底,已进行了数十次线上、线下的区块链或智能合约技术分享交流。
章节目录
版权信息
推荐序
赞誉
前言
第一部分 准备篇
第1章 快速了解以太坊
1.1 以太坊是什么
1.2 以太坊的历史和发展路线图
1.3 以太坊的基本概念
1.4 以太币(ether)
1.5 以太坊测试网络
1.6 以太坊客户端
1.7 以太坊生态系统全景扫描
1.8 本章小结
第2章 以太坊基础交互及基础开发工具详解
2.1 以太坊客户端的下载、安装及简介
2.2 核心命令和参数解析
2.3 Remix详解
2.4 本章小结
第二部分 基础篇
第3章 智能合约开发语言Solidity基础
3.1 智能合约与Solidity简介
3.2 Solidity基础语法
3.3 Solidity语言速查表
3.4 Solidity源代码书写风格
3.5 本章小结
第4章 Solidity编译器
4.1 安装Solidity编译器
4.2 使用Solidity编译器
4.3 合约元数据
4.4 本章小结
第5章 Solidity智能合约编写
5.1 创建智能合约
5.2 可见性控制
5.3 getter函数
5.4 函数修饰器
5.5 状态常量
5.6 函数
5.7 事件
5.8 继承
5.9 抽象智能合约
5.10 接口
5.11 库
5.12 using for的用法
5.13 本章小结
第6章 Solidity集成开发工具简介
6.1 Truffle
6.2 Embark
6.3 其他工具(Remix)
6.4 本章小结
第三部分 进阶篇
第7章 深入理解以太坊虚拟机
7.1 区块链范式
7.2 状态、交易、收据和区块
7.3 交易执行
7.4 执行模型——以太坊虚拟机
7.5 合约创建
7.6 消息调用
7.7 区块定稿
7.8 本章小结
第8章 应用二进制接口
8.1 函数选择器
8.2 参数编码
8.3 动态类型的使用
8.4 事件
8.5 合约接口的JSON描述
8.6 处理元组类型
8.7 非标准打包模式
8.8 本章小结
第9章 OpenZeppelin源代码详解
9.1 通用基础合约
9.2 算术运算
9.3 自省(introspection)
9.4 归属权(用户权限)
9.5 访问控制
9.6 生命周期
9.7 支付和悬赏
9.8 ERC20
9.9 Crowdsale
9.10 ERC721
9.11 本章小结
第10章 智能合约安全编码指南
10.1 已知的攻击
10.2 智能合约开发最佳实践
10.3 智能合约安全开发辅助工具
10.4 安全信息/安全通知渠道
10.5 本章小结
第四部分 实战篇
第11章 Java版本DApp完整示例
11.1 DApp智能合约的编写及发布
11.2 环境配置
11.3 本章小结
第12章 DApp示例——宠物店
12.1 环境准备
12.2 创建项目
12.3 编写智能合约
12.4 编译部署合约
12.5 智能合约测试
12.6 前端代码编号
12.7 浏览器中与DApp交互
12.8 本章小结
附录A Merkle Patricia Tree
A.1 MPT中的节点类型
A.2 十六进制前缀编码
A.3 树的示例
附录B 递归长度前缀编码
附录C EVM中的费用设计和操作码设计
附录D Solidity汇编语言
D.1 内联汇编库合约实例
D.2 内联汇编语言特性
D.3 独立汇编
D.4 汇编语法
深入以太坊智能合约开发是2019年由机械工业出版社华章分社出版,作者朱智胜。
得书感谢您对《深入以太坊智能合约开发》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。