
๐ 0. ์๊ฐ
์๋
ํ์ธ์! ์ ๋ ํ์ฌ ์ปดํจํฐ ๊ณตํ๊ณผ์ ์ฌํ ์ค์ธ 3ํ๋
์
๋๋ค. ์๋
9์๋ถํฐ UMC 7๊ธฐ๋ก ํ๋ํ๋ฉฐ 10์ฃผ ๋์ ์ํฌ๋ถ์ ํตํด ์คํฐ๋ํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก UMC 7๊ธฐ ๋ฐ๋ชจ๋ฐ์ด์ ์ฐธ๊ฐํ๊ฒ ๋์์ต๋๋ค. ๊ทธ๋์ ๊ฐ๋จํ ์ฌ์ด๋ ํ๋ก์ ํธ๋ฅผ ์งํํด๋ณธ ๊ฒฝํ์ ์์์ง๋ง, PM, ๋์์ธ, ํ๋ก ํธ์๋, ๋ฐฑ์๋๊ฐ ํจ๊ปํ๋ ํ ํ๋ก์ ํธ๋ ์ฒ์์ด์์ต๋๋ค. ์ฒ์์๋ ๊ฐ ์ญํ ๊ฐ์ ์ํต ๋ฐฉ์์ด๋ ํ์
ํ๋ก์ธ์ค์ ์ต์ํ์ง ์์ ์ด๋ ค์๋ ์์์ง๋ง, ์ ์ฐจ ์ํํ ์ปค๋ฎค๋์ผ์ด์
์ ์ค์์ฑ์ ๊นจ๋ซ๊ณ ํ์๋ค๊ณผ์ ํ๋ ฅ์ ํตํด ํ๋ก์ ํธ๋ฅผ ์์ฑํด ๋๊ฐ๋ ๊ณผ์ ์์ ๋ง์ ๊ฒ์ ๋ฐฐ์ธ ์ ์์์ต๋๋ค โ๏ธ
๐ป 1. ํ๋ ๊ฒฝํ

1๏ธโฃ ์ฐธ์ฌ ํ๋ก์ ํธ์ ๋งก์ ์ญํ
์ ๋ 1์ธ ๊ฐ๊ตฌ๋ฅผ ์ํ ์์ทจ ๊ฟํ ๊ฐ์ด๋๋ถ ์น์ฌ์ดํธ, HOME MASTER์์ ๋ฐฑ์๋ ํํธ๋ก ์ฐธ์ฌํ์์ต๋๋ค. ๋ฐ๋ชจ๋ฐ์ด ๊ฐ๋ฐ์ ๋งค์นญ ๋ ํ๋ก์ ํธ๋ค ์ค์์ ๋ณด๊ณ ๋ฐ๋ก ์ง์ํด์ผ๊ฒ ๋ค๊ณ ๊ฒฐ์ฌํ์ต๋๋ค. 1์ธ ๊ฐ๊ตฌ๋ฅผ ์ํ ์์ทจ ๊ฟํ์ด๋ผ๋ ์ฃผ์ ๊ฐ ์ ์๊ฒ๋ ๊ต์ฅํ ์ค์ฉ์ ์ด๊ณ ํฅ๋ฏธ๋กญ๊ฒ ๋ค๊ฐ์๊ธฐ ๋๋ฌธ์
๋๋ค.
๋ํ์๋ฟ๋ง ์๋๋ผ ์ทจ์ค์, ํน์ ๋
์ ๊ฐ๊ตฌ๋ค์ด ์ฆ๊ฐํ๊ณ ์๋ ์ฌํ์ ํ๋ฆ ์์์, 1์ธ ๊ฐ๊ตฌ๋ฅผ ์ํ ์ค์ฉ์ ์ธ ์ ๋ณด ์ ๊ณต์ด ์ ์ ๋ ์ค์ํด์ง๊ณ ์๋ค๊ณ ์๊ฐํ์ต๋๋ค. ๋ง์ ์ฌ๋๋ค์ด ์์ทจ๋ฅผ ์์ํ๋ฉด์ ๊ฒช๋ ์ํ์ฐฉ์ค๋ฅผ ์ค์ด๊ณ , ์ ์ฉํ ํ์ ํ๋์ ๋ณผ ์ ์๋ ํ๋ซํผ์ด ์๋ค๋ฉด ํฐ ๋์์ด ๋ ๊ฒ์ด๋ผ ๋๊ปด ์ง์์ ๊ฒฐ์ฌํ์ต๋๋ค.

