Requirements - codestates/FilmStorage GitHub Wiki

ํ”„๋กœ์ ํŠธ ์š”๊ตฌ์‚ฌํ•ญ

Kick

  • ํ•„๋ฆ„ ์‚ฌ์ง„ ์ž…๋ฌธ์ž๋“ค์„ ์œ„ํ•œ ํ•„๋ฆ„ ์ถ”์ฒœ ์„œ๋น„์Šค

    • ์œ„์น˜, ๋‚ ์”จ ๊ธฐ๋ฐ˜ ํ•„๋ฆ„ ์ถ”์ฒœ
    • ํ•„๋ฆ„ ์ทจํ–ฅ ํ…Œ์ŠคํŠธ ๊ตฌํ˜„
  • ๊ฐค๋Ÿฌ๋ฆฌ ๋ฐ ๊ฒŒ์‹œํŒ์„ ํ†ตํ•œ ์œ ์ €๊ฐ„ ํ•„๋ฆ„ ์ •๋ณด ๊ณต์œ  ์„œ๋น„์Šค

Bare-Minimum Requirements

Front-End

  • ๋ฉ”์ธํŽ˜์ด์ง€

    • ์‚ฌ์ดํŠธ ์†Œ๊ฐœ๊ธ€
    • ํ•„๋ฆ„ ์ถ”์ฒœ ๋ฐ›์•„๋ณด๊ธฐ
      • ๋‚ ์”จ ์ •๋ณด๋ฅผ ํ†ตํ•ด ํ•„๋ฆ„ ์ถ”์ฒœ
      • ์ด๋‹ฌ์˜ ํ•„๋ฆ„(ํ•„๋ฆ„ ์‚ฌ์šฉ ๋นˆ๋„ ์ˆœ)
    • ์ทจํ–ฅ ํ…Œ์ŠคํŠธ๋กœ ์—ฐ๊ฒฐ
  • ํ•„๋ฆ„ ์ทจํ–ฅ ํ…Œ์ŠคํŠธ ํŽ˜์ด์ง€ ๊ตฌํ˜„

    • ์„ค๋ฌธ์กฐ์‚ฌ ํ˜•์‹
  • ์˜ค๋Š˜์˜ ํ•„๋ฆ„ (ํ•„๋ฆ„ ์ถ”์ฒœ ํŽ˜์ด์ง€)

    • ๋‚ ์”จ ์ •๋ณด์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ํ•„๋ฆ„ ์ถ”์ฒœ
  • ๊ฐค๋Ÿฌ๋ฆฌ ํŽ˜์ด์ง€

    • ์ด๋‹ฌ์˜ ์‚ฌ์ง„
    • ํšŒ์›๊ฐ€์ž… ์—†์ด ๊ฐ ๊ฐค๋Ÿฌ๋ฆฌ ์กฐํšŒ ๊ฐ€๋Šฅ
    • ๋ฌดํ•œ ์Šคํฌ๋กค๋กœ ๊ฐค๋Ÿฌ๋ฆฌ ๋ฆฌ์ŠคํŠธ ๋‚˜์—ด
    • ํ•„๋ฆ„ ๊ธฐ์ข…์— ๋”ฐ๋ฅธ ํ•„ํ„ฐ ๊ธฐ๋Šฅ
    • ๊ฐค๋Ÿฌ๋ฆฌ ์ข‹์•„์š” ๊ธฐ๋Šฅ
    • ๊ฐค๋Ÿฌ๋ฆฌ ์ž‘์„ฑ ๋ชจ๋‹ฌ ๊ตฌํ˜„
      • ์‚ฌ์ง„ ์˜ฌ๋ฆฌ๊ธฐ, ํ•„๋ฆ„ ์„ ํƒ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ๊ฒŒ์‹œํŒ ํŽ˜์ด์ง€

    • ํšŒ์›๊ฐ€์ž… ์—†์ด ๊ฐ ๊ฒŒ์‹œํŒ ์กฐํšŒ ๊ฐ€๋Šฅ
    • ๊ฒŒ์‹œํŒ ๋ฆฌ์ŠคํŠธ ํŽ˜์ด์ง€๋„ค์ด์…˜์œผ๋กœ ํ‘œํ˜„
    • ๊ฒŒ์‹œํŒ ๊ธ€ ์กฐํšŒ์ˆ˜ ํ‘œํ˜„
    • ๊ธ€์“ฐ๊ธฐ ๊ธฐ๋Šฅ
  • ๊ฐค๋Ÿฌ๋ฆฌ / ๊ฒŒ์‹œํŒ ์ƒ์„ธ ํŽ˜์ด์ง€

    • ๋“ฑ๋กํ•œ ์‚ฌ๋žŒ์— ํ•œํ•ด ๊ฐค๋Ÿฌ๋ฆฌ ์ˆ˜์ • ๋ฐ ์‚ญ์ œํ•˜๊ธฐ ํ‘œํ˜„
    • ๊ฒŒ์‹œํŒ ๊ธ€, ๊ฐค๋Ÿฌ๋ฆฌ ์กฐํšŒ์ˆ˜ ํ‘œํ˜„
    • ๋Œ“๊ธ€ ๊ธฐ๋Šฅ
  • ๊ฒŒ์‹œํŒ ์ž‘์„ฑ ํŽ˜์ด์ง€

    • ๋ง๋จธ๋ฆฌ, ์ œ๋ชฉ, ์ด๋ฏธ์ง€, ๋‚ด์šฉ ์ž…๋ ฅ ํ›„ ์ž‘์„ฑ
  • ๋งˆ์ด๊ฐค๋Ÿฌ๋ฆฌ ํŽ˜์ด์ง€

    • ์ž์‹ ์ด ์˜ฌ๋ฆฐ ์‚ฌ์ง„ ์กฐํšŒ ๋ฐ ์‚ญ์ œ ๊ฐ€๋Šฅ
  • ๋กœ๊ทธ์ธ / ๊ณ„์ • ๊ด€๋ฆฌ / ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€ ๊ตฌํ˜„

    • ํšŒ์›๊ฐ€์ž…, ํšŒ์›์ •๋ณด ์ˆ˜์ • ์‹œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๊ตฌํ˜„
    • ๋น„๋ฐ€๋ฒˆํ˜ธ ์ผ์น˜ ์—ฌ๋ถ€ ์ฒดํฌ
    • ์•ฝ๊ด€ ์ž‘์„ฑ

