Skip to content

๐Ÿ“ ์‚ฌ์ „ ์ž‘์—… ํšŒ์˜ (์ž‘์„ฑ์ผ : 2024 11 04)

Hyein Jeong edited this page Nov 5, 2024 · 3 revisions
  • ๋ถ„๋ฅ˜: ์ •๊ทœ ํšŒ์˜
  • ์ƒ์„ฑ ์ผ์‹œ: 2024๋…„ 11์›” 4์ผ ์˜ค์ „ 10:22
  • ์„ ํƒ: ํšŒ์˜๋ก

๐Ÿ“ย ์ •๋ฆฌ์ž๋ฃŒ

โš™๏ธ ํ™˜๊ฒฝ์„ค์ • ๊ด€๋ จ ์ •๋ฆฌ

๐Ÿ“ย ํšŒ์˜ ์•ˆ๊ฑด

๐Ÿง‘โ€๐Ÿ’ปย 1๋ฒˆ ์•ˆ๊ฑด (์‹์‚ฌ ์ „)

  • ์ฝ”์–ด์‹œ๊ฐ„ ๋ฐ MH ๋…ผ์˜
  • PR ์กฐ๊ฑด์— ๋Œ€ํ•ด์„œ ์žฌ๋…ผ์˜
  • ์ฝ”๋“œ๋ฆฌ๋ทฐ์— ๋Œ€ํ•ด์„œ๋„ ์žฌ๋…ผ์˜
  • ๋ฌธ์„œํ™” โ†’ ๊ธฐ์ˆ ์ ์ธ ๋‚ด์šฉ์ด ๋“ค์–ด๊ฐ€๋Š”๋ฐ ์–ด๋–ป๊ฒŒ ์ ์„์ง€?
  • ์šฉ์–ด์‚ฌ์ „์ง‘
  • ํšŒ์˜๋ก ์ž๋™ํ™”์— ๋Œ€ํ•œ ๋…ผ์˜ (ํด๋กœ๋ฐ”๋…ธํŠธ)

๐Ÿง‘โ€๐Ÿ’ปย 2๋ฒˆ ์•ˆ๊ฑด (์‹์‚ฌ ์ดํ›„)

  • ์ปจ๋ฒค์…˜
  • ๋ธŒ๋žœ์น˜
  • ๋ชจ๋…ธ๋ ˆํฌ ๊ด€ํ•ด์„œ ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€ ๋‚ด์šฉ๋„ ์ข€ ๋” ์„ธ๋ถ„ํ™” (FE, BE, story, swagger ๋“ฑ์— ๋Œ€ํ•ด์„œ ๋…ผ์˜)
  • ๋ฐฑ๋กœ๊ทธ

๐Ÿง‘โ€๐Ÿ’ปย 3๋ฒˆ ์•ˆ๊ฑด (์‹œ๊ฐ„ ๋‚จ๊ฑฐ๋‚˜ ์—๋„ˆ์ง€๊ฐ€ ๋‚จ์„ ๊ฒฝ์šฐ)

  • E2E โ†’ End to End Test โ†’ ์–ด๋–ป๊ฒŒ ๋ณด์—ฌ์ค„๊ฑด๊ฐ€? (Cypress ๋‚˜์ค‘ ๋‚˜์ค‘ ๋ฐœํ‘œ ์ง์ „. ํ• ์ง€๋ง์ง€)
  • Storybook โ†’ ์‹œ๊ฐํ™” ํ…Œ์ŠคํŠธ โ†’ ์–ด๋–ป๊ฒŒ ํ•ด๋ณผ์ง€? (Storybook ๋•Œ๋ฌธ์— ๋น„์šฉ์ด ์•ˆ๋“ฆ. ํ• ์ง€๋ง์ง€)

๐Ÿ“ย ์˜ค์ „ ํšŒ์˜ ๋‚ด์šฉ

โœ๏ธย ์ฝ”์–ด์‹œ๊ฐ„ ๋ฐ MH ๋…ผ์˜

๐Ÿ—ฃ๏ธย ์ฝ”์–ด์‹œ๊ฐ„์— ๋Œ€ํ•œ ์šฉ์–ด ์ •์˜

  • @Zen :: ๊ทผ๋ฌด์‹œ๊ฐ„๊ณผ ์ฝ”์–ด์‹œ๊ฐ„์€ ๋‹ค๋ฅด๋‹ค.
  • @ํ˜œ์ธ ์ • :: ์šฐ๋ฆฌ๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ์ฝ”์–ด์‹œ๊ฐ„์€ ๊ทผ๋ฌด์‹œ๊ฐ„์— ๊ฐ€๊น์ง€ ์•Š์•˜๋‚˜? MH์— ๋Œ€ํ•œ ๊ธฐ์ค€๋งŒ ์ •ํ•ด๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค. ๋„ค๋ถ€์บ  ํŠน์„ฑ ์ƒ ํฐ ๋ถ„๋ฅ˜์˜ ํฐ ์˜๋ฏธ๋Š” ์—†์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • @์ฃผ์› ๊น€ :: ์‰ฌ๋Š” ์‹œ๊ฐ„๋งŒ ์ค‘๊ฐ„์ค‘๊ฐ„ ๊ฐ–๊ณ , ๋„ค๋ถ€์บ  ์ฝ”์–ด์‹œ๊ฐ„์—๋Š” ๋‹ค ์•‰์•„์žˆ์„ ๊ฒƒ์ด๊ธฐ์— ๊ทธ๋ ‡๋‹ค.
  • @Zen :: 10~7์‹œ๊ฐ€ ์ฝ”์–ด์‹œ๊ฐ„ ๊ฐœ๋…๋Œ€๋กœ๋ผ๋ฉด ๋งž๋Š”๊ฑฐ ๊ฐ™๊ณ , ๊ทธ ์™ธ๋Š” 12์‹œ๊นŒ์ง€๋Š” ๊ทผ๋ฌด์‹œ๊ฐ„์œผ๋กœ ๋‘๋Š”๋ฐ, ์ด๋–„๋Š” ์ง„์งœ ์ž์œ .
    • ์ฝ”์–ด์‹œ๊ฐ„์—๋Š” Zep ํ•ญ์ƒ ๋“ค์–ด์™€์žˆ๊ธฐ
    • ๊ทธ ์™ธ์—๋Š” ์ž์œ 

๐Ÿ—ฃ๏ธย  MH์— ๋Œ€ํ•œ ๋…ผ์˜

  • @์ฃผ์› ๊น€ :: MH๋Š” 10์‹œ๊ฐ„์œผ๋กœ ์ƒ๊ฐํ•˜๊ธด ํ–ˆ๋‹ค. ํ•˜๋ฃจ์— 2.5 Task๋ฅผ ์ƒ๊ฐํ–ˆ๋‹ค. ํ•œ ํ…Œ์Šคํฌ ๋‹น 4MH๋กœ ์žก์•˜๋‹ค. ์ฝ”๋“œ๋ฆฌ๋ทฐ๋‚˜ ๊ฐ์ž ํ•™์Šตํ• ๊ฒŒ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— 12์‹œ๊ฐ„์”ฉ ์žก์œผ๋ฉด ๋นก๋นกํ•˜์ง€ ์•Š์„๊นŒ ์ƒ๊ฐ์„ ํ–ˆ๋‹ค. 10์‹œ๊ฐ„์œผ๋กœ ์žก๊ณ  ๋‹ค์Œ์ฃผ์— ์กฐ์ •ํ•˜๊ณ  ํ•˜๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • @Zen :: MH์— ์ฝ”๋“œ๋ฆฌ๋ทฐ๋‚˜ ๋ฌธ์„œํ™” ์ด๋Ÿฐ๊ฑฐ ํฌํ•จ์‹œํ‚ฌ๊ฑด์ง€๋„ ๋…ผ์˜ํ•ด๋ด์•ผํ•  ๊ฒƒ ๊ฐ™๋‹ค.
  • @ํ˜œ์ธ ์ • :: ์ƒ๊ฐํ–ˆ๋˜ ๊ฒƒ์€ ์ฝ”๋“œ๋ฆฌ๋ทฐ๋‚˜ ๋ฌธ์„œํ™”๋Š” ๋‹ค ์‹œ๊ฐ„ ์™ธ๋ผ๊ณ  ์ƒ๊ฐ์„ ํ–ˆ๋‹ค. ๊ทธ๋•Œ ๊ทธ๋ ‡๊ฒŒ ์ด์•ผ๊ธฐ๊ฐ€ ๋œ ์ค„ ์•Œ์•˜๋‹ค. ๋งŒ์•ฝ์— ์ด๊ฒŒ ๋งž๋‹ค๋ฉด, ์šฐ๋ฆฌ ์ฝ”์–ดํƒ€์ž„ 9์‹œ๊ฐ„ ์ค‘ 1์‹œ๊ฐ„์„ ๋นผ์„œ 8์‹œ๊ฐ„์œผ๋กœ ์žก์•„๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค. ๋‚˜๋Š” ์‚ฌ์‹ค 10์‹œ๊ฐ„ 12์‹œ๊ฐ„ ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์ด ์‹œ๊ฐ„๋™์•ˆ ์ญ‰ ์•‰์•„์žˆ์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ง‘์ค‘์ด ๋นก ์•ˆ๋  ๊ฒƒ ๊ฐ™๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 10์‹œ๊ฐ„ ๊ธฐ์ค€์œผ๋กœ 0.5 MH๋กœ ์žก์•„์„œ 5์‹œ๊ฐ„ ์•ˆ์— ๋๋‚ด๊ฒ ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜์–ด์žˆ๋Š”๋ฐ, ๋ฒ”์œ„๊ฐ€ ๋„ˆ๋ฌด ๋„“์–ด์ ธ๋ฒ„๋ ค์„œ ์ง‘์ค‘์ด ๋นก ์•ˆ๋ ๊ฒƒ ๊ฐ™๋‹ค๋Š” ๋Š๋‚Œ์ด ์žˆ๋‹ค. ์ผ๋‹จ ๊ทธ๋ ‡์ง€๋งŒ ๋‹ค๋ฅธ ๋ถ„๋“ค์˜ ์˜๊ฒฌ์„ ๋”ฐ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.
  • @๋™์œจ ์ด :: ์ฝ”๋“œ๋ฆฌ๋ทฐ๋‚˜ ๋ฌธ์„œํ™”๋Š” ์‹œ๊ฐ„ ์™ธ๋ผ๊ณ  ์ƒ๊ฐ์„ ํ–ˆ๋‹ค. ์ด ๋ถ€๋ถ„์„ ์ œ์™ธํ•˜๋ฉด 12์‹œ๊ฐ„์€ ๋„ˆ๋ฌด ๋งŽ์€ ๊ฒƒ ๊ฐ™๊ณ , 10์‹œ๊ฐ„ ์ด๋‚ด๋กœ ์žก๋Š”๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก , ๋‚˜์ค‘์— ์ฃผ์ฐจ ๊ธธ์–ด์ง€๊ณ , ๋ชปํ•œ ๋ถ€๋ถ„์ด ๋งŽ์•„์ง€๋ฉด ์—ด์‹ฌํžˆ ํ•ด์•ผํ•˜๋Š” ๋ถ€๋ถ„์ด ๋งŽ์•„์ง€๋ฉด ๋” ๊ณ ๋ คํ•ด์•ผํ•  ์ˆ˜๋„ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์ผ๋‹จ ๊ธฐ์ค€์  ์ •๋„๋Š” 10์‹œ๊ฐ„ ์ด๋‚ด๋กœ ์žก๋Š”๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • @์ฃผ์› ๊น€ :: ๊ทธ๋Ÿฌ๋ฉด ํ•˜๋ฃจ MH๋ฅผ 8์‹œ๊ฐ„์œผ๋กœ ์žก๊ณ , ๋ฐฑ๋กœ๊ทธ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ 2์‹œ๊ฐ„ ๋‹จ์œ„์ธ ์ž‘์—…๋“ค์„ ๋งŒ๋“ค์–ด๋‘ฌ์„œ, ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ์ด ์žˆ์œผ๋ฉด ๋” ๊ฐ€์ ธ๊ฐ€๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ์ฝ”์–ดํƒ€์ž„์„ ๋” ํ•˜๋ผ๊ณ  ๊ฐ•์š”ํ•  ์ˆ˜๋Š” ์—†์„ ๊ฒƒ ๊ฐ™๊ณ , ์ผ๋‹จ์€ 8์‹œ๊ฐ„์œผ๋กœ ์žก๊ณ  0.5 Task ์ •๋„๋กœ ์ชผ๊ฐœ๋†”์„œ โ€œ์ € ์˜ค๋Š˜ ํ•˜๋‚˜ ๋” ํ• ๊ฒŒ์š”.โ€ํ•˜๋ฉด์„œ ๊ฐ€์ ธ๊ฐ€๋ฉด ์ข‹์ง€ ์•Š์„๊นŒ ํ•œ๋‹ค.
  • @ํ˜œ์ธ ์ • :: ์ข‹๊ธด ํ•œ๋ฐ.. ์ œ๊ฐ€ 8์‹œ๊ฐ„์„ ์ฃผ์žฅํ•ด์„œ ๋งž์ถฐ์ฃผ์ง„ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค.
  • @Zen, @๋™์œจ ์ด, @์ฃผ์› ๊น€ :: ์ง€์น  ์ˆ˜ ์žˆ์œผ๋‹ˆ 8์‹œ๊ฐ„์œผ๋กœ ์žก๊ณ , ์ฝ”๋“œ ๊ธฐ๊ฐ€๋ง‰ํžˆ๊ฒŒ ์จ์ง€๋ฉด ๋” ํ•ด๋„ ๋˜๊ณ  ๊ธฐ๋ณธ์€ 8์‹œ๊ฐ„.
  • @ํ˜œ์ธ ์ • :: 8์‹œ๊ฐ„์œผ๋กœ ๋˜์ง€ ์•Š์„ ๊ฑธ ์•Œ๊ธฐ์—.. ๊ฑฑ์ •์ด ์•ž์„ญ๋‹ˆ๋‹คโ€ฆ ์‚ฌ์‹ค 8์‹œ๊ฐ„ ๋ชป ์ง€์ผœ์งˆ ๊ฑฐ ์•Œ์ง€๋งŒโ€ฆโ€ฆ ์ด๊ฑฐ๋ผ๋„ ์ •ํ•ด๋†”์•ผ ์‹ฌ์ ์œผ๋กœ ํŽธํ•  ๊ฒƒ ๊ฐ™์•„์š”โ€ฆโ€ฆโ€ฆโ€ฆ
  • @Zen :: ์–ด๋–ค ์ž‘์—…์ด ์ฃผ์–ด์กŒ์„๋•Œ, ๊ทธ๊ฑธ ๋‹ค ์™„์ˆ˜ํ• ๊ฑฐ๊ธฐ ๋•Œ๋ฌธ์—.. ๊ทธ๋ƒฅ 8์‹œ๊ฐ„์€ ๊ฑด๊ฐ•์„ ์œ„ํ•œ ๊ธฐ์ค€์œผ๋กœ ์žก์•„๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์‚ฌ์‹ค, ํ˜œ์ธ๋‹˜ ๋ง์€ ๊ทธ๋ ‡๊ฒŒํ•ด๋„.. ํ•ญ์ƒ ์Šฌ๋ž™๋ณด๋ฉด ๋ถˆ์ผœ์ ธ์žˆ์Œโ€ฆ
  • @ํ˜œ์ธ ์ • :: ์ƒ๊ฐ์ด๋ผ๋„ ํ•˜๋ฉด์„œโ€ฆ ์‹ฌ์  ๋ถ€๋‹ด์„ ์ค„์ด๊ณ  ์‹ถ์–ด์š”..

