深度掌握Solidity合约开发,助力成为抢手的Web3.0开发工程师
深入Web3.0技术的人才,一将难求。本课程由Web3.0资深专家手把手带你从合约技术的深度剖析到Web3.0主流项目NFT的落地,让你深度掌握Web3.0开发主流技术,助力你快速成为Web3.0开发抢手人才。课程融合老师多年从业经验,以去中心化的应用模式为主线,贯穿Solidity合约开发技术、合约的契约关系本质,Web3.0应用中的存储技术以及应用设计的方法与思想。如果你正想提升Web3.0技术深度,那这门课就是为你准备的。
适合人群
前端/后端/全栈开发者
有较强计算机知识基础的学生
对Web3.0技术感兴趣的人员
技术储备
Java或者Python等面向对象语言开发经验
React开发经验
环境参数
Remix Desktop IDE 0.31.2
Solidity 0.8.0
React 18.2.0
hardhat 2.13.0
IPFS 0.17.0
VSCode 1.76.2
试看链接:https://pan.baidu.com/s/1-Ach_ohrs1sbev2FBPJWGg?pwd=hoku
章节目录:
第1章 课程介绍与学习指南 试看1 节 | 22分钟
本章主要对课程内容、课程特色亮点、课程内容安排等做整体介绍,给同学们在学习上提出指导性建议。
收起列表
视频:
1-1 课程导学 (21:17)
试看
第2章 引言 Introduction 3 节 | 11分钟
一个新技术的学习离不开优秀的领路人,本章将会对讲师资历做简介并将讲师多年积累的学习经验和技巧悉数传授 ,让同学们学完本部分内容可以对讲师和Web3.0的学习技巧有基本的认知。
收起列表
视频:
2-1 讲师介绍-熟悉一下领路人 (01:48)
视频:
2-2 识途老马经验技巧全传授,怎样才能高效的掌握这门新技术? (05:21)
视频:
2-3 少走弯路-指出通向web3应用开发的路径 (03:34)
第3章 Web3.0根基初识-智能合约 4 节 | 50分钟
本章重点解析智能合约与普通应用逻辑的根本区别,讲解合约运行的最高层机制,并带领大家初次接触简单的合约代码。
收起列表
视频:
3-1 详解智能合约的性质与机制 (14:27)
视频:
3-2 Remix使用与contract代码示例(上) (17:19)
视频:
3-3 Remix使用与contract代码示例(下) (18:08)
作业:
3-4 【思考题】初识智能合约练习
第4章 详析合约基本结构 27 节 | 300分钟
本章是学习后续所有章节的基础,初次接触合约代码;讲解基本语法语义,掌握语言的数据类型,包括基本类型和复合类型,剖析智能合约与普通应用逻辑的根本区别,合约的基本构成要素,以及合约运行的最高层机制,对合约这一构造形成初步的但是完整的概念,熟练掌握Remix IDE的使用,具备合约的基础开发能力。 ...
收起列表
视频:
4-1 详解合约构成-成员变量、函数、事件event、修饰器modifier及构造函数 (20:32)
视频:
4-2 合约构成-编码实战(上) (17:22)
试看
视频:
4-3 合约构成-编码实战(下) (17:27)
试看
作业:
4-4 【思考题】合约构成
视频:
4-5 如何理解合约中的值类型?(上) (12:55)
视频:
4-6 如何理解合约中的值类型?(下) (11:20)
视频:
4-7 详解合约值类型-编码实战(一) (10:11)
视频:
4-8 详解合约值类型-编码实战(二) (21:42)
视频:
4-9 如何理解合约中的引用类型? (11:00)
视频:
4-10 编码详解合约中的数组 (18:12)
视频:
4-11 编码详解合约中的struct (13:09)
视频:
4-12 编码详解合约中的mapping (09:52)
视频:
4-13 有点特殊的字符串和字节数组 (07:11)
视频:
4-14 引用类型全解析 (18:04)
视频:
4-15 引用类型全解析-编码实战 (13:46)
视频:
4-16 数据类型小结 (02:30)
作业:
4-17 【思考题】智能合约数据类型
视频:
4-18 合约基本结构综合示例剖析 (04:09)
视频:
4-19 ganache-cli安装启动 (02:32)
视频:
4-20 合约基本结构综合示例编码实战(上) (22:19)
视频:
4-21 合约基本结构综合示例编码实战(下) (23:18)
视频:
4-22 合约基本结构综合示例小结 (02:10)
作业:
4-23 【扩展学习】综合示例扩展
视频:
4-24 如何实现web3js合约访问? (04:42)
视频:
4-25 编码实战web3js合约访问(上) (20:32)
视频:
4-26 编码实战web3js合约访问(下) (14:21)
作业:
4-27 【练习题】web3js合约访问
第5章 基础进阶之函数调用 26 节 | 264分钟
本章内容是课程中承上启下的部分,较之前开始触及技术内幕,同时又是后续代理模式的基础。本章重点讲解合约通过接口的调用方式,合约间调用的上下文变量变化的基本机制,结合transaction message的结构讲解calldata,与静态调用方法的比照,尤其是结合fallback函数,理清gas和gas费用的区别、gas limit和gas的关系,函数...
收起列表
视频:
5-1 合约之间调用-如何实现函数静态调用? (04:50)
视频:
5-2 通过import调用合约函数 (02:15)
视频:
5-3 通过import调用合约函数-编码实战 (19:56)
视频:
5-4 通过自定义接口调用合约函数 (26:10)
视频:
5-5 一个生动实例 (09:57)
视频:
5-6 合约abi探秘 (08:25)
视频:
5-7 详解合约函数调用中的上下文变化 (06:53)
视频:
5-8 详解合约函数调用中的上下文变化-编码实战 (12:22)
视频:
5-9 如何理解external? (12:56)
视频:
5-10 合约静态调用小结 (01:59)
视频:
5-11 详解函数动态调用-call (09:34)
视频:
5-12 编码实战call函数 (20:47)
视频:
5-13 详解fallback函数 (03:46)
视频:
5-14 编码实战fallback函数 (04:08)
视频:
5-15 合约动态调用小结 (02:27)
作业:
5-16 【练习题】合约动态调用
视频:
5-17 必须要明白的Gas与转账收款 (09:11)
视频:
5-18 gas、gasprice、gaslimit的解释-理清区别,搞懂关系 (13:38)
视频:
5-19 gas编码实战(上) (13:26)
视频:
5-20 gas编码实战(下) (11:53)
视频:
5-21 详解转账与函数调用 (13:39)
视频:
5-22 转账收款编码实战 (11:14)
视频:
5-23 -1 转帐中的其他问题(上) (17:11)
视频:
5-24 -2 转帐中的其他问题(下) (13:23)
视频:
5-25 合约函数调用中的边界性问题 (13:41)
作业:
5-26 【思考题】函数调用的边界性问题
第6章 合约重难点详解之delegatecall与代理模式 13 节 | 137分钟
本章重点讲解delegatecall的作用和机制以及基于delegatecall的设计模式及其应用。本章内容是Solidity语言中较为困难的部分,采用”模拟训练“,”实战“”道具“打比方的方式,讲清楚delegatecall的机制,总结之前课程中上下文变量的知识加以系统化,分析各种不同情况下的上下文变化,让你对abi、delegatecall、fallback函...
收起列表
视频:
6-1 什么是delegatecall与代理模式? (03:38)
视频:
6-2 delegatecall的准备知识-存储布局 (15:41)
视频:
6-3 存储布局编码实战 (13:51)
视频:
6-4 详解delegatecall的作用和机制 (12:58)
视频:
6-5 delegatecall编码实战 (20:37)
视频:
6-6 如何理解代理模式? (04:11)
视频:
6-7 详解代理模式的基本结构和原理 (09:30)
视频:
6-8 基础模式编码实战 (20:20)
视频:
6-9 如何理解非结构化代理 (06:30)
视频:
6-10 非结构化代理编码实战 (11:57)
作业:
6-11 【扩展学习】代理模式
视频:
6-12 如何理解库合约? (06:53)
视频:
6-13 库合约编码实战 (10:37)
第7章 合约进阶-揭示技术内幕,了解语言幕后机制内容更新中
本章作为进阶部分,重点在于揭示技术内幕,其中汇编部分学习目的不在于掌握汇编开发,而是通过汇编的学习与开发深入了解语言幕后机制,让你透彻理解合约开发中困难却又常用的技术-多重继承,以及C3线性化的问题。
第8章 实战项目启航内容更新中
本章为实战开发第一课,完成导入性的知识技能,包括项目介绍,开发工具环境的掌握,分析设计功能与UI,完成区块链网络接入部分的设计开发。
第9章 实战项目-NFT发行内容更新中
本章将完成NFT发行功能的开发,包括合约设计开发与测试,NFT合约访问层与功能开发,重点讲解openzepellin多重继承的使用及如何配合使用链上链下数据,配合完成应用整体功能。
第10章 实战项目-内容发布内容更新中
本章将完成NFT交易市场功能开发,包括市场合约设计开发和交易合约访问层与功能开发,重点讲解交易基本模式,强化分层设计模式,由专门模块负责合约访问,及分析链下实现搜索功能。
第11章 实战项目-扩展开发内容更新中
本章将探讨Web3.0开发中的进化论,中心化与去中心化的结合问题,并初步实现一个数据库搜索功能;通过另一种去中心化存储Arweave实现NFT;放开视野,了解Web3.0生态,以opensea为例探讨应用合成的无限可能。
第12章 课程总结内容更新中
重温课程内容,清楚整理Web3.0应用开发者所需的知识与技能要求,便于大家后续复习巩固。
本课程持续更新中