Back-End

  • ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ ๊ตฌํ˜„

    • ์ค‘๋ณต ๊ฒ€์‚ฌ ๊ธฐ๋Šฅ
    • ์ด๋ฉ”์ผ ์ธ์ฆ - ํšŒ์› ๊ฐ€์ž… ์‹œ ๊ฐ€์ž…ํ•˜๋ ค๋Š” ์ด๋ฉ”์ผ๋กœ ์ธ์ฆ ๋ฉ”์ผ ์ „์†ก
  • ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„

    • ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„
    • ์ด๋ฉ”์ผ ๋ฐ ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ถ„์‹ค
      • ์ด๋ฉ”์ผ ๋ถ„์‹ค - ๋‚˜๋จธ์ง€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ผ๋ถ€ ๋ชจ์ž์ดํฌ ์ฒ˜๋ฆฌ ํ›„ ์ด๋ฉ”์ผ ์ •๋ณด ๋ฐ˜ํ™˜
      • ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ถ„์‹ค - ์ด๋ฉ”์ผ ์ธ์ฆ ํ›„ ํ•ด๋‹น ์ด๋ฉ”์ผ๋กœ ์ผ๋ถ€ ๋ชจ์ž์ดํฌ ์ฒ˜๋ฆฌ ํ›„ ์ „์†ก
  • ๋กœ๊ทธ์•„์›ƒ ๋ฐ ํšŒ์› ํƒˆํ‡ด ๊ธฐ๋Šฅ ๊ตฌํ˜„

    • ํšŒ์› ํƒˆํ‡ด ์‹œ, ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๊ธ€์ด๋‚˜ ๊ฐค๋Ÿฌ๋ฆฌ ์™„์ „ ์‚ญ์ œ
  • ๋งˆ์ดํŽ˜์ด์ง€

    • ์œ ์ € ์ •๋ณด ์กฐํšŒ ๋ฐ ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ๊ด€๋ฆฌ์ž ๊ถŒํ•œ ๊ณ„์ • ๋งŒ๋“ค๊ธฐ

    • ์š•์„ค, ๋น„๋ฐฉ๊ธ€ ๋ฐ ๋ถ€์ ์ ˆํ•œ ์ปจํ…์ธ  ๊ธฐ์žฌ ์‹œ ์‚ญ์ œ ๊ถŒํ•œ
  • ํ†ต๊ณ„

    • ๊ฐค๋Ÿฌ๋ฆฌ
      • ์ฃผ ๋‹จ์œ„๋กœ ์ถ”์ฒœ ์ˆ˜์— ๋”ฐ๋ฅธ ์‚ฌ์ง„์„ DB์—์„œ ์กฐํšŒ ํ›„ ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌ
    • ๋ฉ”์ธํŽ˜์ด์ง€
      • ์ „์ฒด ํ•„๋ฆ„ ๋ฐ์ดํ„ฐ ์ค‘ ์นดํ…Œ๊ณ ๋ฆฌ ํ•ญ๋ชฉ์ด ๊ฐ€์žฅ ๋งŽ์€ ํ•„๋ฆ„ DB์—์„œ ์กฐํšŒ ํ›„ ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌ
  • ๊ฐค๋Ÿฌ๋ฆฌ CRUD

  • ๊ฒŒ์‹œํŒ CRUD ๋ฐ ํŽ˜์ด์ง€๋„ค์ด์…˜

  • ๊ฐค๋Ÿฌ๋ฆฌ / ๊ฒŒ์‹œํŒ ์ƒ์„ธ ํŽ˜์ด์ง€

    • ํ•„์š”ํ•œ ์ •๋ณด ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌ
    • ๋Œ“๊ธ€ ์ •๋ณด ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌ
  • ํ•„๋ฆ„ ํ…Œ์ŠคํŠธ ๊ตฌํ˜„

  • ๋‚ ์”จ API ์š”์ฒญ์œผ๋กœ ์œ ์ €์˜ ํ˜„์žฌ ์œ„์น˜ ๋ฐ ์‹œ๊ฐ„์— ๋งž์ถ˜ ํ•„๋ฆ„ ์ถ”์ฒœ ์ •๋ณด ๋ฐ˜ํ™˜