๐Ÿ“šย ์ •๋ฆฌ

  • MH๋Š” 8์‹œ๊ฐ„์œผ๋กœ ์ธก์ •.
  • Task ๋‹จ์œ„๋Š” 0.25MH 2์‹œ๊ฐ„.
  • ์ผ ๋ถ„๋ฐฐ ๋‹จ์œ„๋Š” 0.5MH๋กœ ์žก์ž.

โœ๏ธย ์ฝ”๋“œ๋ฆฌ๋ทฐ์— ๋Œ€ํ•œ ๋…ผ์˜

๐Ÿ—ฃ๏ธย  ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€?

์ฝ”๋“œ๋ฆฌ๋ทฐ๋ฅผ ์–ด๋–ค ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์žฅ์น˜๋กœ ์“ฐ๊ณ  ์‹ถ์œผ์‹ ๊ฐ€์š”?

  • @์ฃผ์› ๊น€ :: Vitest๋ฅผ ์ด์šฉํ•ด์„œ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋‹ค. ํ…Œ์ŠคํŠธ๊ฐ€ ์•Œ๋งž๊ฒŒ ์ง„ํ–‰๋˜๊ณ  ์žˆ๋Š”๊ฐ€๋ฅผ ํ™•์ธํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ํ…Œ์ŠคํŠธ๊ฐ€ ์•Œ๋งž๋‹ค๋ฉด ์›๋ž˜ ์“ด ์ฝ”๋“œ์— ๋Œ€ํ•ด์„œ๋Š” ์•ˆ์ •์„ฑ์ด ๋ณด์žฅ์ด ๋œ๋‹ค. ์ด์— ๋”ฐ๋ผ์„œ ํ…Œ์ŠคํŠธ๋ฅผ ๋ณด๋Š” ๋Šฅ๋ ฅ์„ ๊ธฐ๋ฅด๊ณ  ์‹ถ๋‹ค.
    • Vitest ๋ฅผ ํ†ตํ•œ Unit Test๋ฅผ ์ง„ํ–‰ํ•˜๋‹ˆ๊นŒ, ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๊ฐ€ ์ž˜ ์ž‘์„ฑ์ด ๋˜์–ด ์žˆ๋Š”์ง€, ์ฝ”๋“œ ์ž์ฒด์˜ ๋ถ„๋ฆฌ๊ฐ€ ํ…Œ์ŠคํŠธ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ๋‹จ์œ„๋กœ ์ž˜ ๋ชจ๋“ˆํ™” ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
    • @Zen :: ํ…Œ์ŠคํŠธ์ฝ”๋“œ์— ๋Œ€ํ•œ ์ตœ์†Œ์กฐ๊ฑด์„ ์ •ํ•˜์ž. (์‹คํŒจ์ผ€์ด์Šค ๋ช‡๊ฐœ, ์„ฑ๊ณต์ผ€์ด์Šค ๋ช‡๊ฐœ) โ†’ ๋‚˜์ค‘์— ์ด์•ผ๊ธฐ
  • @์ฃผ์› ๊น€ :: ๋ฐ์ผ๋ฆฌ์Šคํฌ๋Ÿผ, ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ชฉ์ ์ด๋‹ค. ์งˆ๋ฌธ์„ ๋ฏธ๋ฆฌ ๋‚จ๊ฒจ๋‘˜ ์ˆ˜ ์žˆ๋Š” ์žฅ์น˜๋กœ ์“ฐ๊ณ  ์‹ถ๋‹ค. ๋‹ค์Œ๋‚  ๋ฐ์ผ๋ฆฌ์Šคํฌ๋Ÿผ์—์„œ ์งˆ๋ฌธ์„ ํ•˜๊ฒŒ ๋˜๋ฉด ์„œ๋กœ ์งˆ๋ฌธํ•  ์‹œ๊ฐ„๋„ ์—†๊ณ , ๋จธ๋ฆฌ๊ฐ€ ์•ˆ๋Œ์•„๊ฐ€๋Š” ํƒ€์ด๋ฐ์ด๋‹ˆ ๊ถ๊ธˆํ•œ๊ฑฐ ์žˆ์œผ๋ฉด ๋ฏธ๋ฆฌ ์ข€ ์ ์–ด์ฃผ๋ฉด ์งˆ๋ฌธ์„ ๋ฐ›์„ ์‚ฌ๋žŒ๋„ ๋ฏธ๋ฆฌ ์ค€๋น„ํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์ด ๋  ๊ฒƒ ๊ฐ™๋‹ค.
  • @ํ˜œ์ธ ์ • :: ์šฐ๋ฆฌ๋ผ๋ฆฌ ์ฝ”๋“œ๋ฆฌ๋ทฐ ํ•˜๋Š” ๊ฑด ์—„์ฒญ๋‚œ ์‹ค๋ ฅํ–ฅ์ƒ์ด ๋œ๋‹ค๊ฑฐ๋‚˜, ์ฝ”๋“œ๋ฅผ ๋” ์ž˜์งœ๊ฒŒ ๋œ๋‹ค๊ฑฐ๋‚˜ ์ด๋Ÿฐ๊ฑด ์ ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์‹œ๋‹ˆ์–ด ๋ถ„๋“ค์ด ๋ด์ฃผ๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ์„œ, ๊ฒฝํ—˜ ์ˆ˜์ค€์ด ๋น„์Šทํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ œ๊ฐ€ ๋Š๋ผ๋Š” ์ฝ”๋“œ๋ฆฌ๋ทฐ์˜ ๋ชฉ์ ์€ ํŒ€์›๋“ค์ด ๋ญ˜ ํ•˜๊ณ  ์žˆ๋Š”์ง€ ์„œ๋กœ์˜ ํ˜„ํ™ฉ์„ ์•Œ๊ณ , ์งˆ๋ฌธ์„ ๋‚จ๊ฒจ๋‘๊ฑฐ๋‚˜, ํ”ผ๋“œ๋ฐฑ์„ ๋‚จ๊ฒจ๋‘๊ธฐ ์œ„ํ•œ ์žฅ์น˜๋กœ ์ƒ๊ฐํ–ˆ๋‹ค.
  • @Zen :: โ€œ๋ˆ„๊ฐ€ ์–ด๋–ค ์ฝ”๋“œ๋ฅผ ์งฐ๋Š”์ง€ ๋ชจ๋ฅด๊ฒŒ ํ•˜๊ณ  ์‹ถ๋‹ค.โ€ - ์ง€์‹์ ์œผ๋กœ๋‚˜ ์ฝ”๋“œ์ ์œผ๋กœ๋‚˜ ์„œ๋กœ๊ฐ€ ์–ด๋–ค ์ž‘์—…์„ ํ–ˆ๋Š”์ง€ ์™ธ๋ถ€์—์„œ ๋ดค์„๋•Œ ์•„์˜ˆ ๋ชจ๋ฅด๊ฒŒ. ์ด๋Ÿฐ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์žฅ์น˜๋กœ ์ฝ”๋“œ๋ฆฌ๋ทฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
  • @ํ˜œ์ธ ์ • :: ๋ชจ๋‘๊ฐ€ ์ง€๊ธˆ ์ฝ”๋“œ๋ฆฌ๋ทฐ์˜ ๋ชฉํ‘œ๊ฐ€ โ€œ์„œ๋กœ์— ๋Œ€ํ•œ ์ฝ”๋“œ๋ฅผ ๋ณด๋Š” ๊ฒƒโ€์ด ์žฅ์น˜๋งŒ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ๋ณด๋Š” ๊ฑฐ๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค. ๊ฑฐ์ฐฝํ•œ ์ฝ”๋“œ์— ๋Œ€ํ•œ ๋ฆฌ๋ทฐ! ๋ผ๋Š” ๊ฒƒ๋ณด๋‹ค๋Š” PR์— ๋Œ“๊ธ€์„ ๋‚จ๊ธฐ๋Š” ์ •๋„๊ฐ€ ๋งž๋‚˜์š”? ์ฝ”๋“œ๋ฆฌ๋ทฐ๋ผ๋Š” ์žฅ์น˜๋กœ์จ, ๋ชจ๋‘๊ฐ€ ์–ด๋–ค ๊ฒƒ์„ ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋ผ๋ฉด..
  • @Zen :: ์„œ๋กœ์— ๋Œ€ํ•œ ์ž‘์—… ์ดํ•ด, ์ดํ•ด์—์„œ ๋‚˜์˜ค๋Š” ์„œ๋กœ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ์˜ ์žฅ์น˜๋กœ ์“ฐ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
  • @ํ˜œ์ธ ์ • :: ์ข‹์•„์š”.

