记得朋友圈看到过一句话,如果Defi是以太坊的皇冠,那么Uniswap就是这顶皇冠中的明珠。Uniswap目前已经是V2版本,相对V1,它的功能更加全面优化,然而其合约源码却并不复杂。本文为个人学习UniswapV2源码的系列记录。
一、UniswapV2合约简要介绍UniswapV2合约分为核心合约和周边合约,均使用Solidity语言编写。其核心合约实现了UniswapV2的完整功能(创建交易对,流动性供给,交易代币,价格预言机等),但对用户操作不友好;而周边合约是用来让用户更方便的和核心合约交互。
UniswapV2核心合约主要由factory
合约(UniswapV2Factory.sol)、交易对模板合约(UniswapV2Pair.sol)及辅助工具库与接口定义等三部分组成。这次先学习UniswapV2Factory
合约。
UniswapV2Factory
合约源码一览
其文件名为UniswapV2Factory.sol
,其源码为:
pragma solidity =0.5.16;
im