[ํ”„๋กœ์ ํŠธ] ํŒŒ์ด๋„ ํ”„๋กœ์ ํŠธ ํšŒ๊ณ 

2024. 12. 2. 15:53ใ†์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

๐Ÿงถ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

5๊ฐœ์˜ ์นดํ…Œ๊ณ ๋ฆฌ๋กœ ์ด๋ฃจ์–ด์ง„ ์†Œํ†ต ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค

๋ฐฑ: https://github.com/ehddk/final_backend

 

GitHub - ehddk/final_backend

Contribute to ehddk/final_backend development by creating an account on GitHub.

github.com

ํ”„๋ก ํŠธ: https://github.com/Yu-Kyeong-Seok/final-front

 

GitHub - Yu-Kyeong-Seok/final-front

Contribute to Yu-Kyeong-Seok/final-front development by creating an account on GitHub.

github.com

 

 

 

๐Ÿšฉํ”„๋กœ์ ํŠธ ์„ค๋ช…

 ์‡ผํ•‘๋ชฐ ๋งˆ์ผ“์ปฌ๋ฆฌ์™€ ๋น„์Šทํ•œ ์ปค๋จธ์Šค๋ฅผ ์ฃผ์ œ๋กœ ํ•œ ํŒŒ์ด๋„ ํ”„๋กœ์ ํŠธ

 ์ปค๋จธ์Šค์˜ ๊ธฐ๋ณธ์ ์ธ CRUD ๊ตฌํ˜„๊ณผ next.js๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ !

 

๐Ÿ—“๏ธ ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„

2024.11.04 ~ 2024.11.25 (ํœด์ผ/๊ณตํœด์ผ์„ ์ œ์™ธํ•˜๋ฉด 16์ผ)

 

๐Ÿ’ป ๊ธฐ์ˆ  ์Šคํƒ

HTML,  CSS, JS, Typescript, Next.js, Node.js , MongoDB

 

๐Ÿ’ฌ ํ˜‘์—… ํˆด

Github, notion , postman,  Figma, Google slide ,Discord ,Gather

 

๐Ÿ’ป ๋‹ด๋‹น ๊ตฌํ˜„ ๊ธฐ๋Šฅ

<๋ฐฑ์—”๋“œ&ํ”„๋ก ํŠธ>

  • ์ƒํ’ˆ API

  ์ƒํ’ˆ ๋“ฑ๋ก,์‚ญ์ œ,์ˆ˜์ •, ๋ชฉ๋ก ์กฐํšŒ, ์ƒ์„ธ ์กฐํšŒ, ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„ ์กฐํšŒ

  • ๋ฐฐ์†ก์ง€ API
    : (ํ•ด๋‹น ์‚ฌ์šฉ์ž์˜)๋ฐฐ์†ก์ง€ ๋“ฑ๋ก, ๋ฐฐ์†ก์ง€ ์ˆ˜์ •, ๋ฐฐ์†ก์ง€ ์‚ญ์ œ, ๋ฐฐ์†ก์ง€ ๋ชฉ๋ก ์กฐํšŒ, ๋ฐฐ์†ก์ง€ ์ƒ์„ธ ์กฐํšŒ
  • ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ๋ฐ ํ”„๋ก ํŠธ ์ž‘์—…

 

 

๐Ÿ“Œ ํšŒ๊ณ 

  • Keep( ์ข‹์•˜๋˜ ์ )

1. ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์ดํ•ด

 

  ์ผ์ƒ์—์„œ๋Š” ์•„๋ฌด์ƒ๊ฐ ์—†์ด  ์ด์šฉํ•˜๋˜ ์‡ผํ•‘๋ชฐ ์„œ๋น„์Šค์— ์ •์ฑ…๋“ค์ด ๋งŽ์ด ๋‚ดํฌ๋˜์–ด์žˆ์–ด ๊ณ ๋ คํ•ด์•ผํ•  ์ ์ด ๋งŽ๋‹ค๋Š” ๊ฒƒ์„ ์ด๋ฒˆ ๊ธฐํšŒ์— ๊นจ๋‹ฌ์•˜๋‹ค.

  ์ด์ „ ํ”„๋กœ์ ํŠธ์™€๋Š” ๋‹ค๋ฅธ ์š”๊ตฌ์‚ฌํ•ญ์„ ํ•ด๊ฒฐํ•˜๋ฉด์„œ ์–ด๋–ป๊ฒŒ ์‚ฌ๊ณ ํ•˜๋А๋ƒ์— ๋”ฐ๋ผ ์‹ค์ œ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ถˆํŽธํ•จ ํ˜น์€ ํŽธํ•จ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๊ตฌ๋‚˜๋ฅผ ๋ชธ์†Œ    ๋А๊ผˆ๋‹ค. ๋˜ํ•œ ์ปค๋จธ์Šค ์„œ๋น„์Šค๋ฅผ ๊ฐœ๋ฐœํ•ด๋ณด์‹  ๋ฉ˜ํ† ๋‹˜์˜ ์กฐ์–ธ์„ ๋“ค์œผ๋ฉด์„œ ๋””ํ…Œ์ผํ•œ ๋กœ์ง์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์—ˆ๊ณ , ๋ฐฑ์—”๋“œ ํŒ€์›๋“ค๊ณผ๋„ ์ข€ ๋” ๊ผผ๊ผผํ•˜    ๊ฒŒ API ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค. 

 