๐Ÿ“šย ์ •๋ฆฌ

  • ๋ชฉ์  : ์„œ๋กœ์— ๋Œ€ํ•œ ์ž‘์—… ์ดํ•ด, ์ดํ•ด์—์„œ ๋‚˜์˜ค๋Š” ํ”ผ๋“œ๋ฐฑ
  • ๋ฐฉ๋ฒ• :
    1. ์„œ๋กœ์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•œ๋‹ค.
    2. ๋งŒ์•ฝ ํ”ผ๋“œ๋ฐฑํ•  ์‚ฌํ•ญ์ด ์žˆ๋‹ค๋ฉด ํ”ผ๋“œ๋ฐฑ์„ ๋‚จ๊ธด๋‹ค.
    3. ์ฝ”๋“œ๋ฆฌ๋ทฐ๋Š” PR Approve ์ „์— ํ•œ๋‹ค.
    4. ํ”ผ๋“œ๋ฐฑ ์‚ฌํ•ญ์ด ์žˆ์œผ๋ฉด ์ด๋ฅผ ๋‹ค ์ˆ˜์ •ํ•ด์„œ, ์ˆ˜์ •์ด ๋๋‚˜๋ฉด Approve ์ง„ํ–‰.

โœ๏ธย PR ์กฐ๊ฑด ๋…ผ์˜

๐Ÿ—ฃ๏ธย PR Approve์˜ ์กฐ๊ฑด ๋…ผ์˜

@ํ˜œ์ธ ์ • :: PR Approve๊ฐ€ ๋ชจ๋‘์˜ Approve๋ฅผ ๋ฐ›๊ณ  ํ•˜๋Š” ๊ฑด๋ฐ, ์กฐ๊ธˆ์”ฉ ๋ฐ€๋ฆฌ๋ฉด ๋งŽ์ด ์Œ“์ด๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค. 4๋ช…์ด ์ž‘์—…ํ•˜๋‹ค๋ณด๋‹ˆ ๋งŽ์ด ์Œ“์ผ ๊ฒƒ ๊ฐ™์•„์„œ, ์ด๊ฑด ์กฐ๊ธˆ ๋น„ํ˜„์‹ค์ ์ธ๊ฑฐ ๊ฐ™๋‹ค. ์ œ ์ƒ๊ฐ์—๋Š” ํ•œ๋ช…์”ฉ 1:1 ๋žœ๋ค์œผ๋กœ ๋Œ๋ฆฌ๋Š” ๊ฒŒ ์–ด๋–จ๊นŒ? ์˜ค๋Š˜ ์˜ˆ๋ฅผ ๋“ค์–ด ์šฐ๋ฆฌ๊ฐ€ ์ฝ”๋“œ๋ฅผ ์งœ์„œ ๋ณด๋ƒˆ์œผ๋ฉด, PR์ด 4๊ฐœ๋ฉด 4๊ฐœ์˜ PR ์ค‘์— ์ž๋™ํ™”๋ฅผ ์‹œํ‚ค๋Š” ๊ฑฐ๋‹ค. ์ž‘์„ฑํ•œ PR 4๊ฐœ ์ค‘์— ํ•˜๋‚˜๋ฅผ ์˜ฌ๋ฆฌ๋ฉด ์ž๋™์œผ๋กœ ๋™์œจ๋‹˜์ด Approve ๋Œ€์ƒ์œผ๋กœ ์˜ฌ๋ผ๊ฐ€๊ณ , 2๋ฒˆ PR์„ ์˜ฌ๋ ธ์„๋•Œ๋Š” ์žฌ๋„๋‹˜์ด Approve ํ•˜๋Š” ๊ฑฐ๊ณ . ์ด๋ ‡๊ฒŒ ๊ณ„์† ์„ž์ด๊ฒŒ ๋˜๋ฉด ๋ชจ๋‘์˜ ์ฝ”๋“œ๋ฅผ ๋‹ค ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

  • ๋žœ๋ค์œผ๋กœ Approveํ•  ์‚ฌ๋žŒ์„ ๋ฝ‘์•„์„œ ๊ทธ ์‚ฌ๋žŒ์ด ํ•ด๋‹น PR์— ๋Œ€ํ•ด์„œ ๋ฆฌ๋ทฐํ•˜๊ฒŒ ํ•˜์ž.

@Zen :: Approve์˜ ์กฐ๊ฑด์„ 2๋ช…์œผ๋กœ ํ•ด๋ณด๋ฉด ์–ด๋–จ๊นŒ์š”?

@์ฃผ์› ๊น€, @๋™์œจ ์ด, @ํ˜œ์ธ ์ • :: ์ข‹์Šต๋‹ˆ๋‹ค.

๐Ÿ—ฃ๏ธย PR ๋‚ ๋ผ์˜ค๋ฉด ๋ช‡ ์‹œ๊ฐ„ ๋‚ด๋กœ ๋ฆฌ๋ทฐํ•  ๊ฒƒ์ธ๊ฐ€?

@ํ˜œ์ธ ์ • :: ํ˜„์‹ค์ ์œผ๋กœ ์‹œ๊ฐ„์„ ์ •ํ•˜์ง€ ์•Š์•˜์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. ์ €ํฌ ๋ชจ๋‘๊ฐ€ ํ•ด์•ผํ•˜๋Š”๋ฐ ๋ฏธ๋ฃจ์ง€๋Š” ์•Š์ง€ ์•Š์„๊นŒ ํ•˜๋Š” ์ƒ๊ฐ์ด ๋“ค์–ด์„œ, ์‹œ๊ฐ„์„ ์ •ํ•ด์„œ ์˜ค๋Š˜๊นŒ์ง€๋ฉด, ๋” ์ค‘์š”ํ•˜๊ฒŒ ์ž‘์—…ํ•ด์•ผ ํ•˜๋Š” ๊ฒŒ ์žˆ๋Š”๋ฐ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๊ผฌ์—ฌ๋ฒ„๋ฆด ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

@์ฃผ์› ๊น€ :: ๋‹น์ผ๊นŒ์ง€๋กœ ํ•˜๋‚˜์š”?

@ํ˜œ์ธ ์ • :: ๊ทธ๊ฒƒ๋„ ์ •ํ•ด๋‘์ง€๋ง์ž๊ธด ํ–ˆ๋Š”๋ฐ, ์šฐ๋ฆฌ ์Šค์Šค๋กœ์˜ ์ œ์ œ๊ฐ€ ํ•„์š”ํ• ์ง€ ์ง„์งœ ์ง„์งœ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.(I donโ€™t know) ๋‹ค๋ฅธ ๋ถ„๋“ค ์˜๊ฒฌ ๋“ฃ๊ณ  ์‹ถ์–ด์š”. ์ด๊ฑฐ ใ…ˆ๋‹ˆ์ง  ๋ชจ๋ฅด๊ฒ ์Œ

@์ฃผ์› ๊น€ :: ์ฝ”์–ด์‹œ๊ฐ„์— ์žก์€ ๊ฒƒ์€ ๋‹น์ผ ๋‚ด์— ํ•˜๊ณ , ์ถ”๊ฐ€ ์ž‘์—…์„ ํ•œ ๊ฒƒ์€ ๋Šฆ์–ด๋„ ๋‹ค์Œ๋‚ ๊นŒ์ง€ ํ•˜๋ฉด ์ข‹์ง€ ์•Š์„๊นŒ ํ–ˆ์Šต๋‹ˆ๋‹ค.

@Zen :: ๋ชปํ•ด๋„ ๋‹ค์Œ๋‚  ์˜ค์ „ 10์‹œ ์ „(๋ฐ์ผ๋ฆฌ์Šคํฌ๋Ÿผ ์ „)๊นŒ์ง€๋Š” PR ์š”์ฒญ์ด ๋น„์–ด์žˆ์œผ๋ฉด ํ•ฉ๋‹ˆ๋‹ค.. ์ฃผ๋ง์€ ์ œ์™ธ ์‰ฌ์…”์•ผ์ฃ . ๋‹ค์Œ ์ž‘์—… ์‚ฌ์ดํด ์ „๊นŒ์ง€ ๋จธ์ง€๊ฐ€ ์•ˆ๋˜๋ฉด ํ•œ๋ฒˆ์— ๋จธ์ง€ ์‹œ์— ์ถฉ๋Œ์ด ์—„์ฒญ๋‚ ๊บผ๊ฐ™์•„์„œ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค.

@๋™์œจ ์ด :: ์ฃผ์›๋‹˜ ๋ง์”€์— ๋™์˜ํ•˜๋Š”๊ฒŒ, ์ฝ”์–ด ์‹œ๊ฐ„์— ์ž‘์—…ํ•œ๊ฑด ๋‹น์ผ ์ž์ •(์˜คํ›„ 11์‹œ 59๋ถ„)๊นŒ์ง€ ๋ฆฌ๋ทฐ ์™„์ˆ˜, ๊ทธ๋ฆฌ๊ณ  ์ถ”๊ฐ€ ์ž‘์—… ๋ถ„์— ๋Œ€ํ•ด์„œ๋Š” ์–ธ์ œ ์˜ฌ๋ผ์˜ฌ ์ง€ ๋ชจ๋ฅด๋‹ˆ ๋‹ค์Œ๋‚  ์˜ค์ „ 10์‹œ ์ „๊นŒ์ง€ ์™„์ˆ˜.

@Zen, @ํ˜œ์ธ ์ •, @์ฃผ์› ๊น€ :: ์ข‹์Šต๋‹ˆ๋‹ค.

