DApp设计与开发 课程笔记(一):课程简介
笔记对应课程内容为成都信息工程大学区块链产业学院老师梁培利的DApp 设计与开发 01-03 课
笔记中提到的名词不做过多解释 不懂就搜!
课程简介
内容
基于多年实际区块链开发工作经验提炼
- DApp设计与开发->全栈区块链应用开发
- 课程要求:区块链基础+Solidity基础
- 课程目标:从零开始完整实现一个区块链应用
基础知识:推荐阅读 《精通以太坊》; WTF Academy ;Web开发基础
课程内容设计
- 第一部分:课程简介+产品设计2课时
- 第二部分:智能合约开发+测试8课时
- 第三部分:后端开发4课时
- 第四部分:前端开发4课时
- 第五部分:Graph数据索引/公网部署/文档站等6课时
总计:24课时理论+8课时配套实践+32课时专项实践
相关技术栈
- Solidity/JavaScript
- Node.js/React.js
- Hardhat/Remix IDE/Metamask
- ERC20/ERC721/Openzepplin
- VSCode/Github/Vercel/Cloudflare
- IPFS/The Graph/Readthedocs
智能合约工程师的基本素养:安全、测试、主要看人品、快速学习能力。
在牛市阶段智能合约审计特别赚钱,审计合约项目得排队(亲身经历),随便看一个合约代码都是2w美元起步,而且每个合约有大量重复copy的代码。
区块链基本概念回顾
BIP39:助记词
Not your keys, not your coins.
丢币的方式:写在纸上,u盘,手机钱包,全节点丢币
区块链浏览器
- 区块链浏览器可以验证开源合约代码与实际链上部署的合约一致
- 区块链浏览器可以读合约,包括合约内部的函数列表,还可以调用(写)合约函数,不需要前端就能使用区块链浏览器+构造参数来交互合约函数
产品开发流程
需求分析——开发——测试&审计——部署测试网——部署公链
中继网络提供商
RPC提供商 quicknode alchemy getblock等
课程目标
NFT交易市场简介
- Opensea 无聊猿 三十多万人民币 复制无聊猿的合约代码很简单 重新做一套图片也很简单 但是想要卖到一样高的价格就很难很难了
- 在无聊猿的合约(区块链浏览器)可以输入id调用合约查看图片的ipfs地址
- 使用IPFS才符合区块链精神
课程任务
发行一个符合ERC20标准的测试Token,要求如下:
- 总量:1亿
- 精度:18
- 名称:Fake USDT in CBl
- 简称:cUSDT
发行一个符合ERC721标准的测试Token,要求如下
- 名称:NFTMarketplace
- 简称:NFTM
- tokenid自增
- 用户在网页上传图片提交之后,自动mint发行给用户
开发一个NFT交易市场,功能如下:
- 用户在创建NFT时,可以指定价格(以CUSDT计价)
- NFT所有者可以修改上架的NFT价格;
- NFT信息上传到IPFS;
- NFT所有者可以下架市场里自己的NFT;
- 用户可以在NFT市场以一定的价格购买NFT;
WAGMI
We are going to make it!
推荐资料:
- 《精通比特币》第4章密钥、地址、钱包
- 美剧《硅谷》