2. ์—ญํ•  ๋ถ„๋ฆฌ 

 

  ์ €๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํ•œ ์‚ฌ๋žŒ๋‹น ํ•œ ๋„๋ฉ”์ธ์„ ๋งก์•„์„œ ํ”„๋ก ํŠธ, API ์ž‘์—…๊นŒ์ง€ ํ–ˆ์—ˆ๋Š”๋ฐ ์ด๋ฒˆ์—๋Š” ํ”„๋ก ํŠธ ํŒ€๊ณผ ๋ฐฑ์—”๋“œ ํŒ€์„ ์•„์˜ˆ ๋ถ„๋ฆฌํ•˜์—ฌ ์‹œ์ž‘

  ํ–ˆ๋‹ค. ํ”„๋ก ํŠธํŒ€์ด ๋งˆํฌ์—… ์ž‘์—…์„ ํ•  ๋™์•ˆ ๋ฐฑ์—”๋“œ๋Š” ๊ด€๋ จ API ๊ฐœ๋ฐœ ์ž‘์—…์„ ์‹œ์ž‘ํ•˜์—ฌ 1์ฐจ ์™„์„ฑ ํ›„์— ํ”„๋ก ํŠธํŒ€์—๊ฒŒ API ๋ฌธ์„œ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์—ฐ๋™    ์„ ์‹œ์ž‘ํ•˜์˜€๋‹ค. ์ด๋ ‡๊ฒŒ ๋ถ„๋ฆฌํ•ด์„œ ์ž‘์—…ํ•˜๋‹ˆ  ์ข€ ๋” API ๊ฐœ๋ฐœ์— ์ง‘์ค‘ํ•˜์—ฌ ํšŒ์˜ํ• ๋•Œ๋„ ์–ด๋– ํ•œ ์—๋Ÿฌ ํ˜น์€ ์ถ”๊ฐ€์‚ฌํ•ญ์ด ์žˆ์„ ์‹œ ๋ฐ”๋กœ๋ฐ”๋กœ ์ปจํƒ์ด    ๊ฐ€๋Šฅํ•ด ์ˆ˜์›”ํ–ˆ๋‹ค. ๊ทธ๋ž˜์„œ 1์ฐจ API ์™„์„ฑ์„ ํ•œ์ฃผ ๋ฐ˜์œผ๋กœ ์žก๊ณ  2์ฃผ์ฐจ~3์ฃผ์ฐจ ์ดˆ๋•Œ ํ”„๋ก ํŠธ์™€ ์—ฐ๋™์„ ๊ณ„ํš๋Œ€๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

  ๋˜ํ•œ ์ฒ˜์Œ์œผ๋กœ API ๋ฌธ์„œ๋„ ์ž‘์„ฑํ•ด๋ณด๋ฉด์„œ ํ”„๋ก ํŠธํŒ€์—๊ฒŒ  '๋ฐ์ดํ„ฐ๊ฐ€ ํ•œ๊ฐœ ์ผ๋•Œ์™€ ์—ฌ๋Ÿฌ๊ฐœ์ผ๋•Œ json ๊ตฌ์กฐ๊ฐ€ ์–ด๋–ค์ง€๋„ ์ œ๊ณตํ•˜๋ฉด ๋” ์ข‹์•˜๊ฒ ๋‹ค'      ๋ผ๋Š” ๊นจ๋‹ฌ์Œ๋„ ์–ป์—ˆ๋‹ค.  ํ”„๋ก ํŠธ์™€ ๋ฐฑ์—”๋“œ ๊ฐ„์˜ ํ˜‘์—…์„ ์ œ๋Œ€๋กœ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ธฐํšŒ์˜€๋‹ค.

 

  •  Problem(์–ด๋ ค์› ๋˜ ์ )

  ํ•œ ์œ ์ €์— ์—ฌ๋Ÿฌ ID(์žฅ๋ฐ”๊ตฌ๋‹ˆ,์ฃผ๋ฌธ)๊ฐ€ ์–ฝํ˜€์žˆ์–ด ํ…Œ์ŠคํŠธํ•˜๊ณ  ์—ฐ๋™ํ•˜๋Š” ๋ถ€๋ถ„์—์„œ ์‹œํ–‰์ฐฉ์˜ค๊ฐ€ ๋งŽ์•˜๋‹ค.

  ์žฅ๋ฐ”๊ตฌ๋‹ˆ๊ฐ€ ๋น„์–ด์žˆ์œผ๋ฉด ๊ฐ‘์ž๊ธฐ ์œ ์ € ํ”„๋กœํ•„ ๋ถ€๋ถ„์—์„œ ์ƒ์„ธ ์กฐํšŒ๊ฐ€ ์•ˆ๋œ๋‹ค๋˜์ง€, ๋ฐฐ์†ก์ง€๊ฐ€ ์•ˆ๋ณด์ธ๋‹ค๋˜์ง€ ๋“ฑ๋“ฑ joinํ•˜๋Š” ๋ถ€๋ถ„์—์„œ 

  ๊ณ„์† ์ˆ˜์ •์— ์ˆ˜์ • ๋ฐ˜๋ณต์ด์˜€๋‹ค ๐Ÿฅน

 

 

  • Try(์‹œ๋„ํ•  ์ )
  1. ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ์ž‘์—…

  ๊ฐ๊ฐ ๊ด€๋ฆฌ์ž๋ถ€๋ถ„ API๋„ ๋งŒ๋“ค์–ด๋’€์ง€๋งŒ ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€๋ฅผ ๋ณ„๋„๋กœ ๋งŒ๋“ค๊ธฐ์—๋Š” ์‹œ๊ฐ„์—ฌ์œ ๊ฐ€ ์—†์—ˆ๊ธฐ์— ์†Œ๋น„์ž๊ฐ€ ์•„๋‹Œ ํŒ๋งค์ž๋ฅผ ํƒ€๊ฒŸ์œผ๋กœ ํ•œ ๊ด€๋ฆฌ

  ์ž ํŽ˜์ด์ง€๋„ ๋„์ž…ํ•˜๋ฉด ๋” ํ€„๋ฆฌํ‹ฐ ์žˆ๋Š” ์ž‘์—…์ด ๋˜์—ˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

 

    2.์†Œ์…œ ๋กœ๊ทธ์ธ ๋„์ž…

 

  ์ฒ˜์Œ์— MVP๋ฅผ ์žก์•˜์„๋•Œ ์†Œ์…œ๋กœ๊ทธ์ธ์€ 3์ฐจ๋กœ ์žก์•„๋’€๊ธฐ์— ๋‹ค์–‘ํ•œ ์†Œ์…œ ๋กœ๊ทธ์ธ(์˜ˆ: ์นด์นด์˜ค ๋“ฑ)์„ ๊ตฌํ˜„ํ•ด ์‚ฌ์šฉ์ž์˜ ์ ‘๊ทผ์„ฑ์„ ๋†’์ด๋Š” ๋ฐฉ์‹ ๋„ 

  ์ž…์„ ํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

 

  3. ๊ฒฐ์ œ ์‹œ์Šคํ…œ API ์—ฐ๋™

  ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์ง์ ‘์ ์œผ๋กœ ๊ฒฐ์ œ๊ฐ€ ์ด๋ค„์ง€๋Š” ์‡ผํ•‘๋ชฐ์€ ์•„๋‹ˆ๊ธฐ์— ๊ตฌ๋งคํ•˜๊ธฐ๋ฅผ ํ•˜๋ฉด ์ฃผ๋ฌธ ์ •๋ณด์— ํ•ด๋‹น ๋‚ด์šฉ์ด ๋‹ด๊ฒจ์ ธ์˜ค๋Š” ํ˜•์‹์œผ๋กœ๋งŒ      ๊ตฌํ˜„์„ ํ•ด๋†“์•˜๋Š”๋ฐ ํฌํŠธ์›(Payments API) ๋“ฑ์„ ํ™œ์šฉํ•ด ๊ตฌํ˜„ํ•˜๋ฉด ์™„์ „ํ•œ ์ปค๋จธ์Šค ์„œ๋น„์Šค๊ฐ€ ์™„์„ฑ๋  ๊ฒƒ ๊ฐ™๋‹ค.