๋คํ์ด 1์ฐจ ๋งค์นญ ๋ ๋ฐ๋ก ํฉ๊ฒฉ์ด ๋์ด ํ๋ก์ ํธ์ ์ฐธ์ฌํ ์ ์๊ฒ๋์์ต๋๋ค. (์ด๋ ๋จ์ด์ง๊น๋ด ์์ฒญ ๋ง์์ ์กธ์์ต๋๋ค)
2๏ธโฃ ํ์๋ค๊ณผ์ ํ์ ๊ฒฝํ
์ด์ ํ๋ก์ ํธ์์๋ ์ ํผ์ ๋ฐฑ์๋๋ฅผ ๋งก๊ณ , ํ๋ก ํธ์๋๋ ๋จ ํ ๋ช
์ด์ด์ ๋์ด์๋ง ์งํํ๋ ๋ฐฉ์์ด์์ต๋๋ค.
๊ทธ ๋น์์๋ ํ์
๋ณด๋ค๋ ๊ธฐ๋ฅ ๊ตฌํ ์์ฒด์ ์ง์คํ๋ ๊ฒ์ด ์ฃผ๋ ๋ชฉํ์์ด์. ํ์ง๋ง ์ด๋ฒ ํ๋ก์ ํธ๋ ์ฐธ์ฌ ์ธ์์ด ๋ง๊ณ , ๊ตฌํํด์ผ ํ ๊ธฐ๋ฅ๋ ํจ์ฌ ๋ง์๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฐ ์๋๋ฅผ ๋ง์ถ๊ณ , ์ฝ๋์ ์ผ๊ด์ฑ์ ์ ์งํ๋ ๊ฒ์ด ์ค์ํ์ต๋๋ค.
๐ค GitHub PR ๋ฆฌ๋ทฐ
- ์ฝ๋ ํ์ง์ ๋์ด๊ธฐ ์ํด PR ์์ฑ ์ ๊ธฐ๋ฅ ์ค๋ช ๋ฐ ๋ณ๊ฒฝ ์ฌํญ์ ์์ธํ ๋ฌธ์ํํ์ฌ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ๋๋ก ํ์ต๋๋ค. ๋ฏธ๋ฆฌ ์์ฑ๋ ์ด์, pr ํ ํ๋ฆฟ์ผ๋ก pr์ ์์ฑํ๋ฉด์ ๋จธ์งํ๋ ๊ฑธ ์ตํ์ต๋๋ค

- ์ฝ๋ ์คํ์ผ์ ๋ง์ถ๊ธฐ ์ํด ์ผ๊ด๋ ์ฝ๋ฉ ์ปจ๋ฒค์ ์ ์ฌ์ฉํ์ต๋๋ค. (ESLint๋ฅผ ์ฌ์ฉํ์ต๋๋ค )
๐ ์์ ๊ด๋ฆฌ
- ์ ์ ํ์ ๋งจ ์ฒ์์ ๊ฐ๋จํ๊ฒ๋ผ๋ ๊ทธ๋ผ์ด๋ ๋ฃฐ์ ์ค์ ํ์์ต๋๋ค.
- ๋์ค์ฝ๋์์ ํ๋ก ํธ, ๋ฐฑ๋ก๊ทธ๋ฅผ ๊ด๋ฆฌํ์ต๋๋ค. ๋์ค์ฝ๋์์ ์๋ก ์ฌ๋ฆฐ ์ด์, ๋ธ๋์น, ๋ฐฐํฌ ๋์๊ฐ๋ ์ํฉ์ ๋ค ๋ณผ ์์์ด์ ๋งค์ฐ ํธ๋ฆฌํ์ต๋๋ค. ์๋ ์๋ฆผ ๊ธฐ๋ฅ์ ์ค์ ํ์ฌ PR์ด ์ฌ๋ผ์ค๊ฑฐ๋ ๋ฐฐํฌ๊ฐ ์๋ฃ๋ ๋๋ง๋ค ํ์๋ค์ด ์ค์๊ฐ์ผ๋ก ํ์ธํ ์ ์๋๋ก ํ์ต๋๋ค. ๋๋ถ์ ์ํต์ด ๋์ฑ ์ํํด์ก๊ณ , ์ค์๊ฐ ํผ๋๋ฐฑ์ด ๊ฐ๋ฅํ์ต๋๋ค. (ํ์๋ถ์ด ์ ์ฉํด์ฃผ์ จ๋๋ฐ ์ข์์ ์ ๋ ๋ค์ ํ๋ก์ ํธ ๋ ํ๋ฒ ์ ์ฉํด๋ณผ ๊ณํ์ ๋๋ค)
- ๋งค์ฃผ ์ผ์ ํ ์ฃผ๊ธฐ๋ก ๋๋ฉด ํน์ ํ์๋ฅผ ์งํํ์ฌ, ์งํ ์ํฉ์ ๊ณต์ ํ๊ณ ์ฐ์ ์์๋ฅผ ์กฐ์ ํ๋ ๋ฐฉ์์ผ๋ก ํ๋ก์ ํธ๋ฅผ ์ด์ํ์ต๋๋ค.


