GiantStepDEV

์•ˆ๋…•ํ•˜์„ธ์š”.

 

๊ฐœ์ธ์ ์ธ ์‹œ๊ฐ„์ด ์กฐ๊ธˆ ์ƒ๊ฒจ์„œ ๋ณธ์—…ํ•˜๋ฉด์„œ ํ˜ผ์ž ๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž๋ผ๋ฉด ์‘๋‹น..๊ฐœ์ธ ํ”„์  ํ•˜๋‚˜์ฏค์€ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š”๊ฒŒ ์ œ ์ƒ๊ฐ์ธ๋ฐ..์‹ค์ฒœ๊นŒ์ง€ ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ ธ๋„ค์š”^^;

 

์ฃผ์ œ๋ฅผ ๋ญ๋กœ ํ• ๊นŒ ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ–ˆ๋Š”๋ฐ์š”.

์˜ํ™”/๋“œ๋ผ๋งˆ ํ‰์  ๊ธฐ๋กํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค!

ex. ์™“์ฑ ํ”ผ๋””์•„

 

๋„ˆ๋ฌด ๋ป”ํ•˜๋‹ค๊ตฌ์š”?

๋งž์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ Vue3, TypeScript ๊ณต๋ถ€๊ฐ€ ๋ชฉ์ ์ธ์ง€๋ผ ๊ฐ„๋‹จํ•˜๋ฉด์„œ ์ œ๊ฐ€ ๊ด€์‹ฌ์žˆ๋Š”๊ฑธ ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.ใ…Žใ…Ž

 

์ด๋ฒˆ ๊ธ€์€ ๊ฐ„๋‹จํžˆ ๊ธฐํš/๊ฐœ์š”๋งŒ ์ž‘์„ฑํ•ด๋†“๊ณ 

๋‚ด์ผ๋ถ€ํ„ฐ ์„ค๊ณ„ ๋ฐ ui ๋ ˆ์ด์•„์›ƒ ์„ค์ •ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

๊ฐ„๋งŒ์— ํ˜ผ์ž ํ•˜๋ ค๋‹ˆ๊นŒ ์ƒ๊ฐ์ด ์•ˆ๋‚˜๊ณ  ๋ง‰๋ง‰ํ•œ๋ฐ ํ˜ผ์ž A to Z ํ•  ์ƒ๊ฐ์— ์กฐ๊ธˆ์€ ์„ค๋ ˆ๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

๋ถ€๋”” ์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ฌด์‚ฌํžˆ ๋๋‚˜๊ธธ ๋ฐ”๋ผ๋ฉฐ..์‹œ์ž‘ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.


ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

  • ์ด๋ฆ„: ํŒ์ฝ˜๋กœ๊ทธ
  • ๋ชฉ์ : ์‚ฌ์šฉ์ž๊ฐ€ ๋ณธ ์˜ํ™”/๋“œ๋ผ๋งˆ๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ์•ฑ.
  • ๊ธฐ๋Šฅ:
    • ์˜ํ™”/๋“œ๋ผ๋งˆ ๊ฒ€์ƒ‰ ๋ฐ ์ธ๊ธฐ ์ž‘ํ’ˆ ์กฐํšŒ
    • ํ‰๊ฐ€(๋ณ„์  ๋ฐ ๋ฆฌ๋ทฐ ์ž‘์„ฑ)
    • ๊ฐœ์ธ ํ†ต๊ณ„(ํ‰๊ฐ€ํ•œ ์ž‘ํ’ˆ ์ˆ˜, ์ตœ๊ณ  ํ‰์  ์ž‘ํ’ˆ ๋“ฑ)
    • ํ•„ํ„ฐ ๋ฐ ์ •๋ ฌ ๊ธฐ๋Šฅ(์žฅ๋ฅด, ํ‰์  ๋“ฑ)
    • ์‚ฌ์šฉ์ž ์ธ์ฆ(๋กœ๊ทธ์ธ/ํšŒ์›๊ฐ€์ž…)

๊ธฐ์ˆ  ์Šคํƒ

  • ํ”„๋ก ํŠธ์—”๋“œ: Vue 3 + TypeScript
  • ๋ฐฑ์—”๋“œ: Spring Boot
  • DB: MySQL
  • ์™ธ๋ถ€ API: TMDB API

๊ธฐ๋Šฅ ์ƒ์„ธ

1. ์‚ฌ์šฉ์ž ์ธ์ฆ ๋ฐ ํ”„๋กœํ•„

  • Spring Security๋กœ ์‚ฌ์šฉ์ž ์ธ์ฆ ์ฒ˜๋ฆฌ
  • JWT ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ
  • ํ”„๋กœํ•„ ์‚ฌ์ง„ ์—…๋กœ๋“œ ๋ฐ ๊ด€๋ฆฌ