๐Ÿ“šย ์ •๋ฆฌ

  • PR ๋ฆฌ๋ทฐ๋ฅผ ํ•˜๋ฉด์„œ ์ฝ”๋“œ๋ฆฌ๋ทฐ๋„ ๊ฐ™์ด ํ•œ๋‹ค. ์ฆ‰, PR๋ฆฌ๋ทฐ === ์ฝ”๋“œ๋ฆฌ๋ทฐ
  • ํ…Œ์Šคํฌ ๋ถ„๋ฐฐํ•ด์„œ ๋‹น์ผ์— ์ž‘์—…๋œ ์ž‘์—…๋ฌผ์— ๋Œ€ํ•ด์„œ๋Š” ๋‹น์ผ ์ž์ •(์˜คํ›„ 11:59)๊นŒ์ง€ ์™„์ˆ˜ํ•œ๋‹ค.
  • ํŒ€์› ๊ฐœ์ธ์ ์œผ๋กœ ์ถ”๊ฐ€ ์ž‘์—…ํ•œ ์‚ฌํ•ญ์— ๋Œ€ํ•ด์„œ๋Š” ๋‹ค์Œ๋‚  10์‹œ๊นŒ์ง€ ์™„์ˆ˜ํ•œ๋‹ค.
  • ์ด์œ  :: ๋ฐ€๋ ค์„œ ํ•œ๋ฒˆ์— ๋จธ์ง€๋ฅผ ํ•  ๊ฒฝ์šฐ ์ถฉ๋Œ์ด ๋‚  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋‹ค์Œ ์ž‘์—… ์‹ธ์ดํด ์ „๊นŒ์ง€๋Š” PR์ด ๋‹ค ์ฒ˜๋ฆฌ๋˜๋„๋ก ํ•œ๋‹ค.

โœ๏ธย ๋ฌธ์„œํ™”์— ๋Œ€ํ•œ ๋…ผ์˜

๐Ÿ—ฃ๏ธย ๊ธฐ์ˆ ๋ฌธ์„œ์— ๋Œ€ํ•œ ์•ˆ๊ฑด

  • ์•ˆ๊ฑด - @Zen :: wiki๋ผ๊ณ  ํ•˜๋ฉด ๋‚˜๋ฌด์œ„ํ‚ค์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค. ์ €ํฌ์˜ ๊ธฐ์ˆ  ๋‚ด์šฉ์— ๋Œ€ํ•œ ์„ค๋ช…์ด์ž, ๋™์‹œ์— ํ•™์Šต ๋“ฑ ๊ด€๋ จ๋˜์„œ ์ฒ˜๋ฆฌํ•œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๊ณผ์ • ๋ฐ ๊ฒฐ๊ณผ๋ฌผ์— ๋Œ€ํ•œ ์ •๋ณด.
    1. github wiki๋ฅผ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌํ•  ๊ฒƒ์ธ๊ฐ€?
    2. ๊ธฐ์ˆ  ๋ฌธ์„œ๋ฅผ ์–ด๋–ป๊ฒŒ ์ ์„ ๊ฒƒ์ธ๊ฐ€?

๐Ÿ—ฃ๏ธย Github wiki๋ฅผ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌํ•  ๊ฒƒ์ธ๊ฐ€?

  • @์ฃผ์› ๊น€ :: github wiki๋Š” ๋…ธ์…˜์— ์žˆ๋Š” ๊ฑธ ์˜ฎ๊ธฐ๋Š” ๊ฑด๊ฐ€์š”?

  • @Zen :: ๋…ผ์˜ํ•ด๋ด์•ผํ•œ๋‹ค. ์ง€๊ธˆ ์Œ“์ธ๊ฑฐ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ๋„ ์ผ์ด๋‹ค.

  • @ํ˜œ์ธ ์ • :: ์ œ๊ฐ€ ํ•ด๋ดค์„ ๋–„๋Š” ๊บ ์ง€๋Š” ๊ฒƒ์€ ์ธ์šฉ๋งŒ ๊บ ์ง€๊ณ , ๋‚˜๋จธ์ง€๋Š” ์•ˆ๊นจ์กŒ๋˜ ๊ฒƒ ๊ฐ™์•„์š”. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋“ฑ๋„ ๋‹ค ๋˜์—ˆ๋˜ ๊ฑฐ๋กœ ๊ธฐ์–ตํ•˜๋Š”๋ฐ ์•„๋‹Œ๊ฐ€์š”?

  • @Zen :: wiki๋ฅผ ์–ด๋–ค ๋ชฉ์ ์œผ๋กœ ์“ธ ๊ฒƒ์ธ๊ฐ€๋ฅผ ๋จผ์ € ๋…ผ์˜ํ•ด๋ด์•ผํ•  ๊ฒƒ ๊ฐ™์•„์š”.

๐Ÿ—ฃ๏ธย wiki๋ฅผ ์–ด๋–ค ๋ชฉ์ ์œผ๋กœ ์“ธ ๊ฒƒ์ธ๊ฐ€

์•„์นด์ด๋น™ ๋ชฉ์ ์œผ๋กœ ๋…ธ์…˜์— ์žˆ๋Š” ์ž๋ฃŒ๋ฅผ ๋‹ค migration ํ•  ๊ฒƒ์ธ์ง€, ์•„๋‹ˆ๋ฉด ์ •์ œํ•ด์„œ ์ •๋ฆฌ๋œ ๊ฒƒ๋“ค๋งŒ ๋”ฑ!๋”ฑ! ์˜ฌ๋ฆด ๊ฑด์ง€

  • @ํ˜œ์ธ ์ • :: ์žฌ๋„๋‹˜์ด ์ƒ๊ฐํ•œ ๋ชฉ์ ์€ ๋ฌด์—‡์ด์—ˆ๋‚˜์š”?

  • @Zen :: ์•„์นด์ด๋น™ ๋ชฉ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

  • @์ฃผ์› ๊น€ :: ์ •์ œ๋Š” ๊ฐ์ž ๋ธ”๋กœ๊ทธ๋‚˜, ์—ฌ๊ธฐ์— ํ•˜๊ณ , ์•„์นด์ด๋น™ ๋ชฉ์ ์œผ๋กœ ํ•˜์ž.

  • @Zen :: ํšŒ์˜๋ก ์•„์นด์ด๋น™์‹œ

    ๋…ธ์…˜์„ ๊ทธ๋Œ€๋กœ ๊นƒํ—ˆ๋ธŒ์— ์˜ฎ๊ธฐ๊ณ , ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ๋„ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ๊ฐˆ ์ƒ๊ฐ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

    • ๋ฃจํŠธ
      • ํŒ€ ์†Œ๊ฐœ
        • ํŒ€์›
      • ํšŒ์˜
        • ๋ฐ์ผ๋ฆฌ ์Šคํฌ๋Ÿผ
        • ํšŒ์˜๋ก
          • ํšŒ์˜๋ก ์ •๋ฆฌ
          • ํšŒ์˜๋ก
          • ์‚ฌ์ „ ์ค€๋น„๋ก
      • ๊ธฐ์ˆ ๋ฌธ์„œ
        • FE
          • React
          • Test
        • BE
          • WebServer
          • WAS
          • DB
        • ํ™˜๊ฒฝ์„ค์ •
  • @ํ˜œ์ธ ์ • :: Migration ๋น„์šฉ์ด ๋งŽ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š์„๊นŒ ํ•˜๋Š” ์šฐ๋ ค์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ถ๊ธˆํ•œ๊ฒŒ ์‚ฌ์‹ค ๋…ธ์…˜ ๋งํฌ๋ฅผ ์ ์–ด๋„ ๋˜์ž–์•„์š”? ๊นƒํ—ˆ๋ธŒ ์œ„ํ‚ค์— ๋˜‘๊ฐ™์ด ์ ์œผ๋ ค๋Š” ์ด์œ ๊ฐ€ ์žˆ๋‚˜์š”?

  • @Zen :: ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ด์œ ๊ฐ€ ์žˆ๋‹ค.

    1. ๋…ธ์…˜ ๋“ค์–ด์˜ค๋Š” ๊ฑฐ ์ž์ฒด๋ฅผ ์‹ซ์–ดํ•˜๋Š” ๋ถ„๋“ค์ด ๋งŽ๋‹ค.
      • ๋งํฌ ์—ด๊ณ , ๋กœ๋”ฉํ•˜๊ณ , ์ƒˆ ์ฐฝ๋„์šฐ๋Š”๊ฒŒ ์ƒ๊ฐ๋ณด๋‹ค ์งœ์ฆ์ด ๋งŽ์ด๋‚จ.
      • ํฌํด๋กœ ์“ฐ๊ฒ ๋‹ค๊ณ  ํ•˜๋ฉด, ๋ฉด์ ‘๊ด€์€ ์šฐ๋ฆฌ์—๊ฒŒ 20์ดˆ์ •๋„ ์“ฐ๋ฉด ๋งŽ์ด ์“ด๊ฑฐ. โ†’ ์ด๊ฑธ ๋‹ค ๋กœ๋”ฉ์‹œ๊ฐ„์œผ๋กœ ์“ฐ๊ธด ์•„๊น๋‹ค.
    2. ๊ฐœ๋ฐœ๋ฐ”๋‹ฅ ์—์„œ ๋ผ์ด๋ธŒ๊ฐ€ ์žˆ์—ˆ๋‹ค.
      • ์ด๋ ฅ์„œ+ํฌํด ์ฒจ์‚ญ, ๋…ธ์…˜์œผ๋กœ ์ œ์ถœํ•œ์‚ฌ๋žŒ๋“ค ์ผ๋‹จ ๋‹ค ์งค๋ž์Šต๋‹ˆ๋‹ค.
      • ์œ„ํ‚ค์— ๋‹ค ๋ฐ•์•„๋ผ. ๊ทธ๋ž˜์•ผ ์šฐ๋ฆฌ๋„ ํฌํด ๋ณผ๋•Œ ํ”„๋กœ์ ํŠธ ํ•œ๋ฒˆ์— ๋ณด์ง€ ์•Š๊ฒ ๋Š๋ƒ?
    3. ์‚ฌ์‹ค wiki๋“ , notion์ด๋“  ์•ˆ๋ณธ๋‹ค๊ณ  ๋ณด๋Š” ๊ฒŒ ๋งž๊ธด ํ•˜๋‹ค. ๊ด€์‹ฌ์žˆ๋Š” ๋ช‡๊ฐœ๋งŒ ๋ณด์ง€.
      • ๊ทธ๋•Œ์— ํ•œ๋ฒˆ ๋“ค์–ด์™€์„œ ๋‹ค๋ฅธ๊ฒƒ๋„ ๊ฒธ์‚ฌ๊ฒธ์‚ฌ ํ•œ๋ฒˆ๋งŒ ํด๋ฆญํ•ด๋ณผ๊นŒ? ํ•˜๋Š” ๋งˆ์Œ์ด ์žˆ์„ ๋•Œ ๋น„์šฉ์„ ์ค„์—ฌ์ฃผ๋ฉด ์•„๋‚€ ์—๋„ˆ์ง€๋กœ ๋‹ค๋ฅธ ๊ฒƒ๋„ ๋ณด๊ฒŒ ๋จ.
      • ์‹ฌ๋ฆฌ์ ์ธ ๊ฒƒ์„ ์ด์šฉํ•จ.
  • @ํ˜œ์ธ ์ • :: ์–ด์ฉƒ๋“  ํฌํด๋กœ์จ ๊ฐ€์น˜๊ฐ€ ์žˆ๊ธฐ ์œ„ํ•ด์„œ, ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด์„œ๋ผ๋ฉดโ€ฆ ๊ทธ๋ฆฌ๊ณ  ์ด๊ฑฐ ํ•˜๋‚˜ํ•˜๋‚˜ ์˜ฎ๊ธฐ๋Š”๊ฒŒ ๋น„์šฉ์ด ๋งŽ์ด ๋“ค๊ฑฐ๋ผ ์ƒ๊ฐํ•œ๋‹ค. ๋ฌผ๋ก  ์–ด๋Š์ •๋„์ผ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ, ๋‹ค ๋งˆ์น˜๊ณ  ๋„ฃ๋Š”๊ฑด ์–ด๋–ค๊ฐ€?

  • @Zen :: ์ฒ˜์Œ ํ‹€๋งŒ ์ž˜ ์žกํžˆ๋ฉด, ๋ฌธ์„œ ์–ด์ฐจํ”ผ ์ ์ž–์•„์š”? ๊ทธ๋Ÿฌ๋ฉด ์ ์„๋•Œ MD์œผ๋กœ ๋นผ์„œ ๊ฐ™์ด ๋„ฃ๋Š”๊ฑด ๋งค์ˆœ๊ฐ„ํ–ˆ์„๋•Œ ๋น„์šฉ์ด ํฌ๊ฒŒ ์•ˆ๋“ ๋‹ค. ์ด๋Ÿ‰์œผ๋กœ ๋ดค์„๋•Œ๋Š” ๊ฐ™์ง€๋งŒ, ๊ทธ๊ฑธ ๋˜๊ฒŒ ์ž‘์€ ๋‹จ์œ„๋กœ ์ชผ๊ฐœ์„œ ๋งค์ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐ? ํ•œ๋‹ค๊ณ  ํ•˜๋ฉด ์ด์— ๋Œ€ํ•œ ์ดˆ๊ธฐ์ž‘์—…์€ ์ œ๊ฐ€ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ดํ›„๋Š” ํŒ€์›์ด ๊ทธ๋•Œ๊ทธ๋•Œ ์˜ฌ๋ ค๋„ ๋  ๊ฒƒ ๊ฐ™์•„์š”.

    • @Zen :: ๊ฐœ์ธ์ ์ธ ์š•์‹ฌ์ด๊ธด ํ•œ๋ฐ, ์ €ํฌ๊ฐ€ TypeDOC(JSDOC, TSDOC) + Storybook + Swagger ๋“ฑ๋„ ์“ฐ๋‹ˆ๊นŒ, ์ด๊ฑฐ ํ•˜๋‚˜๋กœ ๋‹ค ๋ฌถ์–ด์„œ ์ €ํฌ ๊ธฐ์ˆ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.
      • JSDoc, TSDoc ์ปจ๋ฒค์…˜์€ ์ด๋”ฐ ๋…ผ์˜
      • ๋‹ค ๋๋‚˜๊ณ  ์ €ํฌ๋งŒ์˜ ๊ธฐ์ˆ ๋ฌธ์„œ ์‚ฌ์ดํŠธ ๋งŒ๋“ค๋ฉด ์–ด๋–จ๊นŒ ํ–ˆ์Šต๋‹ˆ๋‹ค. โ†’ vercel ๋ฌด๋ฃŒ๋กœ ๊ณ„์† ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ˆ๊นŒโ€ฆ (๊ด€๋ จํ•ด์„œ๋Š” ๋‚˜์ค‘์— ๊ณฐํ„ฐ๋ทฐ ์ฐธ๊ณ ํ•˜์…”๋„ ์ข‹์„๊ฒƒ ๊ฐ™์•„์š”.)