๐ ๊ธด๊ธ ๋ฒ๊ทธ ํด๊ฒฐ์ ์ํ ์ ์ํ ๋์
- ์๋น์ค ์ด์ ์ค ์์์น ๋ชปํ ๋ฒ๊ทธ๊ฐ ๋ฐ์ํ์ ๋, ํ์๋ค๊ณผ ์ฆ๊ฐ์ ์ธ ํ์ ์ ํตํด ์์ธ์ ๋ถ์ํ๊ณ ํด๊ฒฐํ์์ต๋๋ค.
- ์๋ฅผ ๋ค์ด, ๊ฒ์์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๋, ํ๋ก ํธ ๋ถ๊ป ์ ๋ฌ ๋ฐ์ ํ ๋ฐ๋ก
2๏ธโฃ ํ๋ก์ ํธ ์งํ ์ค ๊ฒช์๋ ์ํผ์๋
ํ๋ก์ ํธ์ ํฉ๋ฅํ ํ, ์ ๋ ํ CRUD, ๊ฒ์ ๋ฐ ์ปค๋ฎค๋ํฐ ๊ด๋ จ API ๊ฐ๋ฐ ๋ฐ ๊ณ ๋ํ๋ฅผ ๋ด๋นํ์ต๋๋ค. ์ฒ์์๋ ๊ธฐ์กด ์ฝ๋๋ฒ ์ด์ค๋ฅผ ํ์
ํ๋ ๋ฐ ์๊ฐ์ด ํ์ํ์ง๋ง, ํ์๋ค๊ณผ ์ง์์ ์ธ ์ฝ๋ ๋ฆฌ๋ทฐ์ ํผ๋๋ฐฑ์ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ ์ ์ฐจ ์ ์ํ ์ ์์์ต๋๋ค
๐ฏ ์ข์์/๋ถ๋งํฌ ์ ๋ ฌ ์ค๋ฅ ํด๊ฒฐ
- ์ฒ์์๋ Prisma์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์จ ํ, JS์์ .sort()๋ฅผ ์ฌ์ฉํ์ฌ ์ข์์ ๋ฐ ๋ถ๋งํฌ ๊ฐ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ์ง๋ง, limit ๊ฐ์ด ๋ค๋ฅผ ๊ฒฝ์ฐ ์ ํํ ์์๋๋ก ์ ๋ ฌ๋์ง ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค.
- ํด๊ฒฐ์ฑ ์ผ๋ก Prisma์ orderBy ์ต์ ์ ํ์ฉํ์ฌ DB ์ฟผ๋ฆฌ์์ ๋ฐ๋ก ์ ๋ ฌ์ ์ ์ฉํ๋๋ก ๋ณ๊ฒฝํ์ต๋๋ค.
- ์ถ๊ฐ๋ก, ์ข์์ ๊ฐ์๊ฐ ๊ฐ์ ๊ฒฝ์ฐ ์ต์ ์์ผ๋ก ์ ๋ ฌํ๋๋ก ๋ณด์ํ์ฌ, ๋ฐ์ดํฐ๊ฐ ์ ํํ๊ฒ ์ ๋ ฌ๋๋๋ก ๊ฐ์ ํ์ต๋๋ค.
๐ ๊ฒ์ ๊ธฐ๋ฅ์ ์ต์ ํ
- ๊ธฐ์กด ๊ฒ์ ๊ธฐ๋ฅ์์๋ mode: "insensitive" ์ต์ ์ ์ฌ์ฉํ์ผ๋, Prisma ์ต์ ๋ฒ์ ์์๋ ์ง์๋์ง ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค(MySQL ๋ฑ)์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.
- ํด๊ฒฐ์ฑ ์ผ๋ก ํด๋น ์ต์ ์ ์ ๊ฑฐํ๊ณ , ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์๊ณ ๊ฒ์์ด ๊ฐ๋ฅํ๋๋ก DB ๋ ๋ฒจ์์ ์ฒ๋ฆฌํ์ต๋๋ค.
๐ ์ข์์ ๋ฐ ๋ถ๋งํฌ ์ฌ๋ถ ์กฐํ ๊ธฐ๋ฅ ์ถ๊ฐ
- ํ ์์ธ ์กฐํ ๋ฐ ์ ์ฅ๋ ํ ๋ชฉ๋ก์์, ์ฌ์ฉ์๊ฐ ํด๋น ํ์ ์ข์์ ๋ฐ ๋ถ๋งํฌํ๋์ง ์ฌ๋ถ๋ฅผ ํจ๊ป ๋ฐํํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
๐ฅ ์ธํ๋ฃจ์ธ์ ์ฌ๋ถ ์ถ๊ฐ
- ์ธํ๋ฃจ์ธ์๊ฐ ์์ฑํ ํ์ ํํฐ๋งํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
๐ท ์ด๋ฏธ์ง ์ ๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ
1๏ธโฃ Multer์ Multer-S3 ์ค์
- Multer๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ ์ ๋ก๋ ๋ฏธ๋ค์จ์ด๋ฅผ ์ ์ฉํ๊ณ ,
- Multer-S3๋ฅผ ํ์ฉํ์ฌ ์ ๋ก๋๋ ํ์ผ์ S3 ๋ฒํท์ ์ ์ฅํ๋ ๊ตฌ์กฐ๋ฅผ ์ตํ์ต๋๋ค.
2๏ธโฃ S3์ ์ ๋ก๋๋ ์ด๋ฏธ์ง์ URL ๋ฐํ
- ์
๋ก๋๋ ํ์ผ์ S3 URL์ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต ๊ฐ์ผ๋ก ์ ๋ฌํ์ฌ,
ํ๋ก ํธ์๋์์ ์ด๋ฏธ์ง๋ฅผ ํ์ฉํ ์ ์๋๋ก ํ์ต๋๋ค.
3๏ธโฃ S3 ํ์ผ ์ ๊ทผ ๊ถํ ๋ฐ ๋ณด์ ์ค์
- ์ฒ์์๋ ์
๋ก๋๋ ์ด๋ฏธ์ง๊ฐ ํผ๋ธ๋ฆญ URL๋ก ๋
ธ์ถ๋์ง ์์์ ์ ๊ทผ์ด ๋ถ๊ฐ๋ฅํ๋๋ฐ,
S3 ๋ฒํท ์ ์ฑ ์ ์์ ํ์ฌ ํ์ฉ๋ ์ฌ์ฉ์๋ง ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก ๊ถํ์ ์ค์ ํ์ต๋๋ค.
4๏ธโฃ ๋ถํ์ํ ์ด๋ฏธ์ง ์ญ์ ๋ฐ ์ ๋ฐ์ดํธ ์ฒ๋ฆฌ
- ๊ธฐ์กด ์ด๋ฏธ์ง๋ฅผ ์ญ์ ํ๊ณ ์๋ก์ด ์ด๋ฏธ์ง๋ก ์ ๋ฐ์ดํธํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค.
- S3์์ ํน์ ํ์ผ์ ์ญ์ ํ๋ deleteObject API๋ฅผ ํ์ฉํ์ฌ ๊ธฐ์กด ํ์ผ์ ์ ๊ฑฐํ ํ ์๋ก์ด ํ์ผ์ ์ ๋ก๋ํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํํ์ต๋๋ค.
๐ ๊ตฌํํ๋ฉฐ ๋ฐฐ์ด ์ & ์ด๋ ค์ ๋ ์
- ํ์ผ ์ ์ฅ ๋ฐฉ์ ์ดํด: ์ฒ์์๋ S3์ ์ง์ ์
๋ก๋ํ๋ ๊ณผ์ ์ด ๋ฏ์ค์์ง๋ง,
Multer-S3๋ฅผ ํ์ฉํ์ฌ ๋ก์ปฌ ์ ์ฅ ์์ด ๋ฐ๋ก S3์ ์ ์ฅํ๋ ๋ฐฉ์์ ์ตํ ์ ์์์ต๋๋ค. - CORS ์ ์ฑ
๋ฌธ์ ํด๊ฒฐ: ์
๋ก๋๋ ์ด๋ฏธ์ง๋ฅผ ํด๋ผ์ด์ธํธ์์ ํธ์ถํ ๋,
CORS ์ ์ฑ ์ผ๋ก ์ธํด ์ด๋ฏธ์ง๊ฐ ์ฐจ๋จ๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋๋ฐ, S3 CORS ์ค์ ์ ์์ ํ์ฌ ํด๊ฒฐํ์ต๋๋ค. - ๋ฒํท ์ ์ฑ ์ต์ ํ: ์ฒ์์๋ ํผ๋ธ๋ฆญ์ผ๋ก ๋ชจ๋ ์ฌ๋์ด ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก ์ค์ ํ์์ง๋ง,์ดํ์๋ ํ์ํ ๊ถํ๋ง ํ์ฉํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝํ์ฌ ๋ณด์์ฑ์ ๊ฐํํ์ต๋๋ค.
4๏ธโฃ ๋ฐฐ์ด ๊ธฐ์ ๊ณผ ๊ทน๋ณตํ ๋์ ๊ณผ์
โก Prisma ํ์ฉ ๋ฅ๋ ฅ ํฅ์
- Prisma๋ฅผ ๋จ์ํ ORM์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ด ์๋๋ผ, ์ ๋ ฌ, ๊ฒ์ ์ต์ ํ, ๊ด๊ณํ ๋ฐ์ดํฐ ์กฐํ ๋ฑ์ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ ์ต๋๋ค.
- ํนํ, orderBy์ _count๋ฅผ ํ์ฉํ์ฌ ์ข์์ ๋ฐ ๋ถ๋งํฌ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ๋ ฌํ๋ ๋ก์ง์ ๊ฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ ์ต๋๋ค. (orderBy๋ ์๊ณ ์์๋๋ฐ _count๋ ์ด๋ฒ์ ์๋กญ๊ฒ ์๊ฒ ๋์์ต๋๋ค)
๐ RESTful API ์ค๊ณ ์์น ํ์ต
- API ์๋ต ํ์์ ์ผ๊ด๋๊ฒ ์ ๋ฆฌํ๊ณ , ์๋ฌ ํธ๋ค๋ง์ ์ฒด๊ณ์ ์ผ๋ก ๊ฐ์ ํ๋ ์์ ์ ์งํํ์ต๋๋ค. (๋ฐธ๋ฆฌ๋ฐ์ด์ ๋ฐฉ๋ฒ๋ ์๋กญ๊ฒ ์๊ฒ ๋์์ต๋๋ค)
- Swagger ๋ฌธ์๋ฅผ ํ์ฉํ์ฌ API ๋ช ์ธ๋ฅผ ์์ฑํ๊ณ , ํ์๋ค์ด ์ฝ๊ฒ ์ดํดํ๊ณ ์ฌ์ฉํ ์ ์๋๋ก ๋ฌธ์ํํ๋ ๊ณผ์ ์ ๊ฒฝํํ์ต๋๋ค. (์ด๋ฏธ์ง, ํ์ผ ์ ๋ก๋๋ฅผ ์ค์จ๊ฑฐ์์ ์ด๋ป๊ฒ ์ฃผ์์ ์ ๋์ง ์ฒ์ ์๊ฒ ๋์์ต๋๋ค)




