/walk-with-me

๐ŸŽพ ํ•จ๊ป˜ ์šด๋™ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ์„œ๋น„์Šค

Primary LanguageJavaScript

ํ•จ๊ป˜๊ฑธ์–ดYOU

ํ•จ๊ป˜ ์šด๋™ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

1. ์†Œ๊ฐœ

๐Ÿ”จ ๊ธฐ์ˆ  ์Šคํƒ

Frontend

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-01-29 แ„‹แ…ฉแ„’แ…ฎ 4 29 35

  • Context API, CSS Module, Styled-Components

Backend

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-02-26 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 10 14 14

  • Express, Mongoose

Database

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-01-29 แ„‹แ…ฉแ„’แ…ฎ 4 37 37

๐Ÿ” ์›น์„œ๋น„์Šค์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๊ฐœ์š”

๐ŸŽฏ Target

  • ๋‹ฌ๋ฆฌ๊ธฐ, ์ž์ „๊ฑฐ, ๊ฑท๊ธฐ ๋“ฑ ์šด๋™ ๊ฐ™์ด ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค
  • ํ˜ผ์ž์„œ๋Š” ๋Š˜ ์ž‘์‹ฌ์‚ผ์ผ์ธ ์‚ฌ๋žŒ๋“ค
  • ๊ฐ์ž์˜ ๊ฑด๊ฐ• ๊ด€๋ฆฌ ํŒ๊ณผ ์šด๋™ ํŒ์„ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค
  • ์šด๋™ํ•˜๊ธฐ ์ข‹์€ ์žฅ์†Œ๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค

๐Ÿ”Ž What

  • ๊ฐ™์ด ์šด๋™ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ๋“ค์„ ๋ชจ์ง‘ํ•˜๋Š” ์„œ๋น„์Šค
  • ๊ฐ™์€ ์ทจ๋ฏธ๋ฅผ ์ฆ๊ธฐ๋ฉด์„œ ์ข‹์€ ์‚ฌ๋žŒ๋“ค์„ ๋งŒ๋‚˜๋Š” ์„œ๋น„์Šค
  • ๊ฑด๊ฐ• ๊ด€๋ฆฌ ํŒ๊ณผ ์žฅ๋น„๋ฅผ ๊ณต์œ ํ•˜๋Š” ์„œ๋น„์Šค

๐Ÿ‘ How

  • ๋ชจ์ง‘๊ธ€์„ ์กฐํšŒ, ์ž‘์„ฑ, ์ˆ˜์ •, ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ชจ์ง‘๊ธ€์„ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋งˆ์Œ์— ๋“œ๋Š” ๋ชจ์ž„์— ์ฐธ๊ฐ€์‹ ์ฒญ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ชจ์ž„์žฅ์€ ์ฐธ๊ฐ€์‹ ์ฒญํ•œ ์‚ฌ๋žŒ๋“ค๊ณผ ๋ชจ์ž„์›๋“ค์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ชจ์ž„ ์žฅ์†Œ๋ฅผ ์ง€๋„๋ฅผ ํ†ตํ•ด ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ชจ์ž„์›๋“ค๋ผ๋ฆฌ ์ฑ„ํŒ…์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

โœ ์œ ์ € ์‹œ๋‚˜๋ฆฌ์˜ค

Persona
  • ๊น€๊ฐ€์žฅ
    • 34์„ธ, ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž.
    • ๋น„๋งŒ, ์ตœ๊ทผ ์˜์‚ฌ์—๊ฒŒ ์šด๋™์„ ํ•˜๋ผ๋Š” ์ง„๋‹จ์„ ๋ฐ›์Œ.
    • ์šด๋™ ํ•ด์•ผ์ง€ ์ƒ๊ฐ์€ ํ•˜๋Š”๋ฐ ์‹ค์ฒœ์„ ํ•˜์ง€ ๋ชปํ•จ.
Needs
  • ์šด๋™์„ ๊พธ์ค€ํžˆ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ฐ™์ด ํ•  ์‚ฌ๋žŒ์ด ํ•„์š”ํ•จ.
  • ์šด๋™์„ ์–ด๋–ป๊ฒŒ ์‹œ์ž‘ํ•ด์•ผ ํ• ์ง€ ๋ง‰๋ง‰ํ•จ.
  • ๋™๋„ค์— ์šด๋™ํ•˜๊ธฐ ์ข‹์€ ์žฅ์†Œ๋ฅผ ์ฐพ๊ณ  ์‹ถ์Œ.
Scenario