๐Ÿ“šย ์ •๋ฆฌ

  • ์œ„ํ‚ค๋Š” ์•„์นด์ด๋น™ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋…ธ์…˜์— ์žˆ๋Š” ๋‚ด์šฉ์„ ๊ทธ๋Œ€๋กœ ์œ„ํ‚ค์— ์„œ์ˆ ํ•œ๋‹ค. ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ๋Š” ๋…ธ์…˜์„ ๋”ฐ๋ฅธ๋‹ค.
  • ํฌํด์—์„œ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์ด๋‹ค.
  • ์ฝ”๋“œ ์ž์ฒด์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ๋…ธ์…˜์ด๋‚˜ ๊นƒํ—ˆ๋ธŒ์— ์—…๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ TSDoc, JSDoc, Storybook, Swagger๋ฅผ ์ด์šฉํ•œ๋‹ค.
  • ์ตœ์ข…์ ์œผ๋กœ, ์œ„ํ‚ค์™€ ์ด๊ฑธ ํ•ฉ์ณ์„œ ์šฐ๋ฆฌ๋งŒ์˜ ๊ธฐ์ˆ  ๋ฌธ์„œ ์‚ฌ์ดํŠธ๋ฅผ ์—ด๊ณ  ๋ฐฐํฌํ•œ๋‹ค.

โœ๏ธ ์šฉ์–ด์‚ฌ์ „์ง‘

์ปจ๋ฒค์…˜์ด๊ธด ํ•˜๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด ์šฉ์–ด๋ฅผ ์ด๋Ÿฐ ์˜๋ฏธ๋กœ ์“ด๋‹ค๋ฅผ ์ •๋ฆฌํ•ด๋‘”๊ฒƒ. ex. ํ”ผ๊ทธ๋งˆ์— ๊ฒฝ๋กœ๋ฐฉ ๋“ฑ์ด ์žˆ๋Š”๋ฐ ์ด๋Ÿฐ๊ฑธ ์–ด๋–ป๊ฒŒ ์ง€์นญํ• ์ง€ ์ •ํ•˜์ž๋Š” ๊ฑฐ. ๊ทธ๋ฆฌ๊ณ , ๊ทธ๊ฑธ ๋‹จ์ˆœํžˆ ์ €ํฌ๋ผ๋ฆฌ๋งŒ ์•„๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ ๋ฌธ์„œํ™” ํ•˜๋Š”๊ฑฐ.

๐Ÿ—ฃ๏ธย ๋„์ž…์— ๋Œ€ํ•œ ๋‚ด์šฉ

  • @Zen, @ํ˜œ์ธ ์ •, @์ฃผ์› ๊น€, @๋™์œจ ์ด :: ์ข‹์Šต๋‹ˆ๋‹ค.
  • @์ฃผ์› ๊น€ :: ์ด๋ ‡๊ฒŒ ๋˜๋ฉด, ๊ฒฝ๋กœ ๋“œ๋กœ์šฐ ์ด๋Ÿฐ ์‹์œผ๋กœ ์ €ํฌ๊ฐ€ ์ด๋ฆ„์„ ๋ถ™์ด๋Š” ๊ฑด๊ฐ€์š”?
    • @Zen :: ๋„ค! ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๊ณ , ์ด๊ฒŒ ๋ชจํ˜ธํ•  ์ˆ˜ ์žˆ์–ด์„œ ๋ฌธ์„œ๋กœ ๋ช…์„ธํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์„œ ์ œ์•ˆํ•ด๋ดค์Šต๋‹ˆ๋‹ค.
  • @ํ˜œ์ธ ์ • :: ๋…ธ์…˜ ์ตœ์ƒ๋‹จ์—๋‹ค๊ฐ€ ์šฉ์–ด ์‚ฌ์ „์ง‘์„ ์ถ”๊ฐ€ํ•ด์„œ, ํ‘œ์ฒ˜๋Ÿผ ๋งŒ๋“ค๊ณ , ๋ชจ๋‘๊ฐ€ ๋™์˜ํ•œ ๊ฒƒ์„ ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€ํ•˜๊ณ , ๋งˆ์ง€๋ง‰์— ์™„์ „ ๋ฐฐํฌํ•  ๋•Œ ์œ„ํ‚ค์— ๋„ฃ์–ด๋„ ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์™„์„ฑ์ด ๋˜์—ˆ์„ ๋–„ ๋„ฃ์œผ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์š”.

๐Ÿ“šย ์ •๋ฆฌ

  • ์šฉ์–ด์‚ฌ์ „์ง‘ ๋งŒ๋“ ๋‹ค.
  • ์šฐ๋ฆฌ๊ฐ€ ์šฉ์–ด๋ฅผ ์ง€์นญํ•˜๊ณ , ์ด์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์ ๋Š”๋‹ค.
  • ๋…ธ์…˜์˜ ๋ฃจํŠธ์— ํ•ญ๋ชฉ์„ ๋งŒ๋“ค๊ณ  ์ง€์†์ ์œผ๋กœ ์—…๋ฐ์ดํŠธ ํ•œ๋‹ค.
  • ์ตœ์ข…๋ณธ์ด ๋‚˜์™”์„ ๊ฒฝ์šฐ์— ๊ทธ๋•Œ ๊ฐ€์„œ ์œ„ํ‚ค์— ์ถ”๊ฐ€ํ•œ๋‹ค. (๊ทธ ์ „๊นŒ์ง€๋Š” ๋ณด๋ฅ˜)

โœ๏ธย ํšŒ์˜๋ก ์ž๋™ํ™”์— ๋Œ€ํ•œ ๋…ผ์˜

๐Ÿ—ฃ๏ธ๋‚ดย ํด๋กœ๋ฐ”๋…ธํŠธ์˜ ์‚ฌ์šฉ์— ๋Œ€ํ•œ ๋…ผ์˜

  • @ํ˜œ์ธ ์ • :: ๋‚ด์ผ๋ถ€ํ„ฐ ์ œ๊ฐ€ ํด๋กœ๋ฐ” ๋…ธํŠธ๋กœ ํ•ด๋ณผ๊ฒŒ์š”. ์ œ๊ฐ€ ์ผ์„๋–„๋Š” ํ•œ์ฐฝ ๋‚˜์™”์„๋–„๋ผ ๋‹ค ๋ฌด๋ฃŒ์˜€๋Š”๋ฐ, ์š”์•ฝ๊นŒ์ง€๋Š” ํฌ๋ ˆ๋”ง์ด ์žˆ์–ด์•ผํ•˜๋Š”์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์–ด์š”.
  • @Zen :: ๋Œ€ํ™”๋ณธ์ด ์ „๋ถ€๋‹ค ์ ํ˜€์žˆ์—ˆ์œผ๋ฉด ํ•ฉ๋‹ˆ๋‹ค. โ†’ GPT ์š”์•ฝ์ด ํ›จ์”ฌ ๋‚˜์•„์„œโ€ฆ ๋„ค์ด๋ฒ„์—๊ฒ ๋ฏธ์•ˆํ•˜์ง€๋งŒโ€ฆ
    • @Zen :: Claude, GPT ๋‘˜๋‹ค ๊ฒฐ์ œํ•˜๋ ค๊ตฌ์š”.
    • @Zen :: ๋‚ด์ผ๊นŒ์ง€๋Š” ์ด๋ ‡๊ฒŒ ์ ๊ธฐ๋„ ํ•˜๊ณ , ํด๋กœ๋ฐ” ๋…ธํŠธ๋„ ์‚ฌ์šฉ. ๋Œ€์‹ ์— ๋งŒ์•ฝ์— ํด๋กœ๋ฐ”๋…ธํŠธ๊ฐ€ ์ž˜ ์ ์–ด์ง€๋ฉด ๋ชจ๋ž˜๋ถ€ํ„ฐ๋Š” ๊ทธ๋ƒฅ ํด๋กœ๋ฐ”๋…ธํŠธ๋งŒ. ์ด๋ ‡๊ฒŒ.