Advanced

  • ๋ฑƒ์ง€ ์ปฌ๋ ‰์…˜

    • ๋ฑƒ์ง€ ํŠน์ • ์ˆ˜๋Ÿ‰ ์ด์ƒ ์ˆ˜์ง‘ ์‹œ, ์ธํ™” ์ฟ ํฐ
    • ์ด๋‹ฌ์˜ ์‚ฌ์ง„
    • ์žฅ์†Œ ๊ณต์œ ์— ์˜ํ•œ ๋ฒ ๋„คํ•
    • ์‚ฌ์ง„ ๋ช‡ ์žฅ ์ด์ƒ ์˜ฌ๋ ธ์„ ๋•Œ, ๋ฑƒ์ง€ ์ˆ˜์—ฌ
  • ์ดฌ์˜ ์ŠคํŒŸ ๊ณต์œ  ํŽ˜์ด์ง€ ๊ตฌํ˜„

    • ์ง€๋„ API โ‡’ ํ•€์„ ์ด์šฉํ•ด ์žฅ์†Œ์— ๋Œ€ํ•œ ์ดฌ์˜ ๋นˆ๋„ ํ‘œํ˜„ (๋„ ๋‹จ์œ„)

Nightmare

  • ์ถœ์‚ฌ ๋ฐ ์Šค๋ƒ… ์ดฌ์˜ ๋งค์นญ ํŽ˜์ด์ง€ ๋ฐ ๊ธฐ๋Šฅ ๊ตฌํ˜„

    • ์ž‘๊ฐ€ / ๋ชจ๋ธ (Filmer / Filmodel) ๋งค์นญ
      • ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ… โ‡’ Filmer, Filmodel ์ง์ ‘ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ตฌํ˜„
      • ์„ฑ ๊ด€๋ จ ์ด์Šˆ ์—†์• ๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•
        • ์‹ค๋‚ด ์ดฌ์˜ ์ ˆ๋Œ€ ๊ธˆ์ง€
        • ์ž‘๊ฐ€ / ๋ชจ๋ธ ํ‰์  ๋ฐ ํ•œ์ค„ํ‰ ๋‚จ๊ธฐ๊ธฐ
    • ๋ธ”๋ž™๋ฆฌ์ŠคํŠธ ๊ตฌํ˜„
    • ๋น„๋ฐ€ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ
  • Front / Back TypeScript ๋ฆฌํŒฉํ† ๋ง