[Riot API ๊ธฐ๋ฐ ์ ์ ๊ฒ์ + ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฅ์ด ํฌํจ๋ ์น ํ๋ซํผ]
๐ Teamfight Tactics (TFT) ํ๋ ์ด์ด๋ค์ ์ ์ ์ ์ค์๊ฐ์ผ๋ก ์กฐํํ๊ณ , ์์ ์ ํ๋ ์ด ๊ธฐ๋ก์ ์ปค๋ฎค๋ํฐ์ ๊ณต์ ํด๋ณด์ธ์!
TFT Summoner Stats๋ Riot Games์ Teamfight Tactics(TFT) ํ๋ ์ด์ด๋ฅผ ์ํ ์น ์ ํ๋ฆฌ์ผ์ด์
์
๋๋ค.
ํ๋ ์ด์ด์ ์ํ์ฌ ์ ๋ณด, ๋งค์น ํ์คํ ๋ฆฌ, ํฐ์ด ๋ฑ์ ์ค์๊ฐ์ผ๋ก ์กฐํํ๊ณ , ๋ค๋ฅธ ํ๋ ์ด์ด๋ค๊ณผ ์์ ์ ๊ธฐ๋ก ๊ณต์ ํ ์ ์๋ ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฅ๋ ์ ๊ณตํฉ๋๋ค.
- ๐ ์ํ์ฌ ์ ๋ณด ๊ฒ์ (username + tag)
- ๐งพ TFT ๋งค์น ํ์คํ ๋ฆฌ ์กฐํ
- ๐ ๊ฐ์ธ ํฐ์ด ๋ฐ ๋ญํฌ ํ์ธ
- ๐ ํฐ์ด ๊ณต์
src/main/java/io/github/s0ooo0k/tftv2/
โโโ config/ # Spring ์ค์ ํ์ผ
โโโ controller/ # ์น ์์ฒญ ์ฒ๋ฆฌ ์ปจํธ๋กค๋ฌ
โโโ model/
โ โโโ dto/ # ๋ฐ์ดํฐ ์ ์ก ๊ฐ์ฒด
โ โโโ repository/ # ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทผ ๋ก์ง
โโโ service/ # ๋น์ฆ๋์ค ๋ก์ง
โโโ util/ # ์ ํธ๋ฆฌํฐ ํด๋์ค
- ๐ OAuth 2.0 ์์ ๋ก๊ทธ์ธ ์ฐ๋
- ๐ฆ Gemini LLM ์ฐ๋์ ํตํ ๊ฒ์ ์กฐ์ธ
- ๐ ์์ธํ ๋งค์น ํต๊ณ ๋ฐ ๋ถ์ ๊ธฐ๋ฅ ์ถ๊ฐ
- ๐ฑ ๋ฐ์ํ UI๋ก ๋ชจ๋ฐ์ผ ๋์
- ๐ฌ ๋๊ธ / ์ข์์ ๊ธฐ๋ฅ ๋ฑ ์ปค๋ฎค๋ํฐ ํ์ฅ
- โก ์บ์ฑ์ ํตํ API ํธ์ถ ์ต์ ํ
-
โ๏ธ Spring MVC ๊ตฌ์กฐ์ ๋ํ ์ค์ ๊ฐ๊ฐ
์ปจํธ๋กค๋ฌ-์๋น์ค-๋ ํฌ์งํ ๋ฆฌ ๊ณ์ธต ๋ถ๋ฆฌ๋ฅผ ์ง์ ๊ตฌํํ๋ฉฐ Spring MVC์ ํ๋ฆ์ ์ฒด๋ํ์ต๋๋ค. -
๐ ์ธ๋ถ API(Riot API) ์ฐ๋ ๊ฒฝํ
์ธ์ฆ ํค ๊ด๋ฆฌ๋ถํฐ API ํธ์ถ, ์๋ต ํ์ฑ๊น์ง ์ ๊ณผ์ ์ ๊ฒฝํํ ์ ์์์ต๋๋ค. -
๐งต JDBC๋ฅผ ํ์ฉํ DB ์ฐ๋ ๋ฐ ์ค๊ณ ๋ฅ๋ ฅ ํฅ์
MySQL๊ณผ ์ง์ ์ฐ๊ฒฐํ๊ณ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ฉฐ, ๋ฐ์ดํฐ ํ๋ฆ๊ณผ SQL ์ค๊ณ ๋ฅ๋ ฅ์ ์ค๋ฌด์ ์ผ๋ก ํค์ ์ต๋๋ค. -
๐งฑ DTO์ ๋๋ฉ์ธ ๋ถ๋ฆฌ์ ์ค์์ฑ
์ธ๋ถ API์ DB ์๋ต ํ์์ด ๋ค๋ฅผ ๋, DTO๋ฅผ ์ฌ์ฉํด ์์ ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณํํ๋ ๋ฐฉ์์ ์ต์ํด์ก์ต๋๋ค. -
๐งฐ ์์ธ ์ฒ๋ฆฌ ๋ฐ ๋ก๊น ์ ํ์์ฑ ์ฒด๊ฐ
์์์น ๋ชปํ API ์๋ต ์ค๋ฅ๋ ๋คํธ์ํฌ ์ด์๋ฅผ ์ฒ๋ฆฌํ๋ฉฐ, SLF4J๋ฅผ ํ์ฉํ ๋ก๊น ์ ์ค์์ฑ์ ๊นจ๋ฌ์์ต๋๋ค. -
๐ก ์ ์ ์ค์ฌ ๊ธฐ๋ฅ ์ค๊ณ ๊ฒฝํ
๋จ์ ์ ์ ์กฐํ๋ฅผ ๋์ด์ ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฅ์ ๋ถ์ด๋ฉฐ ์ฌ์ฉ์ ๊ฒฝํ์ ๊ณ ๋ คํ ๊ธฐ๋ฅ ๊ธฐํ๊ณผ UI ํ๋ฆ์ ๊ณ ๋ฏผํ๊ฒ ๋์์ต๋๋ค.
์ด ํ๋ก์ ํธ๋ Riot Games์ API๋ฅผ ์ฌ์ฉํ๊ณ ์์ผ๋ฉฐ, Riot Games๋ ๋ณธ ํ๋ก์ ํธ์ ํ์ ๋๋ ์ง์๊ณผ๋ ๋ฌด๊ดํฉ๋๋ค.
Riot Games Developer Portal์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ๊ณ ์์ต๋๋ค.
์๋น์ค ์ด์ฉ ์ Riot API ์ ์ฑ
์ ์ค์ํด์ผ ํฉ๋๋ค.
๐ Riot Games ๋ฐ Teamfight Tactics๋ Riot Games, Inc.์ ์ํ์ ๋๋ค.