๐Ÿ“šย ์ •๋ฆฌ

  • ํด๋กœ๋ฐ” ๋…ธํŠธ ์‚ฌ์šฉํ•œ๋‹ค.
  • 2024๋…„ 11์›” 05์ผ ํ™”์š”์ผ์— ํด๋กœ๋ฐ”๋…ธํŠธ ์‚ฌ์šฉ ๋ฐ ์ง€๊ธˆ์ฒ˜๋Ÿผ ํšŒ์˜๋ก ์ž‘์„ฑ์„ ํ•˜๋ฉด์„œ, ํด๋กœ๋ฐ”๋…ธํŠธ๊ฐ€ ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ๋ชฉ์ ๋Œ€๋กœ ๋™์ž‘ํ•˜๋Š”์ง€ ํ…Œ์ŠคํŠธํ•œ๋‹ค.
  • ํด๋กœ๋ฐ”๋…ธํŠธ๋Š” ์š”์•ฝ์ด ์•„๋‹Œ, ํšŒ์˜๋ก ์ ๋ฌธ์„ ์ ๋Š” ๊ธฐ๋Šฅ์„ ๋ชฉ์ ์œผ๋กœ ํ•œ๋‹ค.

  • ์ ์‹ฌ์‹œ๊ฐ„ : 11์‹œ 45๋ถ„ ~ 13์‹œ 00๋ถ„๊นŒ์ง€
  • ์žฅ์†Œ : Zep

๐Ÿ“ย ์˜คํ›„ ํšŒ์˜ ์•ˆ๊ฑด

โœ๏ธย ๋ชจ๋…ธ๋ ˆํฌ์— ๊ด€ํ•œ ๋…ผ์˜

  1. ๋ชจ๋…ธ๋ ˆํฌ์— ๋Œ€ํ•œ ๊ฐœ๋… ์ผ์น˜
  1. ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์„ฑ์„ ์–ด๋–ป๊ฒŒ ํ• ์ง€
  2. ์ž๋™ํ™” ๋„๊ตฌ ๋ญ์“ธ์ง€

๐Ÿ—ฃ๏ธย ๋ชจ๋…ธ๋ ˆํฌ์— ๋Œ€ํ•œ ๊ฐœ๋… ์ผ์น˜

@Zen :: ๋ชจ๋…ธ๋ ˆํฌ๊ฐ€ ๊นŠ๊ฒŒ ๋“ค์–ด๊ฐ€๋ฉด ์ง„์งœ ๋ณต์žกํ•œ๋ฐ, ๊ฐ„๋‹จํ•˜๊ฒŒ ์จ๋ณด๋ ค๋ฉด ์–ด๋Š์ •๋„๋ฉด ๋ ๊นŒ์š”?

@ํ˜œ์ธ ์ • ์ „์— ์ด์•ผ๊ธฐํ–ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ, ๋ฐฑ์—”๋“œ ํ”„๋ก ํŠธ ํ•จ๊ป˜ ํ•œ ๋””๋ ‰ํ† ๋ฆฌ์— ๋„ฃ์€ ๊ฒƒ

@์ฃผ์› ๊น€ :: ์ง€๊ธˆ๊นŒ์ง€ ํ•ด์˜จ ๊ฒƒ์ฒ˜๋Ÿผ ์Šฌ๋ž™์— ์ •๋ฆฌํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ์ •๋ฆฌํ•˜๋ ค๊ณ , ๋ชจ๋…ธ๋ ˆํฌ๋ฅผ ํ•˜๋ผ๊ณ  ํ•œ ๊ฒŒ ์•„๋‹๊นŒ ์‹ถ์—ˆ๋‹ค. ๊ธฐ์ˆ ์  ๋„์ „๋ณด๋‹ค๋Š” ๋ ˆํฌ ์•ˆ์— ํ”„๋ก ํŠธ์•ค๋“œ ๋ฐฑ์•ค๋“œ ํด๋”๊ฐ€ ์žˆ์œผ๋ฉด ๋˜์ง€ ์•Š์„๊นŒ ์‹ถ๋‹ค.

@ํ˜œ์ธ ์ • :: fe, be๊ฐ€ ๋…๋ฆฝ์ ์œผ๋กœ

-root

-FE

-package.json

-tsconfig

-BE

-package.json

-.git

  • eslint

  • prettier

-husky

-package.json โ‡’ eslint ์„ค์น˜ + prettier ์„ค์น˜ + ๊ด€๋ จํ•ด์„œ ํ™˜๊ฒฝ์„ค์ • ๋ฐ์ดํ„ฐ๋“คโ€ฆ

  • ์ง„์งœ ๊ณตํ†ต์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ ์™ธ์—๋Š” ์•„๋ฌด๊ฒƒ๋„ ๋“ค์–ด๊ฐ€์ง€ ์•Š๊ฒŒ ํ•˜์ž.
  • ์‹คํ–‰ ๊ถŒํ•œ์„ ๋‹ค์‹œํ•œ๋ฒˆ ์ฃผ์ž

-readme.md

@์ฃผ์› ๊น€ :: ์›๋ž˜ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋”ฐ๋กœ ํ•ด์•ผํ•˜๋Š” ๋ฐ ํ•˜๋‚˜๋งŒ ์งœ์•ผํ•˜๋Š” ๊ตฌ์กฐ๋กœ ์ƒ๊ฐํ–ˆ๋‹ค.

@Zen :: ๋‘˜ ๋‹ค ๋…๋ฆฝ์ ์ธ ํ”„๋กœ์„ธ์Šค, git์ปค๋ฐ‹์„ ์ œ์™ธํ•˜๊ณ ๋Š” ์•„์˜ˆ ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘, cdํ–ˆ์„๋•Œ ๊ฐ๊ฐ ๋””๋ ‰ํ† ๋ฆฌ ๋“ค์–ด๊ฐ€์„œ ์กฐ์ž‘, ์ปจ๋ฒค์…˜๋„ ๊ฐ๊ฐ ๋”ฐ๋กœ? ์ธ๊ฐ€์š”โ€ฆ?

@ํ˜œ์ธ ์ • :: ๊ณตํ†ต๋˜๋Š” ๊ฑด eslint ๊ฐ™์€ ์„ค์ • FE, BE

๐Ÿ“šย ์ •๋ฆฌ

ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ
โ”‚
โ”œโ”€โ”€ README.md                   # ํ”„๋กœ์ ํŠธ ์ „๋ฐ˜์ ์ธ ์„ค๋ช…, ์„ค์ • ๋ฐฉ๋ฒ• ๋“ฑ
โ”œโ”€โ”€ package.json                # ๋ฃจํŠธ ๊ณตํ†ต ํŒจํ‚ค์ง€ ๋ฐ ์Šคํฌ๋ฆฝํŠธ ๊ด€๋ฆฌ
โ”œโ”€โ”€ .eslintrc.js                # ๊ณตํ†ต ESLint ์„ค์ •
โ”œโ”€โ”€ .prettierrc                 # ๊ณตํ†ต Prettier ์„ค์ •
โ”œโ”€โ”€ ignore ํŒŒ์ผ๋“ค(.gitignore ๋“ฑ)  # ๋ฌด์‹œ ํŒŒ์ผ ์„ค์ •
โ”‚
โ”œโ”€โ”€ FE                          # ํ”„๋ก ํŠธ์—”๋“œ ํŒจํ‚ค์ง€
โ”‚   โ”œโ”€โ”€ package.json            # ํ”„๋ก ํŠธ์—”๋“œ ์ „์šฉ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ
โ”‚   โ”œโ”€โ”€ tsconfig.json           # ํ”„๋ก ํŠธ์—”๋“œ ์ „์šฉ TypeScript ์„ค์ • (๋ฃจํŠธ ์„ค์ •์„ ํ™•์žฅ)
โ”‚   โ”œโ”€โ”€ src                     # FE ์ฝ”๋“œ๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ํด๋”
โ”‚   โ”‚   โ””โ”€โ”€ index.tsx           # FE ์‹œ์ž‘ ํŒŒ์ผ
โ”‚   โ””โ”€โ”€ ...                     # ๊ธฐํƒ€ FE ๊ด€๋ จ ํŒŒ์ผ ๋ฐ ํด๋”
โ”‚
โ”œโ”€โ”€ BE                          # ๋ฐฑ์—”๋“œ ํŒจํ‚ค์ง€
โ”‚   โ”œโ”€โ”€ package.json            # ๋ฐฑ์—”๋“œ ์ „์šฉ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ
โ”‚   โ”œโ”€โ”€ src                     # BE ์ฝ”๋“œ๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ํด๋”
โ”‚   โ”‚   โ””โ”€โ”€ index.js            # BE ์‹œ์ž‘ ํŒŒ์ผ
โ”‚   โ””โ”€โ”€ ...                     # ๊ธฐํƒ€ BE ๊ด€๋ จ ํŒŒ์ผ ๋ฐ ํด๋”
โ”‚
โ””โ”€โ”€ .husky                      # Husky๋ฅผ ํ†ตํ•œ Git Hook ๊ด€๋ฆฌ
    โ”œโ”€โ”€ pre-commit              # ์ปค๋ฐ‹ ์ „์— ์‹คํ–‰ํ•  ์Šคํฌ๋ฆฝํŠธ (ESLint, Prettier ๋“ฑ)
    โ””โ”€โ”€ ...                     # ๊ธฐํƒ€ Husky ๊ด€๋ จ ์„ค์ • ํŒŒ์ผ

โœ๏ธย ๋ธŒ๋ Œ์น˜ ์ „๋žต์— ๋Œ€ํ•œ ๋…ผ์˜

  1. ๋ธŒ๋žœ์น˜ ์–ด๋–ป๊ฒŒ ๋ช…๋ช…ํ• ์ง€
  1. ๋ฒ„์ „๊ด€๋ฆฌ ์–ด๋–ป๊ฒŒ ํ• ์ง€
  2. ๋ฐฐํฌ์ „๋žต
  3. ์ปค๋ฐ‹ ๊ด€๋ จ๋œ ๋ฉ”์„ธ์ง€ ๋‚ด์šฉ๋“ค์€ ์–ด๋–ป๊ฒŒ ํ• ์ง€(๋ธŒ๋ Œ์น˜ ์ „๋žต์—์„œ ๋…ผ์˜ํ•ด๋„ ๋ฌด๋ฐฉ)

๐Ÿ—ฃ๏ธย ๋ธŒ๋ Œ์น˜ ์ „๋žต ์ƒ๊ฐํ•ด์˜ค์‹ ๊ฒŒ ์žˆ๋‚˜์š”?

@ํ˜œ์ธ ์ • deploy, develop (dev), feature/ , fix/ (๊นƒ ํ”Œ๋กœ์šฐ)