๐ 2. ์ฃผ์ ์ฑ๊ณผ ๋ฐ ๋ฐฐ์ (Achievements & Learning)
๐ ๋ฐ๋ชจ๋ฐ์ด ๋ถ์ค ์ด์
์ ๋ ์ด๋ฐ ํฐ ํ์ฌ์ ์ฐธ์ฌํ๋ ๊ฒ์ด ์ฒ์์ด๋ผ ๋ง์ด ๋จ๋ ธ์ต๋๋ค. ํนํ, ์ง์ ์ฌ๋๋ค ์์์ ์ฐ๋ฆฌ๊ฐ ๋ง๋ ์ฌ์ดํธ๊ฐ ์ด๋ป๊ฒ ๋์ํ๋์ง ์์ฐํ๋ ์๊ฐ์ด ๊ฐ์ฅ ๊ธด์ฅ๋๋ ์ด์ ์ค ํ๋์์ต๋๋ค. (์ค๊ฐ์ ์๋ฌ๊ฐ ๋๋ฉด ์ด์ฉ๋ ๊ฑฑ์ ๋ผ์ ๊ณ์ ์ฝ๋๋ ์๋ฒ๋ฅผ ์ ๊ฒํ์ด์ ใ
ใ
)
์ค์ ๋ก ๋ฐ๋ชจ๋ฐ์ด ์ ๋ ๊น์ง ํ์๋ค๊ณผ ํ
์คํธ๋ฅผ ๋ฐ๋ณตํ๋ฉฐ ๊ธฐ๋ฅ์ด ์ ์์ ์ผ๋ก ์๋ํ๋์ง ํ์ธํ์ง๋ง, ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์๊ธฐ์น ๋ชปํ ๋ณ์๊ฐ ์๊ธธ๊น ๋ด ๊ฑฑ์ ์ด ๋ง์์ต๋๋ค. ํ์ง๋ง ๋ง์ ์ ์ํ๋ฅผ ์์ํ๋, ์ง๊ธ๊น์ง ์ฐ๋ฆฌ๊ฐ ์ด์ฌํ ๊ฐ๋ฐํด์จ ๊ฒฐ๊ณผ๋ฌผ์ ๋ณด์ฌ์ฃผ๋ ๊ณผ์ ์ด ๋ฟ๋ฏํ๊ธฐ๋ ํ๊ณ , ๋ง์ ์ฌ๋๋ค์ด ๊ด์ฌ์ ๊ฐ์ ธ์ฃผ์๋ ๊ฑธ ๋ณด๋ฉฐ ๋ณด๋๋ ๋๊ผ์ต๋๋ค.