2. ์ž‘ํ’ˆ ๊ฒ€์ƒ‰

  • TMDB API๋ฅผ ํ™œ์šฉํ•ด ์˜ํ™”/๋“œ๋ผ๋งˆ๋ฅผ ๊ฒ€์ƒ‰
  • ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์—์„œ ์ž‘ํ’ˆ ์„ ํƒ ํ›„ ์‚ฌ์šฉ์ž ์ปฌ๋ ‰์…˜์— ์ถ”๊ฐ€

3. ํ‰๊ฐ€ ๋ฐ ๊ธฐ๋ก

  • ๋ณ„์ (0~5์ ) ๋ฐ ๋ฆฌ๋ทฐ ์ž‘์„ฑ
  • ์‹œ์ฒญ ๋‚ ์งœ ๊ธฐ๋ก
  • ์‹œ์ฒญ ์ƒํƒœ(๋ณธ ์ž‘ํ’ˆ, ๋ณด๊ณ  ์‹ถ์€ ์ž‘ํ’ˆ) ๊ด€๋ฆฌ

4. ์ปฌ๋ ‰์…˜ ๊ด€๋ฆฌ

  • ๋‚ด๊ฐ€ ํ‰๊ฐ€ํ•œ ์ž‘ํ’ˆ ๋ฆฌ์ŠคํŠธ ๋ณด๊ธฐ
  • ์žฅ๋ฅด, ํ‰์ , ์‹œ์ฒญ ์ƒํƒœ๋ณ„ ํ•„ํ„ฐ๋ง
  • ์ตœ๊ทผ ๊ธฐ๋ก ์ˆœ/ํ‰์  ์ˆœ/์•ŒํŒŒ๋ฒณ ์ˆœ ์ •๋ ฌ

5. ํ†ต๊ณ„ ๋Œ€์‹œ๋ณด๋“œ

  • ๋‚ด๊ฐ€ ํ‰๊ฐ€ํ•œ ์ž‘ํ’ˆ ๊ฐœ์ˆ˜
  • ํ‰๊ท  ํ‰์ 
  • ์ตœ๊ณ  ํ‰์  ์ž‘ํ’ˆ, ์ตœ์ € ํ‰์  ์ž‘ํ’ˆ
  • ์žฅ๋ฅด๋ณ„ ํ‰๊ฐ€ ํ†ต๊ณ„(์˜ˆ: ์•ก์…˜, ๋กœ๋งจ์Šค ๋“ฑ)

ํŽ˜์ด์ง€ ๊ตฌ์„ฑ

1. ๋ฉ”์ธ

  • ์ธ๊ธฐ ์˜ํ™”/๋“œ๋ผ๋งˆ ์Šฌ๋ผ์ด๋“œ ์‡ผ
  • ์ตœ๊ทผ ์ถ”๊ฐ€๋œ ์ž‘ํ’ˆ ๋ฆฌ์ŠคํŠธ

2. ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€

  • ๊ฒ€์ƒ‰ ๋ฐ” ๋ฐ ๊ฒฐ๊ณผ ๋ฆฌ์ŠคํŠธ
  • ์ž‘ํ’ˆ ํด๋ฆญ ์‹œ ์ƒ์„ธ ํŽ˜์ด์ง€ ์ด๋™

3. ์ž‘ํ’ˆ ์ƒ์„ธ ํŽ˜์ด์ง€

  • ์ž‘ํ’ˆ ์ •๋ณด(TMDB API ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜)
  • ์‚ฌ์šฉ์ž ๋ฆฌ๋ทฐ ๋ฐ ๋ณ„์  ํ‘œ์‹œ
  • ์‹œ์ฒญ ์ƒํƒœ์™€ ๋ณ„์ /๋ฆฌ๋ทฐ ์ถ”๊ฐ€ ๋ฒ„ํŠผ

4. ํ†ต๊ณ„ ํŽ˜์ด์ง€

  • ์‚ฌ์šฉ์ž ํ‰๊ฐ€ ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”
  • Chart.js๋ฅผ ํ™œ์šฉํ•ด ๊ทธ๋ž˜ํ”„ ํ‘œ์‹œ

5. ํ”„๋กœํ•„ ํŽ˜์ด์ง€

  • ๊ฐœ์ธ ์ •๋ณด ๊ด€๋ฆฌ(์ด๋ฆ„, ์ด๋ฉ”์ผ ๋“ฑ)
  • ๋‚ด๊ฐ€ ํ‰๊ฐ€ํ•œ ์ž‘ํ’ˆ ๋ฆฌ์ŠคํŠธ
profile

GiantStepDEV

@kongmi

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!