Skip to content

Commit 50ac777

Browse files
committed
Add study notes for 2025-08-20
1 parent aa081f1 commit 50ac777

1 file changed

Lines changed: 60 additions & 0 deletions

File tree

leopc999.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,66 @@ timezone: UTC+8
1515
## Notes
1616

1717
<!-- Content_START -->
18+
# 2025-08-20
19+
20+
## 一、DApp 基本概念与分类
21+
22+
* **定义(实用方向)**:DApp 是指在区块链上运行、其关键状态或业务逻辑不依赖单一中心化服务器的应用。核心是链上读写(查询链上状态与提交交易)。
23+
* **去中心化程度**:完全去中心化罕见——需分别评估前端、后端、存储是否可去中心化。常见形态:
24+
25+
* 简单型:中心化前端 + 链交互(轻量 NFT 应用);
26+
* 混合型:前端 + 常规后端 + 链交互(多数 DeFi 与复杂 DApp);
27+
* 极端去中心化型:前端托管于 IPFS,后端尽量链上化(实现高度去中心化)。
28+
29+
## 二、DApp 架构要点
30+
31+
* **分层结构**:前端(UI) / 后端服务 / 区块链(智能合约) / 外部服务(RPC、IPFS、索引、预言机、区块浏览器)。
32+
* **关键组件与作用**
33+
34+
* RPC 节点服务(Infura、Alchemy 等):提供链上读写 API;
35+
* IPFS:用于存储图片与 metadata,减少链上存储成本;
36+
* 索引服务(The Graph 或自建):将链上事件/交易打包进数据库、便于查询;
37+
* 预言机(Chainlink 等):为链上合约提供链外数据;
38+
* 区块浏览器(Etherscan 等):查看交易与合约详情。
39+
40+
## 三、Mint NFT DApp 实战精要
41+
42+
1. **资源准备**
43+
44+
* 将图片与 Metadata 上传到 IPFS(或中心化存储,根据需求权衡);
45+
* 准备测试钱包并在测试网(如 Sepolia)获取测试币;
46+
* 获取区块浏览器或 RPC 服务的 API key(如 Etherscan、Infura)。
47+
2. **合约开发与部署**
48+
49+
* 推荐开发框架:**Foundry**
50+
* 合约标准:ERC-721(关注 `tokenURI` 接口、`safeMint`/`mint`/`transferFrom` 等);
51+
* 部署注意:配置正确的 RPC 节点地址、私钥管理与 gas 设置,进行充分单元与集成测试。
52+
3. **前端集成**
53+
54+
* 钱包接入:使用 MetaMask 或其它钱包,封装 Web3 provider;
55+
* ABI 导入:前端引入合约 ABI 与合约地址;
56+
* 交互逻辑:Mint 按钮触发写操作(合约调用),使用常见库或 hook(如 wagmi)简化读写逻辑;
57+
* UX 考虑:交易等待、链切换提示、错误处理与用户反馈。
58+
59+
## 四、工具与推荐
60+
61+
* **开发与测试**:Foundry(合约开发/测试/部署)、Remix(快速调试)。
62+
* **存储与索引**:IPFS(去中心化存储)、The Graph(索引)。
63+
* **基础设施**:Infura / Alchemy(RPC)、Etherscan(区块浏览器 API)。
64+
* **前端库**:ethers.js、web3.js、wagmi。
65+
66+
## 五、Q\&A 要点摘录
67+
68+
* **MetaMask 的角色**:属于钱包/客户端基础设施,负责签名与发送交易;
69+
* **前端可否直接与钱包交互**:可以,通过 provider 请求签名与发送交易;
70+
* **AI 辅助开发**:可提高效率,但不要直接信任未审计的合约代码;
71+
* **职业发展建议**:Web3 倾向复合型人才,掌握前端(JS/TS)、合约基础、安全意识更易胜任相关岗位。
72+
73+
## 六、附注
74+
75+
* 推荐阅读项目源码:Uniswap(理解生产级合约与架构);
76+
* 强调合约安全:上线前尽可能做充分测试与代码审计(至少进行严格的单元测试与简单的审计检查)。
77+
1878
# 2025-08-18
1979

2080
## 一、本地模拟节点:Anvil、Ganache、Hardhat Node

0 commit comments

Comments
 (0)