์ ํฌ ํ์ ๋จ์ํ ์์ฐ์ ๋์ด์, ์์ทจ๋ผ๋ ์ปจ์
์ ์ด๋ ค ๋ถ์ค๋ฅผ ๋ ์ฌ๋ฏธ์๊ฒ ์ด์ํ๊ณ ์ถ์์ต๋๋ค. ๊ทธ๋์ ์์ทจ์ฉํ๋ค์ ์ค๋นํด ๋ฝ๊ธฐ ์ด๋ฒคํธ๋ฅผ ์งํํ์ต๋๋ค. ์ฐธ๊ฐ์๋ค์ ์น์ฌ์ดํธ๋ฅผ ์ฒดํํ ํ ์ธ์คํ ํ๋ก์ฐ๋ฅผ ํ๋ฉด, ๋ฝ๊ธฐ๋ฅผ ํตํด ์์ทจ ํ์ํ
(์ธ์ , ์์ธ๋ฏธ, ๋ผ๋ฉด ๋ฑ)์ ๋ฐ์ ์ ์๋๋ก ํ์ต๋๋ค. ๋ํ ํ๋ก ๋ถ์ค๋ ์ค๋นํ์ฌ 1์ธ ๊ฐ๊ตฌ๋ค์ ๊ณ ๋ฏผ์ ๋ค์ด์ฃผ๋ ์ด๋ฒคํธ๋ ์งํํ์ต๋๋ค! ์์ทจ๋ฅผ ํ๋ค ๋ณด๋ฉด ํผ์ ํด๊ฒฐํด์ผ ํ ๊ณ ๋ฏผ๋ค์ด ๋ง์์ง๋๋ฐ, ์ด๋ฅผ ์กฐ๊ธ์ด๋ผ๋ ๋์ด์ฃผ๊ณ ์ํตํ ์ ์๋ ์ฌ๋ฏธ์๋ ์์๋ฅผ ์ถ๊ฐํ์์ต๋๋ค (๊ฐ์ ํ์๋ถ์ด ํด์ฃผ์
์ ๋๋ฌด ๊ฐ์ฌํ์ด์ ์งฑ ๋ฉ์์๋ค..)
์ด ์ด๋ฒคํธ ๋๋ถ์ ๋ง์ ๋ถ๋ค์ด ๋ถ์ค๋ฅผ ๋ฐฉ๋ฌธํด์ฃผ์
จ๊ณ , ๋จ์ํ ๊ธฐ๋ฅ์ ์๊ฐํ๋ ๊ฒ๋ณด๋ค ๋ ํจ๊ณผ์ ์ผ๋ก ํ๋ก์ ํธ์ ์ทจ์ง๋ฅผ ์ ๋ฌํ ์ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ฌ๋๋ค์ ๋ฐ์์ ๋ณด๋ฉด์ ์ฌ์ฉ์ ๊ฒฝํ์ ๊ณ ๋ คํ ์ด์์ด ์ผ๋ง๋ ์ค์ํ์ง ์์ผ ๊นจ๋ซ๋ ๊ณ๊ธฐ๊ฐ ๋์์ต๋๋ค.
๐ ์ฐ์์ ์์!

