Uniswap V2 之书

《Uniswap V2 Book》是一本深入解析Uniswap V2代码的书籍,不仅逐行解释代码,还探讨了设计背后的原因、替代方案及决策动机。书中还引入了实践问题,并指导读者如何实现Uniswap V2的克隆版本。

Uniswap V2 之书是对代码库的全面且深入的解释。我们不仅仅是截取代码并逐行解析。希望你已经有能力阅读代码!我们会解释为什么一开始要这样编写,可能的替代方案是什么,以及决策背后的动机。

在编写这本书的过程中,我们发现很多工程师低估了这个协议的深度——它不就是一个 xy = k 吗?实际上,Uniswap V2 充满了巧妙的工程决策,它用少量的代码处理了相当多的复杂性。这是每个 Solidity 开发者都可以从中学习的内容。

此外,根据 DeFi Llama Fork Tracker,Uniswap V2 无论是按 TLV(总锁定价值)还是分叉数量,都是被分叉最多的 DeFi 协议。理解这个协议所付出的努力将让你对其他数百个 DeFi 应用有深入的了解。

对于那些想要实践的人,我们在读者已经掌握了足够知识的地方引入了来自 DamnVulnerableDeFiEthernautMr Steal Yo Crypto 的问题,以便读者能够以最小的难度解决问题。最后,我们以一个指南作为结束,教你如何自己实现一个 Uniswap V2 的克隆,但由于原始代码库已经有四年多的历史,因此我们做了一个现代化的改进。

Uniswap 并不直接使用 ERC 4626 或 ERC 3156。然而,熟悉这些标准是有帮助的,因为 Uniswap 使用了类似的概念。任何一个优秀的 Solidity 开发者或审计员都应该熟悉这些标准。所以如果你还不了解它们,请先阅读那些文章。Uniswap 的文章将假设你已经了解这些标准。

Uniswap 使用定点算法来记录价格,因此读者在阅读关于 TWAP Oracle 的章节之前,应该先熟悉这一概念。

请控制好节奏——往脑子里塞满新概念并不是一种有效的学习方式。我们建议每天只阅读一章,然后在不看指南的情况下自己阅读源代码,以确保一切都理解透彻。

先决条件

要理解 Uniswap V2,你需要具备以下背景知识。

ERC4626 Vaults

ERC4626 是一个代币化的 Vault 标准,它使用 ERC20 代币来表示某些其他资产的份额。

阅读

ERC3156 Flash Loans

闪电贷是智能合约之间的贷款,必须在同一笔交易中偿还。本文描述了 ERC 3156 闪电贷规范,以及闪电贷提供者和借款人可能被攻击的方式。

阅读

目录

第一章 架构

第二章 Swap 的价格影响

第三章 Swap 函数

第四章 Mint 和 Burn 函数

第五章 协议的 mintFee

第六章 TWAP Oracle

第七章 Uniswap V2 库

第八章 Routers

第九章 构建一个 Uniswap V2 克隆

  • 原文链接: rareskills.io/uniswap-v2...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
RareSkills
RareSkills
https://www.rareskills.io/