๊น€๊ฐ€์žฅ์€ ๋น„๋งŒ์ด๋‹ค. ์ตœ๊ทผ์— ๋ชธ์ด ์•ˆ ์ข‹์•„์ ธ ๋ณ‘์›์— ๊ฐ”๋Š”๋ฐ, ๊ฐ„์ด ์•ˆ ์ข‹๋‹ค๋Š” ์ง„๋ฃŒ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›๊ฒŒ ๋˜์—ˆ๋‹ค. ์˜์‚ฌ๋Š” ์šด๋™์„ ํ•˜๋ผ๊ณ  ๊ถŒ์œ ํ–ˆ๋‹ค.

๋ง‰์ƒ ์šด๋™์„ ์‹œ์ž‘ํ•˜๋ ค๋‹ˆ ์–ด๋–ค ๊ฒƒ๋ถ€ํ„ฐ ๋จผ์ €ํ•ด์•ผ ํ• ์ง€ ๊ฐ์ด ์žกํžˆ์งˆ ์•Š์•˜๋‹ค. ๋˜ํ•œ ์—ฌํƒœ๊นŒ์ง€ ์šด๋™์„ ๊พธ์ค€ํžˆ ํ•ด๋ณด๋ ค ํ–ˆ์œผ๋‚˜ ์–ผ๋งˆ ๊ฐ€์ง€ ๋ชป ํ–ˆ๋‹ค. ๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด โ€˜ํ•จ๊ป˜๊ฑธ์–ดYOUโ€™ ์•ฑ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๊ณ , ์ด ์•ฑ์„ ํ†ตํ•ด ์šด๋™ ๋ชจ์ž„์„ ์ฃผ๊ธฐ์ ์œผ๋กœ ๊ฐ€์ง€๋ฉฐ ๊พธ์ค€ํžˆ ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

๊น€๊ฐ€์žฅ์€ ๊ฐ€๋ฒผ์šด ์šด๋™๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ณ  ์‹ถ์–ด ๊ฑท๊ธฐ ์šด๋™์„ ์„ ํƒํ–ˆ๋‹ค. ์†Œ๋ชจ์ž„ ๊ทธ๋ฃน์„ ์ฐพ์•„๋ณด๋‹ค ์ž์‹ ์˜ ์ง‘๊ณผ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ณณ์—์„œ ๋ชจ์ž„์„ ๊ฐ€์ง€๋Š” ๊ฑท๊ธฐ ๊ทธ๋ฃน์— ๊ฐ€์ž…ํ–ˆ๋‹ค.

๋งค์ฃผ ์ฃผ๋ง๋งˆ๋‹ค ๊ฑท๊ธฐ ๋ชจ์ž„์— ์ฐธ์—ฌํ•ด ์ข‹์€ ์‚ฌ๋žŒ๋“ค์„ ๋งŒ๋‚˜๊ณ  ๊ฑด๊ฐ• ๊ด€๋ฆฌ ํŒ์„ ๊ณต์œ ํ•˜๊ณ  ๊ฑท๊ธฐ ์ž์„ธ์™€ ์šด๋™ํ™” ๊ฐ™์€ ์žฅ๋น„๋ฅผ ์ถ”์ฒœ ๋ฐ›์•˜๋‹ค. ํ˜ผ์ž์„œ๋Š” ๋ˆ๊ธฐ์žˆ๊ฒŒ ํ•˜์ง€ ๋ชปํ–ˆ๋Š”๋ฐ, ์‚ฌ๋žŒ๋“ค๊ณผ ๊ฐ™์ด ํ•˜๋‹ˆ ์šด๋™์„ ๊พธ์ค€ํžˆ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

์ด ์•ฑ์„ ์‚ฌ์šฉํ•œ ๊น€๊ฐ€์žฅ์€ ์‚ด์„ ๋นผ๊ณ  ๊ฑด๊ฐ•์„ ๋˜์ฐพ์„ ์ˆ˜ ์žˆ์—ˆ๊ณ , ์ข‹์€ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ด€๊ณ„๋ฅผ ๋งบ์–ด ์กฐ๊ธˆ ๋” ํ™œ๋ ฅ์žˆ๋Š” ์‚ถ์„ ์‚ด๊ฒŒ ๋˜์—ˆ๋‹ค.


2. ์„œ๋น„์Šค ์ฃผ์š” ๊ธฐ๋Šฅ ์„ค๋ช…