์ด๋ ๊ฒ ์ด์ฌํ ์ค๋นํ ๋๋ถ์ธ์ง, ์ ํฌ ํ์ ๋ฐ๋ชจ๋ฐ์ด์์ ์ฐ์์์ด๋ผ๋ ๊ฐ์ง ๊ฒฐ๊ณผ๋ฅผ ์ป๊ฒ ๋์์ต๋๋ค!
์ฌ์ค ์ฒ์์๋ ๋จ์ํ ์ฐ๋ฆฌ๊ฐ ๋ฐฐ์ด ๊ฒ๋ค์ ์ค์ ์์ ์ ์ฉํด๋ณด์๋ ๋ง์์ผ๋ก ์์ํ ํ๋ก์ ํธ์๊ณ ๋ค๋ค ์ด ํ๋ก์ ํธ๊ฐ ์ฒซ ํ๋ก์ ํธ์ธ ํ์๋ค๋ ์์ด์ ๋ค๋ค ๋๋ฌด ๊ธฐ๋ํ ์ง ๋ง์๊ณ ํ์๋๋ฐ ์ด๋ ๊ฒ ์ข์ ๊ฒฐ๊ณผ๊น์ง ์ป๊ฒ ๋์ด ์ ๋ง ๊ธฐ๋ปค์ต๋๋ค.
์ฐ์์ ๋ฐํ ๋ง์ง๋ง ์๊ฐ, ํ๋ง์คํฐ๋ผ๋ ์ด๋ฆ์ด ํธ๋ช
๋์์ ๋, ์๊ฐ์ ์ผ๋ก ์ด๊ฒ ๋ง๋? ํ๋ ์๊ฐ์ด ๋ค์์ต๋๋ค. (๋ค๋ค ์ฐ๋ฆฌ ํ ์ด๋ฆ์ด ๋ถ๋ ธ์ ๋ ์ด๋ฆฌ๋ฅ์ ํด์ ๋ช ์ด ๋์ ์๋ก๋ฅผ ๋ฐ๋ผ๋ณด๋ฉฐ '์ด๊ฒ ํ์ค์ธ๊ฐ..?' ๊ณ ๋ฏผํ๋ ์๊ฐ ใ
ใ
) ํ์๊ฐ์ ์กธ์์ด ํ ๋ฌ์๋ฌ๊ณ , ๋๋ฌด ๊ธฐ๋ป์ ๋ฐ๋ก ํ์๋ค๊ณผ ๋์ ๋ง์ฃผ์น๋ฉฐ ํํธํ๋ ๊ธฐ์ต์ด ๋ฉ๋๋ค. ๊ทธ์ ๊น์ง ๋ค๋ค ์ง์ณ์ ๊ฑฐ์ ๋ฐ์ฏค ์ฐ๋ฌ์ ธ์์๋๋ฐ...