@๋™์œจ ์ด :: ๊นƒํ—ˆ๋ธŒ ํ”Œ๋กœ์šฐ, ๊นƒํ”Œ๋กœ์šฐ ๋‘๊ฐ€์ง€ ์ „๋žต์„ ์•Œ์•„๋ณด์•˜๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๋ชจ๋“ˆํ™”๋„ ์ƒ๊ฐํ•˜๊ณ  ์žˆ๊ณ , ์•ˆ์ •์„ฑ๋„ ์ƒ๊ฐํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ๋‹ค. ์ด๋Ÿฐ ๋ถ€๋ถ„ ์ž˜ ํ•˜๋ ค๋ฉด ์‹œ๊ฐ„ ์กฐ๊ธˆ ๋“ค๋”๋ผ๋„ Git Flow ์จ์„œ develop ๋“ฑ์„ ์จ์„œ ํ•˜๋Š”๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ ํ•˜๋Š” ์ƒ๊ฐ์„ ํ–ˆ๋‹ค.

@์ฃผ์› ๊น€ :: ๊นƒํ”Œ๋กœ์šฐ๊ฐ€ ๋‚˜์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

[GIT] ๐Ÿ“ˆ ๊นƒ ๋ธŒ๋žœ์น˜ ์ „๋žต ์ •๋ฆฌ - Github Flow / Git Flow

์šฐ๋ฆฐ Git-flow๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด์š” | ์šฐ์•„ํ•œํ˜•์ œ๋“ค ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

๐Ÿ“šย ์ •๋ฆฌ

  • ๊นƒํ”Œ๋กœ์šฐ ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ โ†’ ํ•™์Šต์ด ์ข€ ํ•„์š”ํ• ๊ฑฐ ๊ฐ™์œผ๋‹ˆ ์ด๊ฑด ๋ณธ๊ฒฉ์ ์œผ๋กœ ์ฝ”๋“œ์ž‘์„ฑ ๋“ค์–ด๊ฐ€๊ธฐ์ „์— ์ด์•ผ๊ธฐ (ํ™˜๊ฒฝ์„ค์ •๋•Œ)

๐Ÿ—ฃ๏ธย  ๋ธŒ๋ Œ์น˜ ๋ช…๋ช… ์ „๋žต์€ ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€?

image

  • ์ž๋ฃŒ์ถœ์ฒ˜ : ์ธํŒŒ๋‹˜ ๋ธ”๋กœ๊ทธ
  • @Zen :: feature-fe-[์ด์Šˆ๋‚˜ ํ…Œ์Šคํฌ๋ช…]-[์„ธ๋ถ€๋‚ด์šฉ] ์ด๋Ÿฐ์‹์œผ๋กœ ์ ์–ด๋ณด๋ฉด ์–ด๋–จ๊นŒ์š”?
  • @ํ˜œ์ธ ์ • :: feature/fe/[์ด์Šˆ๋‚˜ ํ…Œ์Šคํฌ๋ช… ๋„˜๋ฒ„๋ช…]-[๋‚ด์šฉ]-[์„ธ๋ถ€ ๋‚ด์šฉ], ๋ถ„๋ฆฌ๊ฐ€ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ด์„œ ์ด๋ ‡๊ฒŒ ํ‘œ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค.
  • @Zen :: /๊ฐ€ ์ข‹์€๊ฑฐ ๊ฐ™์•„์š”.

๐Ÿ“šย ์ •๋ฆฌ

  • [git flow ๋ช…๋ช…]/[fe/be]/[์ด์Šˆ๋‚˜ ํ…Œ์ŠคํŠธ์˜ ๋„˜๋ฒ„๋ง]-[๋‚ด์šฉ]-[์„ธ๋ถ€๋‚ด์šฉ]
  • ์˜ˆ: feature/fe/01-๋กœ๊ทธ์ธ-UI๊ตฌํ˜„

๐Ÿ—ฃ๏ธย ๋ฒ„์ „๊ด€๋ฆฌ

0.0.1 ๋“ฑ๊ณผ ๊ด€๋ จ๋œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

  • @Zen :: ๋งค์ฃผ ๋ฐฐํฌ๋ฅผ ํ•ด์•ผํ•˜๋Š”๋ฐโ€ฆ ์ด๊ฑธ ๋งˆ์ด๋„ˆ๋กœ ์ทจ๊ธ‰ํ•œ๋‹ค๊ณ  ์น˜๋ฉด 0.1๋กœ ๊ฐˆ๊ฑด์ง€ ์ด๋Ÿฐ๊ฑฐโ€ฆ?
  • @ํ˜œ์ธ ์ • :: ์•„์ง์€ ๊ฐœ๋ฐœ ๋‹จ๊ณ„๋ผ์„œ 6์ฃผ์ฐจ ์™„์„ฑ์ด ๋๋‚˜๊ณ  ๋ฒ„์ „์ด ๊ทธ๊ฒŒ 0.0.0์ด ๋˜๊ณ  6์ฃผ ์ดํ›„์— ๋ฒ„์ „ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ํ•ด์•ผํ•˜์ง€ ์•Š์„๊นŒ ํ•˜๋Š” ์ƒ๊ฐ์ด ๋“ญ๋‹ˆ๋‹ค.
  • @์ฃผ์› ๊น€ :: ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด์„œ ์™„์„ฑ์ด ๋˜๊ณ  ์ˆ˜์ •ํ•˜๋ฉด์„œ ๊ธฐ๋Šฅ์„ ๋Š˜๋ ค์•ผ ๋ฒ„์ „์ด ์˜ฌ๋ผ๊ฐ€๋Š”๊ฒŒ ๋งž์ง€ ์•Š๋‚˜ ์‹ถ์–ด์„œ 6์ฃผ ์ดํ›„์— ๋ฒ„์ „์ด ์˜ฌ๋ผ๊ฐ€๋Š”๊ฒŒ ๋งž์ง€ ์•Š๋‚˜ ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.
  • @๋™์œจ ์ด :: ๊ฐœ๋ฐœ์ด ๋๋‚˜๊ณ  ํ•˜๋Š” ๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๐Ÿ“šย ์ •๋ฆฌ

  • ๋ฒ„์ „๊ด€๋ฆฌ๋Š” ๊ฐœ๋ฐœ์ด ๋๋‚˜๊ณ  ๋ถ€ํ„ฐ ์ƒ๊ฐ. ์ฆ‰, ๊ฐœ๋ฐœ์ด ๋๋‚œ ์‹œ์ ์ด 0.0.0์œผ๋กœ ์ทจ๊ธ‰. (๋‚˜์ค‘์— ์ •ํ™•ํ•œ ๋ฒ„์ „์€ ์ƒ๊ฐ)
  • ๋ฆฌํŒฉํ† ๋ง ์ง์ „์— ๋‹ค์‹œ ๋…ผ์˜

HeadVer - ๊ธฐ๋ฏผํ•œ ํ”„๋กœ๋•ํŠธ ํŒ€์„ ์œ„ํ•œ ์ƒˆ๋กœ์šด ๋ฒ„์ €๋‹ ์‹œ์Šคํ…œ

  • ์ฐธ๊ณ ์ž๋ฃŒ

๐Ÿ—ฃ๏ธย ๋ฐฐํฌ ์ „๋žต

  • @Zen :: Git Flow ์ „๋žต ์“ฐ๊ธฐ๋กœ ํ•œ ์ด์ƒ ๋ฐฐํฌ๋Š” Master๊ฐ€ ์—…๊ทธ๋ ˆ์ด๋“œ ๋˜์—ˆ์„ ๋•Œ ํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • @ํ˜œ์ธ ์ • :: ๊ธˆ์š”์ผ๋งˆ๋‹ค ํ•˜๋Š”๊ฑฐ์— ๊ตณ์ด ํž˜์„ ์Ÿ์„ ํ•„์š”๋Š” ์—†์–ด์„œ develop ๋ธŒ๋ Œ์น˜๋ฅผ ๋ณด์—ฌ์ค˜๋„ ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • @Zen :: ์ €ํฌ ๊ทธ๋Ÿฌ๋ฉด master์— ์˜ฌ๋ ค์„œ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์€ 6์ฃผ ์ดํ›„์ธ๊ฐ€์š”?
    • @ํ˜œ์ธ ์ • :: ์ฒ˜์Œ์— ๊ณ„์† master์— ์˜ฌ๋ฆฌ๋Š” ๊ฑด ํฌ๊ฒŒ ์˜๋ฏธ๊ฐ€ ์—†์„ ๊ฒƒ ๊ฐ™์•„์š”. ๊ทธ๋•Œ ํ•ด๋„ ๊ดœ์ฐฎ์•„ ๋ณด์—ฌ์š”. 4์ฃผ์ฐจ ๊ธˆ์š”์ผ ํ˜น์€ 5์ฃผ์ฐจ๋ถ€ํ„ฐ ๋ฐฐํฌ ์‹œ์ž‘ํ•ด์„œ ์˜ค๋ฅ˜๋‚˜ ์ด์Šˆ ๋Œ€์‘
    • @์ฃผ์› ๊น€ :: ๋ฆฌํŒฉํ† ๋ง ๊ธฐ๊ฐ„์„ ๊ธฐ์ ์œผ๋กœ ํ•ด์„œ ๋ฆฌํŽ™ํ† ๋ง ์ง์ „์— master์— ์˜ฌ๋ฆฌ๊ณ , ๊ทธ ๋‹ค์Œ์— ๋ฆฌํŒฉํ† ๋ง ํ•˜๋ฉด์„œ ๊ทธ๋•Œ๋ถ€ํ„ฐ ๊ณ„์† maseter ์— ์—…๋ฐ์ดํŠธ๋œ ๊ฑธ ์˜ฌ๋ ค๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์š”.
  • @Zen :: ๋ฒ„์ „๋„ ๋‚˜์˜ค๋„ค์š”. ๋ฆฌํŒฉํ† ๋ง ์ง์ „์„ ๊ธฐ์ ์œผ๋กœ ์ด๋•Œ๋ถ€ํ„ฐ ๋ฒ„์ „๊ด€๋ฆฌ ๋“ค์–ด๊ฐ€๋ฉด ๋˜๊ณ˜๋„ค์š”!

๐Ÿ“šย ์ •๋ฆฌ

  • Development ๋ธŒ๋ Œ์น˜๋ฅผ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ์™„๋ฃŒ ๋๋‚˜๊ธฐ ์ „๊นŒ์ง€ ํ™œ์šฉ (5์ฃผ์ฐจ ์ „๊นŒ์ง€ ๋๋‚ด๊ธฐ)
  • ๊ฐœ๋ฐœ ๋๋‚˜๋ฉด master์— ์˜ฌ๋ฆผ
  • ๊ทธ๋•Œ๋ถ€ํ„ฐ ๋ฒ„์ „๊ด€๋ฆฌ ํ•˜๋ฉด์„œ ๋ฆฌํŒฉํ† ๋ง ์‹œ์ž‘

๐Ÿ—ฃ๏ธย ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€๋Š” ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€?

