-
内容大纲
本书从初学者的角度出发,介绍智能合约应用开发的核心技术与编程语言语法。内容包括区块链与智能合约的基本概念、智能合约的编写与测试方法,以及智能合约在实际项目中的应用。重点讲解Solidity编程语言的基本语法、函数定义与使用、面向对象编程技术,以及开发环境的配置和使用方法。本书通过有代表性的项目案例,指导学生实现智能合约的开发、部署与调试,并探讨其在金融、管理、供应链等领域的应用。通过学习本书,学生能够掌握智能合约的开发技能,并具备独立开发智能合约应用的能力。
本书可以为职业院校学生学习智能合约应用开发提供系统性指导,帮助学生了解并掌握智能合约的基本概念与开发技能。 -
作者介绍
-
目录
项目1 认识区块链与智能合约
1.1 区块链和以太坊
1.1.1 区块链介绍
1.1.2 以太坊介绍
1.2 认识智能合约
1.2.1 智能合约介绍
1.2.2 智能合约原理
1.3 智能合约的开发环境
1.3.1 Remix
1.3.2 VS Code
任务1.1 在Remix上部署智能合约
任务1.2 在WeBASE-Front上部署智能合约
项目2 开启Solidity编程之旅
2.1 基础语法
2.1.1 基本编写规则
2.1.2 基础关键字
2.1.3 变量与常量
2.1.4 运算符优先级
2.2 数据类型
2.2.1 基本数据类型
2.2.2 复合数据类型
2.3 字面量与单位
2.3.1 Solidity字面量
2.3.2 以太单位和时间单位
2.4 变量分类和存储
2.4.1 变量分类与作用域
2.4.2 变量的存储位置
2.5 条件语句
2.5.1 if条件语句
2.5.2 if...else条件语句
2.5.3 if...else if条件语句
2.6 循环语句
2.6.1 while循环
2.6.2 do...while循环
2.6.3 for循环
2.6.4 break及continue语句
任务2.1 查找100以内的质数
任务2.2 投票选举统计
任务2.3 借书管理(一)
项目3 深入理解Solidity函数
3.1 函数的定义和调用
3.1.1 函数的定义
3.1.2 函数的调用
3.1.3 函数可见性与可变性
3.2 函数修饰器
3.2.1 函数修饰器的概念
3.2.2 函数修饰器的使用
3.3 构造函数与自毁函数
3.3.1 构造函数
3.3.2 自毁函数
3.4 函数重载
3.4.1 函数重载的概念
3.4.2 函数重载的使用
3.5 转账函数
3.5.1 转账的概念
3.5.2 接收以太的函数
3.5.3 发送以太的函数
3.6 加密函数与编码函数
3.6.1 加密函数
3.6.2 编码函数
任务3.1 众筹合约
任务3.2 藏品拍卖
任务3.3 借书管理(二)
项目4 探索合约继承与接口的使用
4.1 合约继承
4.1.1 合约继承的概念
4.1.2 合约继承中的函数重写
4.1.3 合约继承中的构造函数
4.1.4 修饰器的继承与重写
4.2 抽象合约与接口
4.2.1 抽象合约
4.2.2 Solidity接口
4.3 Solidity库
4.3.1 库介绍
4.3.2 库的使用方法
任务4.1 用户管理接口
任务4.2 统计学生成绩
任务4.3 借书管理(三)
项目5 处理合约中的异常与错误
5.1 异常处理的概念
5.1.1 智能合约中的异常与错误
5.1.2 抛出与捕获异常
5.2 异常处理函数
5.2.1 require()函数
5.2.2 assert()函数
5.2.3 revert()函数
5.2.4 3个函数的区别
5.3 try catch异常捕获
5.3.1 try catch的语法
5.3.2 主动抛出异常的捕获
任务5.1 猜数游戏
任务5.2 重入攻击漏洞修复
任务5.3 借书管理(四)
项目6 正确使用事件和日志
6.1 日志处理
6.1.1 Remix控制台终端日志
6.1.2 Solidity中的日志函数
6.2 事件处理
6.2.1 事件的概念
6.2.2 事件的使用
任务6.1 电影评价管理
任务6.2 借书管理(五)
项目7 学习智能合约的测试方法
7.1 测试方法和步骤
7.1.1 智能合约测试方法
7.1.2 智能合约测试步骤
7.2 使用Truffle进行合约测试
7.2.1 测试环境的安装
7.2.2 Truffle测试步骤
7.2.3 Truffle Console模式
7.3 Remix中的单元测试
7.3.1 启用单元测试插件
7.3.2 Remix单元测试方法
任务7.1 投票合约的Truffle测试
任务7.2 影评管理合约的Truffle测试
项目8 Web3.js的使用与实践
8.1 Web3.js介绍
8.1.1 Web3.js的概述
8.1.2 Web3.js的安装
8.2 使用Web3.js访问智能合约
8.2.1 通过脚本访问合约
8.2.2 监听合约中的事件
8.2.3 通过Web3.js进行转账
8.2.4 浏览器页面中的合约交互
任务8.1 投票合约的HTML页面
任务8.2 猜数游戏的HTML页面
项目9 综合案例:校园物品共享系统
9.1 项目介绍
9.1.1 系统架构设计
9.1.2 系统功能设计
9.2 项目实现
9.2.1 定义状态变量
9.2.2 实现功能函数
9.3 项目部署测试
9.4 项目总结
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