์ฝ ๋ ๋ฌ์ด๋ผ๋ ๊ธฐ๊ฐ๋์ ์ด์ฌํ ์ค๋น ํ๋ ํ๋ก์ ํธ๋ก ์ข์ ์ฑ๊ณผ๋ฅผ ๋ผ ์ ์์ด์ ๊ธฐ๋ปค์ต๋๋ค โบ๏ธ
3. ๋๋ ์ ๋ฐ ์กฐ์ธ
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ์ ๋ง ๋ง์ ๊ฒ์ ๋ฐฐ์ ๊ณ , ๊ทธ์ค์์๋ ๊ฐ์ฅ ์ค์ํ๊ฒ ๋๊ผ๋ ์ ๋ค์ ๊ฐ์ถ๋ ค ์ ๋ฆฌํด๋ณด์์ต๋๋ค!
โ
ํผ์์ ํ๋ ๊ฐ๋ฐ๊ณผ ํ ํ๋ก์ ํธ๋ ์์ ํ ๋ค๋ฅด๋ค.
๊ฐ์ธ ํ๋ก์ ํธ์์๋ ๋ด๊ฐ ์ํ๋ ๋ฐฉ์๋๋ก ์ฝ๋๋ง ์์ฑํ๋ฉด ๋์์ง๋ง, ํ ํ๋ก์ ํธ์์๋ ๋ค๋ฅธ ํ์๋ค๊ณผ์ ์ํต๊ณผ ์ผ์ ์กฐ์จ์ด ํจ์ฌ ๋ ์ค์ํ๋ค๋ ๊ฒ์ ๋ฐฐ์ ์ต๋๋ค. ์๋ก์ ์์
์ ๊ณ ๋ คํ๋ฉด์ ๊ฐ๋ฐํด์ผ ํ๊ธฐ ๋๋ฌธ์, ์์ฐ์ค๋ฝ๊ฒ ํ์
๋ฅ๋ ฅ์ด ํฅ์๋ ์๋ฐ์ ์์์ต๋๋ค.
โ
์ผ๊ด๋ ์ฝ๋ ์คํ์ผ๊ณผ ํ์
ํ๋ก์ธ์ค๊ฐ ์ค์ํ๋ค.
์ฌ๋ฌ ๋ช
์ด ํจ๊ป ๊ฐ๋ฐํ๋ ๋งํผ, ์ฝ๋ ์ปจ๋ฒค์
์ ๋ง์ถ๊ณ Git ๋ธ๋์น ์ ๋ต์ ๋ช
ํํ๊ฒ ์ ๋ฆฌํด๋๋ ๊ฒ์ด ํ์๋ผ๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค. ์ฒ์๋ถํฐ ์ฝ๋ ์ปจ๋ฒค์
์ ๋ง์ถ๊ณ ๋ค์ด๊ฐ๋๊น ๊ฐ๋ฐํ๊ธฐ ์ข ๋ ์์ํ์ต๋๋ค. (๋จธ์งํ ๋๋ ์ถฉ๋์ด ์ ๊ฒ ์ผ์ด๋ฌ์ด์)
.
โ
API ๋ฌธ์ํ๋ฅผ ์ฒ ์ ํ ํด์ผ ํ๋ค.
API ์คํ์ด ๋ช
ํํ์ง ์์ผ๋ฉด ํ๋ก ํธ์๋์ ๋ถํ์ํ ์ปค๋ฎค๋์ผ์ด์
์ด ์ฆ๊ฐํ๊ณ , ๊ฐ๋ฐ ์๋๊ฐ ๋๋ ค์ง ์ ์๋ค๋ ์ ์ ์ง์ ๊ฒฝํํ์ต๋๋ค. ์ด๋ฐ์๋ API ์๋ต ํ์์ด ์ ๊ฐ๊ฐ์ด์ด์ ์กฐ์จํ๋ ๋ฐ ์๊ฐ์ด ๊ฑธ๋ ธ์ง๋ง, ์ดํ ๋ฌธ์๋ฅผ ์ ๋ฆฌํ๊ณ ๋๋ ํ์
์ด ํจ์ฌ ์ํํด์ก์ต๋๋ค.
โ
์ปค๋ฎค๋์ผ์ด์
์ด ์ํํด์ผ ํ๋ก์ ํธ๊ฐ ์ ์งํ๋๋ค.
๊ธฐ์ ์ ์ธ ๋ถ๋ถ๋ ์ค์ํ์ง๋ง, ๊ฒฐ๊ตญ ํ๋ก์ ํธ์ ์ฑ๊ณต์ ์ข์ฐํ๋ ๊ฒ์ ํ์ ๊ฐ์ ์ํํ ์ํต์ด๋ผ๋ ๊ฑธ ๊น์ด ๊นจ๋ฌ์์ต๋๋ค. ์ ํฌ ํ์ ์นด์นด์คํก, ๋์ค์ฝ๋ ๋ฑ ๋ค์ํ ์ํต ์ฑ๋์ ํ์ฉํด ์ต๋ํ ๋น ๋ฅด๊ฒ ํผ๋๋ฐฑ์ ์ฃผ๊ณ ๋ฐ์ ์ ์๋๋ก ํ์ต๋๋ค.
ํนํ, ์ค์ํ ์ผ์ ์ด ๋ค๊ฐ์ฌ ๋๋ ํํฐ๋ฃธ์ ๋์ฌํด์ ๋ฐค์ ์ฝ๋ฉํ๋ ๊ฒฝํ๋ ํ๋๋ฐ… ๐ (๋ค๋ค ์ ๋ง ๋๋จํ ์ด์ ์ ๊ฐ์ง๊ณ ์์ด์, ๊ฐ๋ "์ด ์ฌ๋๋ค์ ์ง์ง ์ ์ ์๋ ๊ฑธ๊น?" ์ถ์์ด์ ใ
ใ
)
๐ ์ถ๊ฐ์ ์ผ๋ก ๋๋ ์ & ๋์ ๋ค์ง
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ๋ฐฐ์ด ๊ธฐ์ ์ค์์๋ ์ ๋ AWS, ๋ฐฐํฌ, CI/CD ์ ๋ต์ ์ข ๋ ๊น์ด ๊ณต๋ถํด์ผ๊ฒ ๋ค๋ ํ์์ฑ์ ๋๊ผ์ต๋๋ค. ๋ฐฐํฌ ๊ณผ์ ์์ ์์์น ๋ชปํ ๋ฌธ์ ๋ค์ ๊ฒช์ผ๋ฉด์, Docker๋ฅผ ํ์ฉํ๋ฉด ์ ์ง๋ณด์์ฑ๊ณผ ํ์ฅ์ฑ์ด ๋ ์ข์์ง ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์๊ณ , ์์ผ๋ก ๊ด๋ จ ๊ธฐ์ ์ ๋ ๊น์ด ๊ณต๋ถํด๋ณผ ๊ณํ์
๋๋ค.
ํนํ, ๋ฐฐํฌ์ ์คํจํ ๋๋ง๋ค ์๋ฒ ํ์ฅ๋ถ๊ป ๋๋ฌด ๋ง์ด ์์งํ๋ ์ ์ด ์์ฌ์์ผ๋ก ๋จ์์ต๋๋ค. ์ฒ์์๋ ๋ฐฐํฌ ๊ณผ์ ์ด ์ต์ํ์ง ์์ ๋ฌธ์ ํด๊ฒฐ์ ํ ๋๋ง๋ค ๋์์ ์์ฒญํ์ง๋ง, ์ด์ ๋ ์ค์ค๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ ์ญ๋์ ํค์์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์์ต๋๋ค. ๋ค์ ํ๋ก์ ํธ์์๋ CI/CD ๊ตฌ์ถ๋ถํฐ ๋ฐฐํฌ ์๋ํ๊น์ง ์ง์ ํด๋ณด๋ฉด์, ๋ฐฐํฌ ํ๊ฒฝ์ ์ข ๋ ์ํํ๊ฒ ์ด์ํ ์ ์๋๋ก ๊ฒฝํ์ ์๊ณ ์ถ์ต๋๋ค.
์์ผ๋ก๋ ๋ฐฐํฌ ๊ณผ์ ์์ ๋ฐ์ํ ์ ์๋ ๋ค์ํ ์ด์๋ค์ ์ง์ ํด๊ฒฐํด๋ณด๋ฉด์, AWS์ Docker, CI/CD ํ์ดํ๋ผ์ธ์ ๋ํ ์ดํด๋๋ฅผ ๋์ด๋ ๊ฒ์ด ์ ๋ชฉํ์
๋๋ค!
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ๋จ์ํ ๊ธฐ์ ์ ์ธ ์ฑ์ฅ๋ฟ๋ง ์๋๋ผ, ํ์
๋ฅ๋ ฅ๋ ํฌ๊ฒ ํฅ์๋์๊ณ , ํ ๋จ์ ํ๋ก์ ํธ์์๋ ๋ ํจ์จ์ ์ธ ํ์
์ ํ ์ ์๋ ์์ ๊ฐ์ด ์๊ฒผ์ต๋๋ค. ์์ผ๋ก๋ ์ด๋ฐ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ๋ ์ฑ์ฅํ๊ณ , ๋ ์ข์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด ๋๊ฐ๊ณ ์ถ์ต๋๋ค! ๐๐
๐ 4. ๋ง๋ฌด๋ฆฌ
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ๊ธฐ์ ์ ์ผ๋ก๋, ํ์
์ ์ผ๋ก๋ ํ ๋จ๊ณ ์ฑ์ฅํ ์ ์์๋ ๊ฐ์ง ๊ฒฝํ์ ํ์ต๋๋ค. ์ฒ์์๋ ๋ง์ฐํ ๋์ ์ฒ๋ผ ๋๊ปด์ก์ง๋ง, ํ์๋ค๊ณผ ํจ๊ป ๊ณ ๋ฏผํ๊ณ ํด๊ฒฐํด ๋๊ฐ๋ฉด์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ ๊ณผ์ ์์ฒด๊ฐ ๋๋ฌด๋๋ ๋ป๊น์์ต๋๋ค. ๋จ์ํ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๊ฒ์ ๋์ด์, ์ฌ์ฉ์ ๊ฒฝํ์ ๊ณ ๋ฏผํ๊ณ , ์๋น์ค ์ด์๊น์ง ๊ณ ๋ คํ๋ ๊ฐ๋ฐ์์ ์๊ฐ์ ํค์ธ ์ ์์๋ค๋ ์ ์ด ๊ฐ์ฅ ํฐ ๋ฐฐ์์ด์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ! 8๊ธฐ์์๋ ์คํ๋ง๋ถํธ๋ก ์ฐธ์ฌํ๊ฒ ๋ ๊ฒ ๊ฐ์์! ์ด๋ฒ์๋ Node.js๋ก ๋ฐฑ์๋๋ฅผ ๊ฒฝํํ์ผ๋, ๋ค์์๋ Spring Boot๋ฅผ ํ์ฉํด ๋ ๋ค์ํ ๊ธฐ์ ์คํ์ ์ตํ๊ณ ์ถ์ต๋๋ค. (ํ๋์ฉ ์ ๋ณตํด ๋๊ฐ๊ฒ ๋ค๋ ๋ค์ง! ๐ช๐ฅ)
์์ผ๋ก๋ ๋ ๋ง์ ํ๋ก์ ํธ๋ฅผ ๊ฒฝํํ๋ฉด์, ๋ ๋์ ๊ฐ๋ฐ์๋ก ์ฑ์ฅํด ๋๊ฐ๊ฒ ์ต๋๋ค! ์ฝ์ด์ฃผ์
์ ๊ฐ์ฌํฉ๋๋ค.

๐ ๋งํฌ ์ ๋ฆฌ
๐ฉ๊นํ๋ธ ๋งํฌ
https://github.com/UMC-Master
UMC-Master
UMC-Master has 3 repositories available. Follow their code on GitHub.
github.com
๐๋๋ฉ ํ์ด์ง
https://homemaster.qshop.ai/
HOME MASTER
1์ธ ๊ฐ๊ตฌ๋ฅผ ์ํ ๊ฟํ ๊ฐ์ด๋๋ถ
homemaster.qshop.ai
๐์ค๋ฐฐํฌ ์ฌ์ดํธ
https://www.hmaster.shop/
ํ๋ง์คํฐ
www.hmaster.shop
'{Project} > Extracurricular Project' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [์ฝ๋์ ๋ถ์คํธ] ๋ฐ๋ชจ๋ฐ์ด ์กฐ๊ฐ์ง ํ๋ก์ ํธ ํ๊ณ ๋ก (7) | 2024.09.15 |
|---|