๐๏ธ ์คํ๋ง ๋ถํธ ํด๋ ๊ตฌ์กฐ ๋ชจ๋ฒ ์ฌ๋ก
๊ฐ๋ฐ์๋ค์ ์ฝ๋์ ์ ์ง๋ณด์์ฑ, ํ์ ๊ฐ ํ์ ๋ฐ ์ ์ฒด ๊ฐ๋ฐ ํ๋ก์ธ์ค ๊ฐ์ ์ ์ํด ์ ๊ตฌ์กฐํ๋ ํด๋ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์คํ๋ง ๋ถํธ ํด๋ ๊ตฌ์กฐ๊ฐ ์ค์ํ ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. - ๋ช ํ์ฑ ๋ฐ ๊ตฌ์ฑ - ๋ชจ๋ํ - ํ์ฅ์ฑ - ์ฝ๋ ์ฌ์ฌ์ฉ์ฑ ๋ค์์ ์คํ๋ง ๋ถํธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ ํด๋ ๊ตฌ์กฐ๋ฅผ ๋ณด์ฌ์ค๋๋ค. (๋งํฌ ์ฐธ์กฐ) ๐ config ์ ํ๋ฆฌ์ผ์ด์ ์ค์ ์ ๊ตฌ์ฑํ๋ ๊ตฌ์ฑ ํด๋์ค ๋๋ ์ ํ๋ฆฌ์ผ์ด์ -๋ ๋ฒจ์ AppConfig๋ฅผ ํฌํจํฉ๋๋ค. ๐ controller RESTful ์ปจํธ๋กค๋ฌ ํด๋์ค๋ฅผ ํฌํจํฉ๋๋ค. ์ด ํด๋์ค๋ ๋ค์ด์ค๋ HTTP ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ API Endpoint๋ฅผ ์ ์ํฉ๋๋ค. ๐ DTO ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ค๋ฅธ ๊ณ์ธต ๋๋ ๊ตฌ์ฑ ์์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค. - ๋น์ฆ๋์ค ๋ก์ง์ด ํฌํจ๋์ง ์์ - ๋ฐ์ดํฐ ์ด๋ฐ์ด ์ฃผ ๋ชฉ์ ๐ Enums Enum ํด๋์ค์ ์์๋ก๋ SUCCESS, FAIL, PENDING๋ฑ์ ์ํ๊ฐ ์์ต๋๋ค. ๐ model ๋๋ฉ์ธ์ ๊ตฌ์กฐ๋ ๋์์ ๋ํ๋ด๋ ๋ฐ์ดํฐ ๋ชจ๋ธ ๋๋ ์ํฐํฐ๋ฅผ ์ ์ฅํฉ๋๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์ ๋งคํ๋๊ณ ๋ฐ์ดํฐ์ ์์ฑ๊ณผ ๊ด๊ณ๋ฅผ ์ ์ํฉ๋๋ค. ๐ repository ๋ฐ์ดํฐ ์ ๊ทผ์ ๋ค๋ฃจ๋ ๋ ํ์งํ ๋ฆฌ ํด๋์ค๋ฅผ ํฌํจํฉ๋๋ค. ์ด๋ฌํ ํด๋์ค๋ ์ผ๋ฐ์ ์ผ๋ก ORM, JPA ๋ฑ์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํธ์์ฉ ํฉ๋๋ค. ๐ service ๋น์ฆ๋์ค ๋ก์ง์ ๊ตฌํํ๋ ์๋น์ค ํด๋์ค๋ฅผ ํฌํจํฉ๋๋ค. ๐ utils ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ฒด๊ณ์ ์ด๊ณ ๋ชจ๋์์ผ๋ก ์ด์ํ๊ธฐ ์ํด ์ ํธ๋ฆฌํฐ ํด๋์ค๋ฅผ ๋ฐฐ์นํฉ๋๋ค.