4월 13일 개발팀 과제 (DEX)

Sun, 13 Apr 2025 06:39:18 GMT

안녕하세요!

금요일에 과제를 전달드리려고 했는데, 저도 다시 공부하는 시간이 필요해서, DEX 코드를 공부하느라 조금 늦어졌습니다. 죄송합니다.

Uniswap은 전세계에서 가장 유명한 Dex (Decentralized EXchange)이며, 이더리움의 EIP가 모든 체인의 백과사전이 된 만큼, Uniswap 또한 현재 Dex의 백과사전으로 불리고 있습니다.

![Image](https://upload.cafenono.com/image/slashpagePost/20250413/154359_82C6IuEuFYqeiPACtu?q=80&s=1280x180&t=outside&f=webp)

현재 Uniswap은 버전별로 지속적으로 업데이트 하고 있으며, **많은 개발자들의 표준이 된 버전이 바로 V2 입니다.**

> V1 → 가장 기초적인 스왑 형태 제시
> V2 → 가장 인기있는 버전 (ETH <> Token에 대한 명확한 해설을 제시한 버전)
> V3 → 집중화된 유동성 이론 제시 (버려지는 유동성 없이 설계, 급격히 코드가 어려워짐)
> V4 → Dex의 효율성 증대

따라서 이번엔 V2를 각자 공부하고 서로 발표하는 시간을 가져보려고 합니다.

아래는 전체 코드와 제가 정리해둔 다이어그램(이미지) 입니다.

- V2 Core: [https://github.com/Uniswap/v2-core](https://github.com/Uniswap/v2-core)

- V2 Periphery: [https://github.com/Uniswap/v2-periphery](https://github.com/Uniswap/v2-periphery)

> **왜 두개로 나뉘어져있나요?**
> 먼저 V2 Core가 먼저 코드로 출시되었고, 사실 이 코드만 있어도 필수적인 로직이 담겨 있어 Dex를 운영할 수 있습니다. 하지만 많은 사람들이 V2 Core 코드로만 접근하는 것에 있어 어려움을 느끼게 되어 사람들이 Dex에 편하게 접근할 수 있도록 V2 Periphery를 배포하게 되었습니다.

![Image](https://upload.cafenono.com/image/slashpagePost/20250413/160333_FFXFtRs5HjTRKiE0fD?q=80&s=1280x180&t=outside&f=webp)

추가 이미지 자료 (이해를 돕고자 그렸습니다)

![Image](https://upload.cafenono.com/image/slashpagePost/20250413/161710_Nsi8i08q2G5UsfO64c?q=80&s=1280x180&t=outside&f=webp)

> **DEX 코드 분석 과제!**

1. 각 팀별로 **Core**, **Periphery** 코드를 분석해주세요.
1. 각자 하나씩 분담해도 되고, 서로 두개 모두를 학습해도 됩니다. (자유)
1. 하지만 분량이 많다고 느껴지면, 분야를 나누고 다음 학회 수업 전까지 Core, Periphery 모두 이해하시고 오시면 됩니다.

2. research 게시물로 업로드를 과제로 하려 했으나, 시간 상 어렵다고 느껴져 이번엔 **코드 분석만 하는 것을 목표로 하겠습니다.**

⚠️ 주의!!

`UniswapV2Router02.sol`` 코드 분량은 어떤 일정한 규칙을 가지고 있으며 함수가 정말 많습니다. 함수 하나하나 내부적으로 어떻게 동작하는지에 대해 알 필요는 없으나, 각각의 함수가 무엇을 의미하는지에 대해서는 꼭 파악해주세요.` 코드 분량은 어떤 일정한 규칙을 가지고 있으며 함수가 정말 많습니다. 함수 하나하나 내부적으로 어떻게 동작하는지에 대해 알 필요는 없으나, 각각의 함수가 무엇을 의미하는지에 대해서는 꼭 파악해주세요.

**텔레그램으로 연락하거나, 편한 방법으로 서로 연락해주시면 좋을 것 같습니다!**

1팀 - 이현호, 임현성, 백승현

2팀 - 강동호, 이동원

3팀 - 김종수, 양지훈

4팀 - 최현빈, 최진호