๋ฉ”์ธ ๊ธฐ๋Šฅ

  1. ๋ชจ์ž„ ๋งŒ๋“ค๊ธฐ ๋ฐ ๋ชจ์ง‘

    ๋ชจ์ž„์„ ๋งŒ๋“ค์–ด ๋ชจ์ž„์žฅ์ด ๋˜๊ฑฐ๋‚˜ ๋งˆ์Œ์— ๋“œ๋Š” ๋ชจ์ž„์— ๊ฐ€์ž… ์‹ ์ฒญ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (๋‹จ, ๋ชจ์ž„์žฅ์ด ์ˆ˜๋ฝ์„ ํ•ด์•ผ ๋ชจ์ž„์›์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.)
  2. ๋ชจ์ž„ ์œ„์น˜ ์ง€๋„์— ํ‘œ์‹œ

    ์ง€๋„๋ฅผ ํ†ตํ•ด ๋ชจ์ž„ ์œ„์น˜๋ฅผ ํ•œ ๋ˆˆ์— ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ๋ชจ์ž„์› ๊ด€๋ฆฌ

    ์ฐธ๊ฐ€ ์‹ ์ฒญํ•œ ์‚ฌ๋žŒ์„ ์ˆ˜๋ฝ ๋˜๋Š” ๊ฑฐ์ ˆํ•˜๊ฑฐ๋‚˜ ๋ชจ์ž„์›์„ ํ‡ด์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์ฑ„ํŒ…

    ๋ชจ์ž„์— ๊ฐ€์ž…๋œ ์‚ฌ๋žŒ๋“ค๋ผ๋ฆฌ ์ฑ„ํŒ…์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์„œ๋ธŒ ๊ธฐ๋Šฅ

  1. ์ข‹์•„์š”

    ๊ด€์‹ฌ์žˆ๋Š” ๋ชจ์ž„์— ๊ด€์‹ฌ์„ ๋“ฑ๋กํ•˜๊ฑฐ๋‚˜ ํ•ด์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ํ•„ํ„ฐ๋ง

    ์›ํ•˜๋Š” ๋ชจ์ž„์„ ๋น ๋ฅด๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. ํ”„๋กœ์ ํŠธ ๊ตฌ์„ฑ๋„


4. ํ”„๋กœ์ ํŠธ ํŒ€์› ์—ญํ•  ๋ถ„๋‹ด

  • ํŒ€์žฅ : ์ตœ๋ฌธ๊ฒฝ
  • ํŒ€์› : ๊น€์šฉ๊ทœ, ์ด์œคํ•™, ์ด์ง€์œค, ์ •ํ•˜๋‚˜
  • ๋ชจ๋“  ํŒ€์›์ด ๊ธฐํš, ํ”„๋ก ํŠธ์—”๋“œ, ๋ฐฑ์—”๋“œ๋ฅผ ํ•จ๊ป˜ ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋ก ํŠธ์—”๋“œ

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

๋ฐฑ์—”๋“œ

์ด๋ฆ„ ๋‹ด๋‹น API
๊น€์šฉ๊ทœ ๋ชจ์ž„ ํƒˆํ‡ด, ๋ชจ์ง‘๊ธ€ ์ž‘์„ฑ, ๋ชจ์ง‘๊ธ€ ๊ด€์‹ฌ ํ•ด์ œ, ๋ชจ์ง‘๊ธ€ ๊ฐ€์ž… ์‹ ์ฒญ ๊ฑฐ์ ˆ
์ด์œคํ•™ ํšŒ์›๊ฐ€์ž…, ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ, ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ, ์ด๋ฏธ์ง€, ์ฑ„ํŒ…, ํšŒ์›์ •๋ณด ๋“ฑ๋ก, ํšŒ์›์ •๋ณด ์กฐํšŒ, ๋น„๋ฐ€๋ฒˆํ˜ธ ๋ณ€๊ฒฝ
์ด์ง€์œค ๋ชจ์ง‘๊ธ€ ์ˆ˜์ •, ๋ชจ์ง‘๊ธ€ ๊ด€์‹ฌ ๋“ฑ๋ก, ๋ชจ์ง‘๊ธ€ ํšŒ์› ํ‡ด์ถœ, ์ฑ„ํŒ…
์ •ํ•˜๋‚˜ ๊ตฌ๊ธ€ ๋กœ๊ทธ์ธ, ์นด์นด์˜ค ๋กœ๊ทธ์ธ, ์ฑ„ํŒ…
์ตœ๋ฌธ๊ฒฝ ์ด๋ฏธ์ง€, ๋ชจ์ง‘๊ธ€ ์ˆ˜์ •, ๋ชจ์ง‘๊ธ€ ์กฐํšŒ, ๋ชจ์ง‘๊ธ€ ๋ชฉ๋ก, ๋ชจ์ง‘๊ธ€ ์‚ญ์ œ, ๋ชจ์ง‘๊ธ€ ๊ฐ€์ž… ์‹ ์ฒญ ์ˆ˜๋ฝ, ์ฑ„ํŒ…

5. ๋ฌธ์„œ