ํƒœ๊ทธ ์ด๋ฆ„ ์„ค๋ช…
Feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ๊ฒฝ์šฐ
Fix ๋ฒ„๊ทธ๋ฅผ ๊ณ ์นœ ๊ฒฝ์šฐ
Design CSS ๋“ฑ ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ๋ณ€๊ฒฝ
!BREAKING CHANGE ์ปค๋‹ค๋ž€ API ๋ณ€๊ฒฝ์˜ ๊ฒฝ์šฐ
!HOTFIX ๊ธ‰ํ•˜๊ฒŒ ์น˜๋ช…์ ์ธ ๋ฒ„๊ทธ๋ฅผ ๊ณ ์ณ์•ผํ•˜๋Š” ๊ฒฝ์šฐ
Style ์ฝ”๋“œ ํฌ๋งท ๋ณ€๊ฒฝ, ์„ธ๋ฏธ ์ฝœ๋ก  ๋ˆ„๋ฝ ๋“ฑ ์ฝ”๋“œ ์ˆ˜์ •์ด ์—†๋Š” ๊ฒฝ์šฐ
Refactor ํ”„๋กœ๋•์…˜ ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
Comment ํ•„์š”ํ•œ ์ฃผ์„ ์ถ”๊ฐ€ ๋ฐ ๋ณ€๊ฒฝ
Docs ๋ฌธ์„œ๋ฅผ ์ˆ˜์ •ํ•œ ๊ฒฝ์šฐ
Test ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€, ํ…Œ์ŠคํŠธ ๋ฆฌํŒฉํ† ๋ง
Chore ๋นŒ๋“œ ํ…Œ์ŠคํŠธ ์—…๋ฐ์ดํŠธ, ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒฝ์šฐ (ํ”„๋กœ๋•์…˜ ์ฝ”๋“œ ๋ณ€๊ฒฝ X)
Rename ํŒŒ์ผ ํ˜น์€ ํด๋”๋ช…์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…๋งŒ์ธ ๊ฒฝ์šฐ
Remove ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•œ ๊ฒฝ์šฐ
  • @Zen :: ํ•œ๊ธ€ ์˜๋ฌธ ์ •๋„๋งŒ ํ†ต์ผํ•ฉ์‹œ๋‹ค. ์˜๋„๋Š” ๋ญ์—ฟ๋ƒ๋ฉด, Feat(FE-taskNumber): ~~~~
  • @Zen :: Docs(Storybook):
  • @ํ˜œ์ธ ์ • ์ „ ํ•œ๊ธ€ ํ•œํ‘œ์š”

@ํ˜œ์ธ ์ • ์ด๋Ÿฐ๋Š‘๋ฏธ

[FE][Feat] #1 : ๋กœ๊ทธ์ธ UI ๊ตฌํ˜„

- OAuth ์—ฐ๋™
- ํšŒ์›๊ฐ€์ž…๊ณผ ๋กœ๊ทธ์ธ ๋กœ์ง ๊ตฌํ˜„
- ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ํผ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„
[FE][Feat][Fix] #1 : ๋กœ๊ทธ์ธ UI ์ˆ˜์ •

- OAuth ์—ฐ๋™
- ํšŒ์›๊ฐ€์ž…๊ณผ ๋กœ๊ทธ์ธ ๋กœ์ง ๊ตฌํ˜„
- ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ํผ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„
  • description์€ ์„ ํƒ, ๋งŒ์•ฝ ์“ธ๊ฑฐ๋ผ๋ฉด - ์ •๋„๋Š” ๋ถ™์ด๊ธฐ, ์ œ๋ชฉ ๋‹ค์Œ์— ํ•œ์ค„ ๋„๊ณ  ์ž‘์„ฑ

๐Ÿ“šย ์ •๋ฆฌ

  • ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€๋Š” ํ•œ๊ธ€๋กœ ์ž‘์„ฑํ•˜๊ธฐ

  • ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€ ํ˜•์‹์€ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ทœ์ •์„ ๋”ฐ๋ฅธ๋‹ค.

    • [FE/BE][ํƒœ๊ทธ ์ด๋ฆ„] #{ํ…Œ์Šคํฌ ๋„˜๋ฒ„} : ๋กœ๊ทธ์ธ UI ๊ตฌํ˜„
      • ํƒœ๊ทธ ์ด๋ฆ„์€ ์—ฌ๋Ÿฌ๊ฐœ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
    • description์€ ์„ ํƒ, ๋งŒ์•ฝ ์“ธ๊ฑฐ๋ผ๋ฉด - ์ •๋„๋Š” ๋ถ™์ด๊ธฐ, ์ œ๋ชฉ ๋‹ค์Œ์— ํ•œ์ค„ ๋„๊ณ  ์ž‘์„ฑ
    • ๊ทธ ์™ธ ์–‘์‹์€ ์ž์œ  ๋„ˆ๋ฌด ์ง€์ €๋ถ„ํ•˜์ง€๋งŒ ์•Š๊ฒŒโ€ฆ
    • ์‚ฌ์šฉ ์˜ˆ์‹œ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.
    [FE][Feat] #1 : ๋กœ๊ทธ์ธ UI ๊ตฌํ˜„
    
    - OAuth ์—ฐ๋™
    - ํšŒ์›๊ฐ€์ž…๊ณผ ๋กœ๊ทธ์ธ ๋กœ์ง ๊ตฌํ˜„
    - ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ํผ ์ปดํฌ๋„ŒํŠธ ๊ตฌํ˜„
  • husky์จ์„œ pushํ• ๋•Œ๋„ ๊ฒ€์‚ฌํ•˜๋„๋ก ์„ค์ •

โœ๏ธย ์ปจ๋ฒค์…˜์— ๋Œ€ํ•œ ๋…ผ์˜

โ–ธ ESLint ์„ค์ • โ–ธ Prettier ์„ค์ • โ–ธ TSConfig ์„ค์ • โ–ธ React ๊ด€๋ จ ์ปจ๋ฒค์…˜ ์ด์•ผ๊ธฐ โ–ธ Tailwind ๊ด€๋ จ ์ปจ๋ฒค์…˜ ์ด์•ผ๊ธฐ

๐Ÿ—ฃ๏ธย ESLint ์–ด๋–ค ์Šคํƒ€์ผ๋กœ?

@Zen, @ํ˜œ์ธ ์ •, @์ฃผ์› ๊น€, @๋™์œจ ์ด :: ์ด๋ฏธ ์žˆ๋Š”๊ฑฐ npm์—์„œ ๋‹ค์šด๋ฐ›์•„์„œ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜์ž.

@Zen :: ์ด๋ฏธ์žˆ๋Š”๊ฑฐ์— ๋ช‡๊ฐ€์ง€๋งŒ +a

๐Ÿ“šย ์ •๋ฆฌ

GitHub - airbnb/javascript: JavaScript Style Guide

npm: eslint-config-airbnb

  • Airbnb Style Guide๋กœ ๊ฐ€๊ณ , ๊ทธ์™ธ ์„ธ๋ถ€ ์„ค์ •์€ React ๊ฐ€์ด๋“œ ์“ฐ๊ธฐ ๋ณด๋‹ค๋Š” ๊ฑ ์šฐ๋ฆฌ๊ฐ€ ์ •ํ•˜๊ธฐ

npm: eslint-config-airbnb-typescript

๐Ÿ—ฃ๏ธย React ๊ด€๋ จ๋œ ์ฝ”๋”ฉ ์Šคํƒ€์ผ ์ปจ๋ฒค์…˜

๐Ÿ“šย ์ •๋ฆฌ

export default function Div() { // @์ฃผ์›, @๋™๋ฅ  ์ด
	...
}

export function Div() { // 
	...
}

export const Div = () => { // @Zen, @ํ˜œ์ธ ์ •
	...
}
  • @Zen :: 3๋ฒˆ์ธ ์ด์œ 
    1. ํ˜ธ์ด์ŠคํŒ… ๋ฌธ์ œ (ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋Š” ํ˜ธ์ด์ŠคํŒ…์—์„œ ์ž์œ ๋กญ๋‹ค.)
    2. export default๋ฅผ ์“ฐ๊ฒŒ๋˜๋ฉด ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ž…์žฅ์—์„œ ๋ช…๋ช…์„ ๋ง˜๋Œ€๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Œ. โ†’ export๋„ ์•ˆ๋˜๋Š” ๊ฑด ์•„๋‹ˆ์ง€๋งŒ ๋ณ„๋„์˜ ์š”๊ตฌ์‚ฌํ•ญ์ด ์žˆ๋Š”๋ฐ, export default๋Š” ๋ณ€์ˆ˜์— ์• ์ดˆ์— ๋‹ด์•„๋ฒ„๋ฆด ์ˆ˜ ์žˆ์Œ. TS์“ฐ๋Š” ์˜๋„์™€ ์–ด๊ธ‹๋‚จ.
  • 3๋ฒˆ์œผ๋กœ ๊ฒฐ์ •
export const Div = ({prop1, prop2, ...}) => {
	...
}

export const Div = (props: IProps) => {
	const {prop1, prop2} = props;
	...
}

export const Div = (props: IProps) => {
	props.prop;
	props.prop2;
	...
}
  • @Zen :: 2๋ฒˆ, 3๋ฒˆ ์ค‘ ์–ด๋Š ๊ฒƒ์œผ๋กœโ€ฆ?
    1. @ํ˜œ์ธ ์ • :: ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ ์ผ์„ ๋–„ interface ๊ฐ€ ์ง๊ด€์ ์œผ๋กœ ๋ณด์ธ๋‹ค.
    2. @Zen :: props๊ฐ€ ์–ด๋””์—์„œ ์“ฐ์ด๋Š”์ง€ ์ •ํ™•ํžˆ ํŒŒ์•…์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • @ํ˜œ์ธ ์ • :: ๋‘˜๋‹ค ํ• ๋‹น ์•ˆํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค.
  • 2, 3๋ฒˆ ์„ž์–ด์„œ ์“ฐ๊ธฐ๋กœ ๊ฒฐ์ •. props ๋งŒ ์ธ์ž๋กœ ์ œ๋Œ€๋กœ ๋ฐ›์•„์˜ค์ž.
interface
  • ๋‹ค ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์‚ฌ์šฉ
  • ์•ž์— I ๋ถ™์ด๊ธฐ. (PascallCase)
  • props ์“ธ๋•Œ ๋ช…๋ช…๊ทœ์น™์€ I{์ปดํฌ๋„ŒํŠธ๋ช…}Props
    • ์˜ˆ: ICustomComponentProps

๐Ÿ—ฃ๏ธย Prettier ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€?

๐Ÿ“šย ์ •๋ฆฌ

npm: eslint-plugin-prettier

  • ์œ„์—๊ฑฐ ์“ฐ์ž.

๐Ÿ—ฃ๏ธย Tailwind ์ปจ๋ฒค์…˜

๐Ÿ“šย ์ •๋ฆฌ

npm: eslint-plugin-tailwindcss

  • ์œ„์—๊ฑฐ ์”์‹œ๋‹ค.

๐Ÿ—ฃ๏ธย ๋ณ€์ˆ˜๋ช… ์ปจ๋ฒค์…˜

๐Ÿ“šย ์ •๋ฆฌ

  • ์ƒ์ˆ˜
    • ์Šคํฌ๋ฆฌ๋ฐ ์Šค๋„ค์ดํฌ ์ผ€์ด์Šค(Screaming Snake Case)
  • ๋ณ€์ˆ˜
    • camel case
  • ํ•จ์ˆ˜๋ช…
    • ๋™์‚ฌ+๋ช…์‚ฌ

https://github.com/ParkSB/javascript-style-guide

  • ์ฐธ๊ณ ํ•˜๊ธฐ

๐Ÿ“ย ๋ฐฑ๋กœ๊ทธ ์„ค์ •

image

  • ์ •๋ฐฉํ˜• ์‚ฌ์ง„ ์˜ค๋Š˜๊นŒ์ง€ ๋ณด๋‚ด์ฃผ์„ธ์š” (readme ์ˆ˜์ •ํ•ด๋‘˜๊ฒŒ์š”)
Clone this wiki locally