๐Ÿง‘โ€๐Ÿซ ๋ฉ˜ํ† ๋ง ์ผ์ง€ - boostcampwm-2022/web17-waglewagle GitHub Wiki

ํ‚ฅ์˜คํ”„๋ฏธํŒ…

๋ฐฑ์—”๋“œ์—์„œ ์–ด๋–ค ๊ฒƒ์„ ํ”„๋กœ์ ํŠธ ๋ชฉํ‘œ๋กœ ํ•ด์•ผํ• ๊นŒ?

  • ์ธํ”„๋ผ๊ฐ€ ์ข‹์ง€ ์•Š์„๊นŒ? But, ์ด๊ฑด ๋ฐฑ์—”๋“œ์˜ ์œ ์˜๋ฏธํ•œ ํ‚ค์›Œ๋“œ๋ฅผ ๋ชจ๋ฅด๋Š” ๊ฒƒ์ผ ์ˆ˜๋„ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ์‹ ์ž…์—๊ฒŒ ์ธํ”„๋ผ์ ์ธ ์ง€์‹์„ ์š”๊ตฌํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค. ํ˜„์—… ๊ฒฝํ—˜์ด ์ค‘์š”ํ•œ ํฌ์ง€์…˜ ์ค‘ ํ•˜๋‚˜. โ‡’ ์‹ ์ž…์—๊ฒŒ๋Š” ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ๊ธฐ์ดˆ ์—ญ๋Ÿ‰, CS ์ง€์‹, ๋„คํŠธ์›Œํฌ ๊ธฐ๋ณธ ์—ญ๋Ÿ‰๋“ฑ์„ ๋” ์ค‘์š”ํ•˜๊ฒŒ ๋ณด๋ฉฐ, ์ด๊ฒƒ์ด ์‚ฌ์‹ค ์ธํ”„๋ผ์™€ ์—ฐ๊ด€์ด ๋งŽ๋‹ค.

    โ‡’ ๊ธฐ์ˆ ์ ์ธ ๋‚œ์ด๋„๊ฐ€ ๋†’์ง€ ์•Š๋”๋ผ๋„, ์ฝ”๋“œ๋ฅผ ๊พธ์ค€ํžˆ ๋ฆฌํŒฉํ† ๋ง ํ•˜๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ๋ฅผ ๊พธ์ค€ํžˆ ํ•œ ๊ฒฝํ—˜์ด ๋” ์ค‘์š”ํ•˜๋‹ค.

    โ‡’ ์ฝ”๋”ฉ์„ ์ž˜ํ•˜๋Š”์ง€. ๋ฐฉ์น˜๋˜์ง€ ์•Š๊ณ  ์ฝ”๋“œ๋ฅผ ์œ ์ง€/๋ณด์ˆ˜ ํ•˜๊ณ  ์žˆ๋Š”๊ฐ€?

    โ‡’ ๋ฐฑ์—”๋“œ์˜ ํŠน์ • ์˜์—ญ์˜ ์ „๋ฌธ์„ฑ์„ ๋ณด์—ฌ์ฃผ๊ธฐ ๋ณด๋‹ค๋Š”, ํ˜„์žฌ ํ”„๋กœ์ ํŠธ๋‚˜ ์ฝ”๋“œ์˜ ํ’ˆ์งˆ์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ๋…ธ๋ ฅ์„ ๋ณด์—ฌ์ฃผ๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค. CS๋‚˜ DB ์—ญ๋Ÿ‰์€ ๊นŠ์ด ๋“ค์–ด๊ฐ€๊ธฐ๋ณด๋‹ค๋Š” ์ „๊ณต ์ง€์‹ ์ˆ˜์ค€์—์„œ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ด ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

๋„คํŠธ์›Œํฌ๋‚˜ DB ์—ญ๋Ÿ‰์˜ ์ดˆ์ 

โ‡’ DB๋Š” ์งˆ์˜๋ฌธ, ๋„คํŠธ์›Œํฌ๋Š” ๋ฐ์ดํ„ฐ์˜ ํ๋ฆ„. ์›น ์ „๋ฐ˜์ด ์–ด๋–ค ์‹์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š”์ง€ โ‡’ ๋ฉด์ ‘ ์งˆ๋ฌธ๋“ค์„ ํ•œ Depth ๋” ๋“ค์–ด๊ฐ”์„ ๋•Œ๊ฐ€ ์‹ค์ œ๋กœ ์ง€์›์ž ํŒ๋‹จ์˜ ๊ธฐ์ค€์ด ๋œ๋‹ค.

โ‡’ ํ”„๋ก ํŠธ๋„ ๊ฐ™์„๊นŒ์š”?

โ‡’ ํ”„๋ก ํŠธ / ๋ฐฑ ๋ชจ๋‘ ์‹ ์ž… ๋•Œ ์š”๊ตฌ๋˜๋Š” ์—ญ๋Ÿ‰์€ ๋น„์Šทํ•˜๋‹ค. ๊ธฐ์ˆ ์ด ๋‹ค๋ฅธ ๊ฒƒ์ผ ๋ฟ ์—ญ๋Ÿ‰์€ ๋น„์Šทํ•˜๋‹ค. ์ฑ„์šฉ๊ณผ์ •์—์„œ ๋ฐฑ์—”๋“œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ…Œ์ŠคํŠธ๋ฅผ ๋ณด๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋” ๋งŽ๊ณ , ํ”„๋ก ํŠธ๋Š” ๊ณผ์ œ๋ฅผ ๋ณด๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋” ๋งŽ๋‹ค.

ํŒ€ ํ”„๋กœ์ ํŠธ ์ฃผ์ œ์˜ ๋ฐฉํ–ฅ์„ฑ๋„ ์ „๋ฌธ์„ฑ์ด ์•„๋‹ˆ๋ผ ์œ ์ง€๋ณด์ˆ˜๋‚˜ ์ฝ”๋”ฉ ์Šต๊ด€์œผ๋กœ ์ •ํ•ด์•ผํ• ๊นŒ์š”?

โ‡’ ์„ ํƒํ•˜๊ธฐ ๋‚˜๋ฆ„. ํŒ€ ํ”„๋กœ์ ํŠธ์—์„œ๋งŒ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝํ—˜์ด ์žˆ๋‹ค. ์œ ์ง€๋ณด์ˆ˜๋‚˜ ์ฝ”๋”ฉ ์Šต๊ด€์„ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ์ •ํ•  ํ•„์š”๋Š” ์—†์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ‡’ ํ”„๋กœ์ ํŠธ ๋ณผ๋ฅจ์ด ์ปค์„œ ๋งˆ๊ฐ๊นŒ์ง€ ๋นก๋นกํ•˜๊ฒŒ ๊ตฌํ˜„์„ ํ•˜๋Š”๊ฑด ์ง€์–‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

โ‡’ ์ฃผ์ œ๋ณด๋‹ค๋Š” ๊ณผ์ •์ด ๋” ์ค‘์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค. ๋„๋ฉ”์ธ์„ ์–ด๋–ป๊ฒŒ ํ’€์–ด๋ƒˆ๋Š”์ง€, ์–ด๋–ค ๊ณ ๋ฏผ์„ ํ–ˆ๋Š”์ง€ ๋ณด์—ฌ์ฃผ๊ธฐ.

์—ญํ•  ๋ถ„๋‹ด์„ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฒŒ ์ข‹์„๊นŒ์š”?

โ‡’ ๋ณดํ†ต์€ ํฐ ๊ธฐ๋Šฅ ๋‹จ์œ„๋กœ ๋‚˜๋ˆˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ•œ ์‚ฌ๋žŒ์ด ํ•˜๋‚˜๋ฅผ ์ž‘์—…ํ•˜๊ธฐ ๋ณด๋‹ค๋Š” ์—ฌ๋Ÿฟ์ด ์ž‘์—…(์˜ˆ๋ฅผ ๋“ค์–ด ํ”„๋ก ํŠธ ๋ฐฑ์—”๋“œ์˜ ํ˜‘์—…)ํ•ด๋ณด๋Š”๊ฒŒ ์ข‹์ง€ ์•Š์„๊นŒ ์‹ถ๋‹ค.

ํ”„๋ก ํŠธ / ๋ฐฑ์—”๋“œ๊ฐ€ ํ˜‘์—…ํ•  ๋•Œ, ๋งž๋‹ฟ๋Š” ๋ถ€๋ถ„์˜ ํ˜‘์˜๋ฅผ ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”?

  • ์นผ ๊ฐ™์ด ์ •ํ•œ๋‹ค vs ์ง„ํ–‰ํ•˜๋ฉด์„œ ์ •ํ•œ๋‹ค.

โ‡’ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์กฐ๊ธˆ์”ฉ ๋‹ค๋ฅด๋‹ค. ๋ณดํ†ต์€ ๋Œ€๋žต์ ์œผ๋กœ ์ •ํ•ด๋†“๋Š”๋‹ค. ์–ด๋–ค ํ†ต์‹  ๊ทœ์•ฝ์„ ์“ฐ๋Š”์ง€์— ๋”ฐ๋ผ์„œ๋„ ๋‹ค๋ฅด๋‹ค.

  • ์ฃผ๊ณ  ๋ฐ›์„ ๋ฐ์ดํ„ฐ ํ˜•์‹?

โ‡’ ์ฃผ๋กœ ๋ฐฑ์—”๋“œ์— ์˜ํ•ด์„œ ๊ฒฐ์ •์ด ๋œ๋‹ค. ํ”„๋ก ํŠธ์—์„œ ํŠน์ •ํ•œ ์š”๊ตฌ์‚ฌํ•ญ์ด ์—†๋‹ค๋ฉด ๋ฐฑ์—”๋“œ์—์„œ ๊ฐœ๋ฐœํ•ด์„œ ํ”„๋ก ํŠธ์—๊ฒŒ ์ „๋‹ฌํ•ด์ค€๋‹ค.

โ‡’ ๊ธฐ๋Šฅ ์˜์กด์„ฑ์€ ๊ธฐ๋Šฅ๋ณ„๋กœ ํ•ด๊ฒฐํ•ด์•ผํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ํ•  ๋•Œ ๊ผญ ํ”ผํ•ด์•ผ ํ•  ๊ฒƒ

โ‡’ git ์‚ฌ์šฉํ•  ๋•Œ, remote์— ์˜ฌ๋ผ๊ฐ€๋Š” ์ฝ”๋“œ๋ฅผ rebaseํ•˜๊ณ  push ํ•˜๊ฑฐ๋‚˜ force push ํ•˜๋ฉด ์•ˆ๋œ๋‹ค.

โ‡’ ์ž‘์—…ํ•˜๋‹ค๊ฐ€ pull ๋ฐ›์œผ๋ ค๊ณ  ํ–ˆ๋”๋‹ˆ ์—„์ฒญ๋‚˜๊ฒŒ ๊ผฌ์ด๊ฒŒ ๋œ๋‹ค. remote์— ์˜ฌ๋ผ๊ฐ€๋Š” ์ฝ”๋“œ๋Š” rebaseํ•ด์„œ ํ•˜๋ฉด ์•ˆ๋˜๊ณ , ์ƒˆ๋กœ์šด ์ปค๋ฐ‹์œผ๋กœ ๋งŒ๋“ค์–ด์„œ push ํ•ด์•ผํ•œ๋‹ค.

๊ธฐํš / ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์ œ์™ธํ•œ 4์ฃผ์— ์œ ์ง€๋ณด์ˆ˜๋ฅผ ํ•˜๋Š”๊ฒŒ ์ข‹์„๊นŒ์š”?

โ‡’ ์ค‘๊ฐ„์ค‘๊ฐ„ ํ•˜๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทผ๋ฐ ํ•˜๋‹ค๋ณด๋ฉด ์–ด์ฉ” ์ˆ˜ ์—†์ด ํ•˜๊ฒŒ ๋œ๋‹ค.

๋ฐฐํฌ์˜ ์ ์ • ์ˆ˜์ค€

โ‡’ ํ”Œ๋žซํผ์ด ๋ฌด์—‡์ธ๊ฐ€? : nCloud ์จ์•ผํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ AWS ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ˜„์—…์—์„œ ๋Œ€๋ถ€๋ถ„ ์“ฐ๋ฉฐ, ๊ตฌํ˜„ํ•  ๋•Œ ์ฐธ๊ณ ์ž๋ฃŒ๋‚˜ best practice๊ฐ€ ๋งŽ๋‹ค.

โ‡’ ์‚ฌ๋žŒ์ด ์ˆ˜๋™์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰์‹œ์ผœ์•ผํ•˜๋Š” ์ •๋„๋งŒ ์•„๋‹ˆ๋ฉด ๊ดœ์ฐฎ์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ‡’ github action์œผ๋กœ ์ž๋™ ๋ฐฐํฌ. k8s๋ฅผ ๊ผญ ์“ธ ํ•„์š”๋Š” ์—†์„ ๊ฒƒ ๊ฐ™๋‹ค.

๋„๊ตฌ(github actions๋“ฑ) ์‚ฌ์šฉ ๊ฒฝํ—˜์ด ์ค‘์š”ํ• ๊นŒ์š”?

โ‡’ ๋ฌธ์ œ ํ•ด๊ฒฐ์˜ ๊ฒฝํ—˜(๋ฐฐํฌ ์ž๋™ํ™” ๋“ฑ)์ด ๋” ์ค‘์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค.

โ‡’ ์šฐ๋ฆฌ๊ฐ€ ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ๊ฐ€์กŒ๊ณ , ๊ทธ๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ์„ ํƒํ–ˆ๋‹ค๋ผ๋Š” ํ๋ฆ„์ด ๋งž๋‹ค.

โ‡’ ๊ฑฐ๊ธฐ์— ๋Œ€ํ•ด์„œ, ์—ฌ๋Ÿฌ ๋„๊ตฌ๊ฐ€ ์žˆ๋Š”๋ฐ ์™œ ๊ผญ ๊ทธ ๋„๊ตฌ๋ฅผ ์„ ํƒํ–ˆ๋Š”์ง€์— ๋Œ€ํ•œ ๊ทผ๊ฑฐ๋ฅผ ์„ค๋ช…ํ•˜๋Š”๊ฒŒ ๋งž์„ ๊ฒƒ ๊ฐ™๋‹ค.

์–ด๋–ค ์ฃผ์ œ๋ฅผ ํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฌด๊ด€ํ•˜๊ฒ ๋‹ค๋Š” ๋ง์”€์ด ๋งž์„๊นŒ์š”?

โ‡’ ๋„๊ตฌ๋ฅผ ๊ฒฐ์ •ํ•จ์— ์žˆ์–ด์„œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์„ ํƒ์ง€๋ฅผ ๋น„๊ตํ•ด๋ณด๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๊ฒ ๋‹ค.

ํ”„๋กœ์ ํŠธ ๋ณผ๋ฅจ์„ ์œ„ํ•ด, feature list๋ฅผ ์–ด๋””๊นŒ์ง€ ์ž๋ฅด๋Š”๊ฒŒ ์ข‹์„๊นŒ์š”?

โ‡’ ์—ญ๋Ÿ‰์— ๋”ฐ๋ผ ๋‹ค๋ฅผ ๊ฒƒ ๊ฐ™๋‹ค. ๋‚ด๊ฐ€ ์ƒ๊ฐํ•œ ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„ * 1.5๋ฅผ ํ•ด๋ด…์‹œ๋‹ค.

โ‡’ ์ค‘๊ฐ„์ค‘๊ฐ„ ๋ฆฌํŒฉํ† ๋ง์„ ํ•œ๋‹ค๊ณ  ์น˜๋ฉด, 2์ฃผ ์ •๋„์— ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ„๋Ÿ‰์„ ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

ํ”„๋ก ํŠธ / ๋ฐฑ์„ ์ „์ฒด์ ์œผ๋กœ ๊ฒฝํ—˜ํ•ด๋ณด๊ธฐ vs ํ•œ ๋ถ„์•ผ๋ฅผ ๊ฒฝํ—˜ํ•ด๋ณด๊ธฐ

โ‡’ ํ•œ ๋ถ„์•ผ๋งŒ ๊ฒฝํ—˜ํ•ด๋„ ์ƒ๊ด€ ์—†์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ‡’ ๋ถ„์•ผ๋ฅผ ์–ด๋Š์ •๋„ ์ดํ•ดํ•˜๊ณ  ์žˆ๋‹ค. ๋ฅผ ๋ณด์—ฌ์ฃผ๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.

โ‡’ ํ’€์Šคํƒ์„ ๋ฝ‘๋Š” ๊ฒฝ์šฐ๋Š” ๋งŽ์ง€ ์•Š์•„์„œ ํ•œ ๋ถ„์•ผ์— ์ง‘์ค‘ํ•˜๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

๊ธฐ๋Šฅ์ด ๋‹ค์–‘ํ•œ ํ”„๋กœ์ ํŠธ vs ์ ์€ ๊ธฐ๋Šฅ์ด๋ผ๋„ ๊ธฐ๋Šฅ์˜ ๋””ํ…Œ์ผ์ด ๋†’์€ ํ”„๋กœ์ ํŠธ

โ‡’ ์™„์„ฑ๋„ ๋†’์€ ๊ธฐ๋Šฅ๊ณผ, ๊ทธ์— ๋‹ด๊ธฐ๋Š” ๊ธฐ์ˆ ์  ๊ณ ๋ฏผ์ด ๋” ์ค‘์š”ํ•˜๋‹ค.

์˜คํ”„๋ผ์ธ ๋ฏธํŒ…

๊ฑฐ์ฃผ ์ง€์—ญ

  • ๋ฉ˜ํ† ๋‹˜ : ์„ฑ์ˆ˜
  • ๋Œ€ํ˜ธ๋‹˜, ์Šน๋ฏผ๋‹˜ : ์„œ์šธ
  • ์„ฑํ˜„๋‹˜ : ํ•˜๋™
  • ๋‚˜ : ๋…ผ์‚ฐ

์ฃผ๋ง vs ํ‰์ผ

  • ์„ฑํ˜„๋‹˜ : ํ‰์ผ ์„ ํ˜ธ
  • ์Šน๋ฏผ๋‹˜ : ๋ฌด๊ด€
  • ๋Œ€ํ˜ธ๋‹˜ : ๋ฌด๊ด€
  • ๋ฉ˜ํ† ๋‹˜ : ํ‰์ผ ์ ์‹ฌ
  • ๋‚˜ : ํ‰์ผ ์ ์‹ฌ (์บ ํ”„ ์ผ์ • ์—†์„ ๋•Œ)

โ‡’ ๋ชฉ์š”์ผ (11์›” 10์ผ) ์ ์‹ฌ ์ฆˆ์Œ, ์„ฑ์ˆ˜

๋ฉ˜ํ† ๋‹˜ ํ•œ ๋งˆ๋””

โ‡’ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•จ์— ์žˆ์–ด์„œ ์ˆ˜๋งŽ์€ ๊ฐˆ๋“ฑ๊ณผ ๋ฌธ์ œ์— ๋ถ€๋”ชํžˆ๊ฒŒ ๋  ๊ฒƒ ๊ฐ™์€๋ฐ, ๋๊นŒ์ง€ ์ž˜ํ•ด๋‚ด์‹œ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

Week02. ๋ฉ˜ํ† ๋ง 2์ฃผ์ฐจ : ๊ธฐ์ˆ ์ ์ธ ๋„์ „์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

๐Ÿ›ค๏ธ๊ธฐ์ˆ ์Šคํƒ๊ณผ ๊ธฐํš ๋ฐฉํ–ฅ์ด ์ž˜๊ฐ€๊ณ  ์žˆ์„๊นŒ์š”?

๋ฐฑ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ

๐Ÿ’ก ๊ฒฐ๊ตญ ์Šคํ”„๋ง์„ ์„ ํƒํ•˜์…จ๊ตฐ์š”

์„ธ์…˜ vs JWT

๐Ÿ’ก refresh token์ด ๊ตณ์ด Redis๋ฅผ ์จ์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ ์ด์œ ๋Š” ๋ฌด์—‡์ด์‹ ๊ฐ€์š”?
  • JWT๋Š” ์„œ๋ฒ„์˜ ์ˆ˜ํ‰์  ํ™•์žฅ์— ๋” ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • session์€ ์—ฐ๊ฒฐ์„ฑ์ด ๋ณด์žฅ๋˜์–ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋‹ค๋ฅธ ์„œ๋ฒ„์™€ ์—ฐ๊ฒฐ๋˜์—ˆ์„ ๋•Œ ์ธ๊ฐ€๊ฐ€ ์–ด๋ ค์›Œ์งˆ ์ˆ˜ ์žˆ๋‹ค.
  • ์š”์ฆ˜ ํŠธ๋ Œ๋“œ๊ฐ€ ์„œ๋ฒ„๊ฐ€ ๋Š˜์–ด๋‚˜๋Š” ํŠธ๋ Œ๋“œ์ด๊ธฐ์—, JWT๋ฅผ ๊ณ ๋ คํ•ด๋ณด๋ฉด ์ข‹๊ฒ ๋‹ค.

ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ

๐Ÿ’ก Nextjs๋Š” React์™€ ํ•จ๊ป˜ ์”๋‹ˆ๋‹ค.
  • NextJS๋ฅผ ๊ธฐ์ˆ ์Šคํƒ์œผ๋กœ ์–ธ๊ธ‰ํ•  ๋•Œ React์™€ ํ•จ๊ป˜ ์“ฐ๊ธฐ

npm vs yarn

๐Ÿ’ก ์ง€๊ธˆ yarn์— ๋Œ€ํ•ด ์ ์–ด์ฃผ์‹  ๋‚ด์šฉ์€ yarn berry์— ๋Œ€ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.
  • yarn berry๋Š” ์•„์ง ํ˜ธํ™˜์„ฑ์ด ์•ˆ๋งž๋Š” ๊ฒƒ์ด ๋งŽ๊ณ , ํ”„๋ก ํŠธ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ๊ตณ์ด? ๋ผ๋Š” ์ƒ๊ฐ
  • yarn classic ๋„์ž…์€ ๊ณ ๋ คํ•ด๋ณผ๋งŒ ํ•˜๋‹ค. ๋” ๋นจ๋ผ์งˆ ๊ฒƒ์ž„.

ํ˜„์žฌ ํ”„๋กœ์ ํŠธ์—์„œ ๊ธฐ์ˆ ์ ์œผ๋กœ ํ•ต์‹ฌ์ ์ธ ๋ถ€๋ถ„์ด ๋ฌด์—‡์œผ๋กœ ๋ณด์ด์‹œ๋‚˜์š”?

๐Ÿ’ก ์ด ๋ถ€๋ถ„์„ ๋จผ์ € ํ™•์‹คํžˆํ•˜๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ ์บ ํผ๋ถ„๋“ค๊ป˜์„œ๋Š” ์–ด๋–ค ๋ถ€๋ถ„์ด ํ•ต์‹ฌ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋‚˜์š”?
  • ํ”„๋ก ํŠธ์—”๋“œ : ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”, ์„ฑ๋Šฅ ์ธก์ •
  • ๋ฐฑ์—”๋“œ : ์‹ค์‹œ๊ฐ„์„ฑ ๋ณด์žฅ

โ‡’ ์ฐจ๋ณ„ํ™”๊ฐ€ ์—†์–ด๋ณด์ž…๋‹ˆ๋‹ค.

๐Ÿ’ก ์ตœ๋Œ€ํ•œ ๊ธฐ์ˆ ์ ์œผ๋กœ coreํ•œ ๊ฒƒ์„ ์ฐจ๋ณ„ํ™”๋ฅผ ๊ณ ๋ คํ•ด์„œ ์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ฒƒ๋“ค์€ core์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ด ๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋ฐฑ๋กœ๊ทธ์˜ ๋งˆ๊ฐ๊ธฐํ•œ

๐Ÿ’ก ๋งˆ๊ฐ๊ธฐํ•œ์ด ์—†์œผ๋ฉด ์ด๊ฒƒ์ €๊ฒƒ ์กฐ๊ธˆ์”ฉ ๊ฑด๋“œ๋ฆฌ๊ฒŒ ๋˜๊ณ , ๊ทธ๋Ÿผ ํ”„๋กœ์ ํŠธ๊ฐ€ ํšจ์œจ์ ์œผ๋กœ ์ง„ํ–‰๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ—์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ์— ๋งˆ๊ฐ๊ธฐํ•œ ์—ด์ด ์ˆจ๊น€์œผ๋กœ ๋˜์–ด์žˆ์–ด์„œ ๋ฐœ์ƒํ–ˆ๋˜ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์˜ค๋ฅ˜์˜€์ง€๋งŒ, ์œ ์˜๋ฏธํ•œ ํ”ผ๋“œ๋ฐฑ์ด๋ผ๊ณ  ์ƒ๊ฐ๋˜์–ด์„œ ์ ์–ด๋‘์—ˆ์Šต๋‹ˆ๋‹ค.

โ“QnA

div vs Canvas vs Svg

๐Ÿ’ก ์„ฑ๋Šฅ๊ณผ ์ธํ„ฐ๋ž™์…˜์ด ์ฃผ์š” ๊ธฐ์ค€์ด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • div, canvas, svg๋ฅผ ์ •์ ์œผ๋กœ ๋น„๊ตํ•œ ์‹คํ—˜์ž๋ฃŒ๋Š” ์‹ ๋น™์„ฑ์ด ๋–จ์–ด์ง„๋‹ค. canvas๋ฅผ ๋‹จ์ˆœํ•˜๊ฒŒ ์“ด๋‹ค๋ฉด ๋น ๋ฅด์ง€๋งŒ canvas API์˜ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด ๋Š๋ ค์งˆ ๊ฒƒ.
๐Ÿ’ก ๊ฐ๊ฐ์„ ์–ด๋–ป๊ฒŒ react์Šค๋Ÿฝ๊ฒŒ ๋…น์—ฌ๋‚ผ ๊ฒƒ์ธ๊ฐ€์— ๋Œ€ํ•ด์„œ ๊ณ ๋ฏผ์ด ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • ์ด๋Ÿฐ ๋งฅ๋ฝ์—์„œ slido๋Š” div๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.
  • ๋‹ค์–‘ํ•œ case์— ๋Œ€ํ•ด์„œ ๋™์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์–ด์•ผํ•˜๋Š”๋ฐ, svg๋ณด๋‹ค div๊ฐ€ ๊ทธ๊ฒƒ์— ์šฉ์ดํ•  ๊ฒƒ ๊ฐ™๋‹ค.

๊ธฐ์ˆ ์  core๋Š” ๋ฌด์—‡์„ ๊ณ ๋ คํ•˜๋ฉด ์ข‹์„๊นŒ์š”?

๐Ÿ’ก ์–ดํ•„ํ•  ์ˆ˜ ์žˆ๋Š” ์ฐจ๋ณ„ํ™”๋œ ๊ธฐ์ˆ ์  ํฌ์ธํŠธ

โ—๊ธฐ์ˆ ์  core์˜ ๋‚œ์ด๋„์™€ ์˜๋ฏธ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ง์ž‘ํ•˜์ง€ ๋ชปํ•˜๊ณ  ์žˆ์Œ.

  • ์˜ˆ๋ฅผ ๋“ค์–ด, ์ง€๊ธˆ ์ƒํƒœ๋ผ๋ฉด socket ์„œ๋ฒ„๋ฅผ ์ฆ์„คํ•œ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ, ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์„œ๋กœ ๋‹ค๋ฅธ ์†Œ์ผ“ ์„œ๋ฒ„์˜ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•˜๋Š” ๊ฒƒ์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€? โ‡’ ๊ธฐ์ˆ ์ ์ธ ๋„์ „
  • ๋‹ค๋งŒ ์ด๋Ÿฐ ์ธํ”„๋ผ์ ์ธ ๋„์ „์€ ์–ด๋Š์ •๋„ ์ •๋‹ต์ด ์ •ํ•ด์ ธ์žˆ๋Š” ๋ฌธ์ œ ๊ฐ™๋‹ค.
  • ํ˜„์žฌ๋Š” ์ •๋‹ต์„ ์ •ํ•ด๋†“๊ณ  ์ซ“์•„๊ฐ€๋Š” ๋Š๋‚Œ์ด๋‹ค.
  • ์‹ ์ž…์ด ๊ฒฝํ—˜ํ–ˆ๋‹ค๋ฉด ์ธ์ƒ์ ์ด๊ฒ ์ง€๋งŒ, ์ฝ”๋“œ๋ฅผ ๋” ์ž˜์น˜๋Š” ์‚ฌ๋žŒ์„ ๋ฝ‘์„ ๊ฒƒ ๊ฐ™๋‹ค.

์–ด๋–ค ๊ฒƒ์ด ๋ฐฑ์—”๋“œ์˜ ๊ธฐ์ˆ ์  ๋„์ „์ผ๊นŒ์š”?

๐Ÿ’ก CRUD๋ฅผ ๋ฒ—์–ด๋‚œ ๋ณต์žกํ•œ ์ž‘์—…๋“ค (์ด๊ฒŒ ๊ฐ€๋Šฅํ• ๊นŒ? ์‹ถ์€ ๊ฒƒ๋“ค)

โ—์˜ˆ๋ฅผ ๋“ค์–ด, ๋…ธ์ฝ”๋“œ๋กœ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ํˆด์„ ๋งŒ๋“ ๋‹ค๊ณ  ์ƒ๊ฐํ•ด๋ณธ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•  ๊ฒƒ์ธ๊ฐ€?

  • ๋‹จ์ˆœํ•œ CRUD๋ณด๋‹ค๋Š” ๋ชปํ•˜๋”๋ผ๋„ ๊ธฐ์ˆ ์ ์ธ ๋„์ „์„ ํ•ด๋ณธ ์‚ฌ๋žŒ์„ ๋” ๋ฝ‘๊ณ  ์‹ถ์„ ๊ฒƒ ๊ฐ™๋‹ค.

๐Ÿ’ก ๊ธฐ์ˆ ์ ์ธ ๋„์ „๊ณผ ์ฒ˜์Œ์จ๋ณด๋Š” ๊ธฐ์ˆ  ์Šคํƒ์„ ์จ๋ณด๋Š” ๊ฒƒ์€ ๋‹ค๋ฅด๋‹ค. ๊ธฐ์ˆ ์ ์ธ ๋„์ „์€ โ€˜์ฝ”๋“œ์ ์ธ ๋„์ „โ€™์ด๋‹ค.

  • ๋…ธ๋™์ด ์•„๋‹ˆ๋ผ ์ฝ”๋“œ์ ์ธ ๋„์ „์ด ํ•„์š”ํ•˜๋‹ค.

Java์™€ JS๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค ๊ณต์œ 

๐Ÿ’ก API์˜ response body๋ฅผ ๋ฏธ๋ฆฌ ๊ฒฐ์ •ํ•˜๊ณ  ์ถœ๋ฐœํ•˜๋Š” ๊ฒƒ์ด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์•ผ ๋ณ‘๋ ฌ ๊ฐœ๋ฐœ์ด ๊ฐ€๋Šฅํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • JSON์˜ ์Šคํ‚ค๋งˆ๋ฅผ ๋ฏธ๋ฆฌ ์ •ํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค.
  • API ๋ช…์„ธ๋ฅผ ๋งŒ๋“ค ๋•Œ๋Š” ํ…Œ์ด๋ธ”๋กœ ๋งŒ๋“ค๊ธฐ๋ณด๋‹ค๋Š” OpenAPI๋ฅผ ์“ฐ๋ฉด ์ข‹๋‹ค. Swagger ๋“ฑ์—์„œ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์ข‹๋‹ค.
  • ๋ช…์„ธ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋ฉด ๋ฐฑ์—”๋“œ ์ฝ”๋“œ๊ฐ€ ํฌ๊ฒŒ ๋ฐ”๋€Œ์–ด์•ผํ•  ์ˆ˜ ์žˆ๋‹ค.

Java ๊ฐ์ฒด ์ƒ์„ฑ ํŒจํ„ด์€ ์–ด๋–ค๊ฑธ ์“ฐ๋Š”๊ฒŒ ์ข‹์„๊นŒ์š”?

๐Ÿ’ก Setter๋ฅผ ์ง€ํ–ฅํ•˜๊ณ , Builder์™€ Factory๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ์ฒด๋Š” ์ƒ์„ฑ๋œ ๋’ค์—๋Š” ๋ณ€๊ฒฝ์„ ์ตœ๋Œ€ํ•œ ์ง€์–‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.
  • ๋นŒ๋”๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ ์ดํ›„์—๋Š”, ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.
  • ๋ณ€์ˆ˜, ํŠนํžˆ ๊ฐ์ฒด๋Š” ์ตœ๋Œ€ํ•œ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

Nginx์™€ Apache ๋ชจ๋‘ ๊ฒฐ๊ตญ์€ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ ์•„๋‹Œ๊ฐ€์š”?

๐Ÿ’ก ํ•˜๋“œ์›จ์–ด ๋ถ€๋ถ„์˜ ์ฒ˜๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ, ์ผ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.
  • ์•„ํŒŒ์น˜๋Š” ๋งค๋ฒˆ ์“ฐ๋ ˆ๋“œ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ฒฐ๊ตญ ์“ฐ๋ ˆ๋“œ ํ’€์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ์“ฐ๋ ˆ๋“œ๊ฐ€ ์ œํ•œ๋˜์–ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๊ณ , ์ด๊ฑธ ๋„˜์–ด๊ฐ€๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ?
  • Apache โ‡’ Nginx๋Š” Java โ‡’ Webflux์˜ ๊ด€๊ณ„์™€ ๋™์ผํ•˜๋‹ค.

์ €ํฌ๊ฐ€ ๊ฐ€๊ณ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ ๋ฐฉํ–ฅ์€ ๋ถ€์ŠคํŠธ์บ ํ”„์—์„œ ์ƒ๊ฐํ•˜๋Š” ํ”„๋กœ์ ํŠธ์˜ ๋ฐฉํ–ฅ๊ณผ ๊ฐ™์„๊นŒ์š”?

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

๐Ÿ ๋งˆ๋ฌด๋ฆฌ

์บ ํผ๋ถ„๋“ค์€ ์ฒ˜์Œ ํ”„๋กœ์ ํŠธ ์‹œ์ž‘๊ณผ ์ง€๊ธˆ์—์„œ ๋ฌด์–ธ๊ฐ€ ์ฐจ์ด๊ฐ€ ์ƒ๊ธฐ์…จ๋‚˜์š”?

๐Ÿ’ก ๋‹น์žฅ ํ•œ ์‹œ๊ฐ„์ „๊ณผ๋„ ๋‹ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹คโ€ฆ. **๋„ค. ๊ทธ๊ฒŒ ํ˜„์‹ค์ž…๋‹ˆ๋‹ค.**
  • ํ˜‘์—…ํ•˜๋Š” ๊ฒƒ์€ ์–ด๋ ค์šด ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์‹ค๋ฌด๋„ ๊ทธ๋Ÿฐ๊ฐ€์š”?

    โ‡’ ๋„ค. ๊ทธ๊ฒŒ ํ˜„์‹ค์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ์ˆ ์„ ์ •์˜ ๋ชจ๋“  ์ด์œ ๋ฅผ ๋‚˜๋ˆ„๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ, ์ƒ๊ฐ๋ณด๋‹ค ์ •๋ง ์„ธ์„ธํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊นŒ์ง€ ๋‚˜๋ˆ„๋Š”๊ฒŒ ์–ด๋ ต๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. svgr(next์—์„œ svg๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฒ˜๋ฆฌํ•ด์ฃผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ) ๊ฐ™์€ ๊ฒฝ์šฐ๊ฐ€ ๊ทธ๋žฌ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ๊ด€์ ์œผ๋กœ ๋ณด์•˜์„ ๋•Œ, ์ž˜ํ•˜๊ณ  ๊ณ„์‹  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๐Ÿ’ก ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜๋„ ์ข‹๊ณ , ์—ด์‹ฌํžˆ ํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์ง€๋งŒ ์ž˜ํ•˜๋Š”๊ฒŒ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ—ฃ๏ธ ๋ฉ˜ํ† ๋ง ์ดํ›„ ๋…ผ์˜ : ๊ธฐ์ˆ ์ ์ธ ๋„์ „ ๋ฐฉํ–ฅ ์ˆ˜์ •

๐Ÿ’ก 1. ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™” (ํ‚ค์›Œ๋“œ ๊ฐœ์ˆ˜์— ๋Œ€ํ•œ ์‹œ๊ฐํ™”, ํ‚ค์›Œ๋“œ ์—ฐ๊ด€๊ด€๊ณ„ ๊ณ„์‚ฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜, ํ‚ค์›Œ๋“œ ์—ฐ๊ด€๊ด€๊ณ„์— ๋”ฐ๋ฅธ ์‹œ๊ฐํ™”, ํ‚ค์›Œ๋“œ ์ž๋™์™„์„ฑ, ํ‚ค์›Œ๋“œ ์ถ”์ฒœ) 2. ๊ทผ๊ฑฐ์žˆ๋Š” ์„ฑ๋Šฅ ๊ฐœ์„  (FE ์›น ํŽ˜์ด์ง€ ์ฒด๋ฅ˜์‹œ๊ฐ„ ๋„๊ตฌ - ๋ณ‘๋ชฉํ˜„์ƒ ํŒŒ์•… ๊ฐ€๋Šฅ, ๋ผ์ดํŠธํ•˜์šฐ์Šค, ์„œ๋ฒ„ ๋ถ€ํ•˜ํ…Œ์ŠคํŠธ - ๋งŽ์€ ํด๋ผ์ด์–ธํŠธ์—์„œ ํ‚ค์›Œ๋“œ ์ถ”์ฒœ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค๋ฉด?, ์ด์— ๋”ฐ๋ผ ์„ฑ๋Šฅ ๊ฐœ์„ )

Day 5.5. ๋ฉ˜ํ† ๋ง ์ดํ›„ ํšŒ์˜๋ก

Week03. ๋ฉ˜ํ† ๋ง 4ํšŒ์ฐจ : ์‹ธ๋Š˜ํ•˜๋‹ค

โ“ node๋Š” mysql๊ณผ ๊ถํ•ฉ์ด ์•ˆ๋งž๋‚˜์š”?

โ‡’ ์œ ์˜๋ฏธํ•œ ์ฐจ์ด๋Š” ์•„๋‹ˆ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

โ‡’ ์ดˆ๋‹น ์ฒ˜๋ฆฌ๋Ÿ‰์ด nodeJS๊ฐ€ ์šฐ์›”ํ•ฉ๋‹ˆ๋‹ค.

โ“ ์„œ๋ฒ„์˜ ์–ธ์–ด๊ฐ€ ๋‹ค๋ฅธ๊ฑด ์„ฑ๋Šฅ์ƒ์˜ ๋ฌธ์ œ๊ฐ€ ์žˆ์„๊นŒ์š”?

โ‡’ ์„ค๊ณ„์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

โ“ ๋ฆฌ์•กํŠธ๊ฐ€ canvas์˜ context๋ฅผ VDOM์—์„œ ๊ธฐ์–ตํ• ๊นŒ์š”?

โ‡’ ๋ฆฌ์•กํŠธ๋ฅผ ์“ด๋‹ค๋ฉด ์™ ๋งŒํ•˜๋ฉด Canvas API๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ๋งŒ์•ฝ ์“ด๋‹ค๋ฉด canvas ctx๋ฅผ ref๋“ฑ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ref vs state vs DOM API

โ‡’ ref๋Š” DOM์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ’์„ ๊ฐ€์ง„๋‹ค.

โ‡’ ์ง์ ‘ VDOM์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์—†๋‹ค. ๋‹ค๋งŒ ๋ฆฌ์•กํŠธ ์ปดํฌ๋„ŒํŠธ ์ž์ฒด๋ฅผ ์ฐธ์กฐ๊ฐ’์œผ๋กœ ๋ฐ›์•„์˜จ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ๋ ์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค. ref๋Š” ์ฐธ์กฐ๊ฐ’์„ life cycle๋กœ ๋‹น๊ฒจ์˜ค๋Š” ๊ฒƒ์ด๋‹ค.

โ‡’ ์š”์ƒˆ๋Š” state๋‚˜ ref, redux๋„ ์—†์ด ์„œ๋ฒ„ ์ƒํƒœ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

โ“ react query์™€ ์„œ๋ฒ„์ƒํƒœ๋Š” ๋‹ค๋ฅธ๊ฑธ๊นŒ์š”?

โ‡’ ์ค‘์•™๊ด€๋ฆฌํ•  ํ•„์š”๊ฐ€ ์—†์„ ๋ฟ์ด๋‹ค.

โ“ ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™” ๋ฒ„๋ธ”์ฐจํŠธ vs ์›Œ๋“œ ํด๋ผ์šฐ๋“œ

โ‡’ ๊ธ€์ž๋Š” ๋‹ค์–‘ํ•œ ์‹œ๊ฐํ™”๊ฐ€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๋ฒ„๋ธ”์ฐจํŠธ๋Š” ํ•œ์ •์ ์ด์ง€ ์•Š์„๊นŒ์š”?

โ“ ๋ฌผ๋ฆฌ์—”์ง„ vs ๋ ˆ์ด์•„์›ƒ์œผ๋กœ ๋ฐฐ์น˜

โ‡’ ๊ตฌํ˜„์˜ ์˜์—ญ์ด ์•„๋‹๊นŒ? ์ฐจํŠธ๋กœ ๋Š๊ปด์ง€์ง€ ์•Š๊ฒŒ๋”, ์ฐจํŠธ๋กœ ๋ณด์—ฌ์ค„ ๋•Œ๋ถ€ํ„ฐ ๋™์ ์ธ ์‹œ๊ฐํ™”๋ฅผ ์ฃผ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ์–ด๋–ค ์‹์œผ๋กœ ์ธํ„ฐ๋ž™์…˜์„ ์ค„ ๊ฒƒ์ธ์ง€ ๊ณ ๋ฏผํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ์›น์†Œ์ผ“์ด HTTP ๋ฐฉ์‹๋ณด๋‹ค ๋ถ€์กฑํ•œ ๊ฒƒ์ด ์—†๋Š” ๊ฒƒ ๊ฐ™์€๋ฐ, ๋‹จ์ ์ด ๋ฌด์—‡์ผ๊นŒ์š”?

โ‡’ ์†Œ์ผ“์€ ์—ฐ๊ฒฐ์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฌผ๋ฆฌ์  ์ปค๋„ฅ์…˜์˜ ์ œ์•ฝ์ด ์ƒ๊ธธ ์ˆ˜ ๋ฐ–์— ์—†๋‹ค.

โ‡’ ์„œ๋ฒ„ ์ฆ์„ค๋กœ ์„œ๋ฒ„ ๋Œ€์ˆ˜๊ฐ€ ๋Š˜๊ฑฐ๋‚˜ ์ค„๋•Œ๋„ ๋ฌธ์ œ์ด๋‹ค. ์ด ๋•Œ ์›น์†Œ์ผ“์„ ์“ฐ๋ฉด ์ค‘๊ฐœ์„œ๋ฒ„๊ฐ€ ํ•„์š”ํ•ด์ง„๋‹ค. ๊ทธ๋ž˜์„œ ์ฐจ๋ผ๋ฆฌ HTTP Polling์„ ์‚ฌ์šฉํ•œ๋‹ค.

โ‡’ ์žฅ์•  ๋Œ€์‘๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ด๋‹ค.

โ‡’ ์ตœ๊ทผ HTTP/3๋ฅผ ํ†ตํ•ด์„œ handshake๋‚˜ header๋กœ ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฒ„ํ—ค๋“œ ๋ฌธ์ œ๋„ ํ•ด๊ฒฐ๋˜์—ˆ๋‹ค.

โ“ Polling ๊ฐ„๊ฒฉ์€ ์–ด๋Š์ •๋„๊ฐ€ ์ ์ ˆํ• ๊นŒ์š”?

โ‡’ ์„œ๋น„์Šค๋งˆ๋‹ค ๋‹ค๋ฅผ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ SSE๋ณด๋‹ค HTTP Polling์ด ๋‚˜์„๊นŒ์š”?

โ‡’ SSE๋Š” ๋‹จ๋ฐฉํ–ฅ์ด๋ผ์„œ ๋น„๊ต ๋Œ€์ƒ์ด ์•„๋‹Œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ๋ฐœํ–‰๊ตฌ๋…์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š”๊ฑด ์•ˆ๋ ๊นŒ์š”?

โ‡’ ์œ ์ €์˜ ๊ณ ์œ ๊ฐ’์„ ๊ฐ€์ ธ์•ผํ•˜๋Š”๋ฐ, ์›น์ด ์ด๊ฒƒ์„ ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค.

โ‡’ ๋ฐœํ–‰๊ตฌ๋…์œผ๋กœ ํ•˜๋Š” ๊ฒƒ์€ ์„œ๋ฒ„๋ผ๋ฆฌ ํ†ต์‹ ์—์„œ๋„ ๋งŽ์ด ์“ด๋‹ค.

โ“ ์ €ํฌ๋Š” ํŒ€ํ”„๋กœ์ ํŠธ๋ผ๋Š” ์ด์ ์„ ์ถฉ๋ถ„ํžˆ ์‚ด๋ฆฌ๊ณ  ์žˆ์„๊นŒ์š”?

โ‡’ pivot ํ•œ๋‹ค๋ฉด ์–ด๋–ค ์‹์œผ๋กœ ๋ฉ”๋ฆฌํŠธ๋ฅผ ์ค„์ง€ ๊ณ ๋ฏผํ•ด๋ณด๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

๐Ÿฅฒ ์Šฌํ”ˆ์ผ์ž…๋‹ˆ๋‹ค.

โ‡’ ์•„์‰ฝ์ง€๋งŒ ํ˜„์‹ค์ž…๋‹ˆ๋‹ค. ๋ฐ›์•„๋“ค์ด์„ธ์š”.

โ“ ์‹ ์ž…์€ ๊ฐ™์ด ์ผํ•  ์‚ฌ๋žŒ์„ ๋ฝ‘๋‚˜์š” ๊ฐ€๋ฅด์น  ์‚ฌ๋žŒ์„ ๋ฝ‘๋‚˜์š”?

โ‡’ ๊ณต์ฑ„๋Š” ๊ฐ€๋ฅด์น  ์‚ฌ๋žŒ, ์ˆ˜์‹œ๋Š” ์ผํ•  ์‚ฌ๋žŒ์„ ๋ฝ‘์Šต๋‹ˆ๋‹ค.

โ“ ์ด๋ ฅ์„œ์—์„œ ๊นƒํ—™, ๋…ธ์…˜, ๋งํฌ๋ฅผ ๋ณด์‹œ๋‚˜์š”?

โ‡’ ํฅ๋ฏธ๋กœ์šฐ๋ฉด ๋ด…๋‹ˆ๋‹ค.

โ„๏ธ ์‹œ์žฅ์ด ๋„ˆ๋ฌด ์ถ”์›Œ์š”

โ‡’ ๋‚ด๊ฐ€ ์ž˜ํ•˜๋ฉด ๋ฌธ์ œ์—†์Šต๋‹ˆ๋‹ค. ์‹ค๋ ฅ์„ ํ‚ค์›์‹œ๋‹ค.

โ‡’ ๋‚ด๊ฐ€ ๊ณ ๋ฏผํ•ด๋ด์•ผ๋งŒ ๋Œ€๋‹ตํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋“ค์„ ์ค€๋น„ํ•ฉ์‹œ๋‹ค.

โ— ์ด์ œ 3์ฃผ์ฐจ๊ฐ€ ๋๋‚˜๊ฐ‘๋‹ˆ๋‹ค. ์–ผ๋งˆ ์•ˆ๋‚จ์•˜์Šต๋‹ˆ๋‹ค. ํ™”์ดํŒ…!

Week04. ๋ฉ˜ํ† ๋ง 4์ฃผ์ฐจ : ๋ฌผ์Œํ‘œ ์‚ด์ธ๋งˆ๋“ค

โš ๏ธ ์ฃผ๋œ ์ฃผ์ œ

  • ์ด๋ ฅ์„œ ๊ถ๊ธˆ์  ๋‚˜๋ˆ„๊ธฐ

    โ‡’ ์†Œ์„ค ์“ฐ๋Š” ๋ฐฉ๋ฒ•

  • ๊ฐœ๋ฐœ ๊ณผ์ • ์ค‘ ๊ถ๊ธˆํ•œ ๋‚ด์šฉ๋“ค

๋‹ค์Œ ์ฃผ ๋ชจ์ž„ ์‹œ๊ฐ„

  • ๊ธˆํ† ์ผ ์ œ์™ธ, 8์‹œ ์ •๋„๋ฉด ๊ดœ์ฐฎ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • ๋ชฉ์š”์ผ 8์‹œ๊ฐ€ ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

๐Ÿ“„ ์ด๋ ฅ์„œ์— ๋Œ€ํ•ด์„œ

โ“ ์ˆ˜์น˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์•„์ง ์•ˆ๋‚˜์™”๊ณ , ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„์ง ์•ˆ๋๋‚ฌ๋Š”๋ฐ ์–ด๋–ป๊ฒŒ ์จ์•ผํ• ๊นŒ์š”?

  • ์ดˆ์•ˆ ๊ณต์œ  ์ดํ›„ ์ด์•ผ๊ธฐ

โ“ ์ž๊ฒฉ์ฆ์€ ์–ด๋Š์ •๋„๋กœ ์จ์•ผํ• ๊นŒ์š”?

  • ์ž๊ฒฉ์ฆ์€ ๊ตณ์ด ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค.
  • ์—†๋Š” ๊ฒƒ๋ณด๋‹ค๋Š” ์žˆ๋Š”๊ฒŒ ๋‚ซ์ง€๋งŒ, ํฐ ํ”Œ๋Ÿฌ์Šค ์š”์ธ์€ ๋˜์ง€ ๋ชปํ•œ๋‹ค. ์‹ค๋ฌด๋ฅผ ๋ฐ˜์˜ํ•˜์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ.
  • ์ •์ฒ˜๊ธฐ๊ฐ€ ๋งˆ์ง€๋…ธ์„  ๊ฐ™๋‹ค.

โ“ ์ž๊ฒฉ์ฆ์— ๋Œ€ํ•œ ๋ถ€์—ฐ์„ค๋ช…์ด ์žˆ๋Š”๊ฒŒ ๋‚˜์„๊นŒ์š”?

  • ๋”์ด์ƒ ์“ฐ๋Š”๊ฑด ๋„ˆ๋ฌด ๋งŽ์ด ๊ฐ€๋Š”๊ฑฐ ์•„๋‹๊นŒ์š”?
  • ๋ฌผ์–ด๋ดค์„ ๋•Œ ์„ค๋ช…ํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ๊ต์œก๊ณผ์ •์— ๋Œ€ํ•œ ์„ค๋ช…์€ ์–ด๋–จ๊นŒ์š”?

  • ์ด๊ฑด ๋ถ€์—ฐ์„ค๋ช…์ด ์กฐ๊ธˆ ์žˆ๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

  • ์ž๊ฒฉ์ฆ์€ ์ทจ๋“ํ•˜๋ฉด ๋์ด์ง€๋งŒ, ๊ต์œก ๊ณผ์ •์€ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ์œผ๋ฉฐ ๊ณผ์ •์ด ๋” ์ค‘์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ.

  • ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ํ”„๋กœ์ ํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ํ–ˆ๋Š”์ง€๊ฐ€ ์ค‘์š”ํ•œ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ๋ญ˜ ๋ฐฐ์› ๊ณ , ์–ด๋–ค ํ”„๋กœ์ ํŠธ๋ฅผ ํ–ˆ๋Š”์ง€

โ“ ํ”„๋กœ์ ํŠธ์—์„œ ํ˜‘์—…์— ๊ด€๋ จ๋œ ๊ฒฝํ—˜์—๋„ ๊ด€์‹ฌ์ด ์ƒ๊ธธ๊นŒ์š”?

  • ๊ด€์‹ฌ์ด ๊ฐ€์ง€๋งŒ, ๊ทธ๋ž˜๋„ ๊ธฐ์ˆ ์ ์ธ ์งˆ๋ฌธ์„ ํ•˜๊ฒŒ ๋œ๋‹ค.
  • ์‹ ์ž…์˜ ๋ฉด์ ‘์งˆ๋ฌธ์ด๋ผ๋ฉด, ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ๊ด€๋ จ๋œ ์ •๋ณด๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.
  • ๊ทธ ์ด์ƒ์œผ๋กœ๋Š” ๋”ฑํžˆ ๋ฌผ์–ด๋ณด์ง€ ์•Š์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ๋ฒ„์ „๊ด€๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ผ๊นŒ์š” ๊ธฐ์ˆ ์ผ๊นŒ์š”?

  • ๋‘˜ ๋‹ค ์•„๋‹๊นŒ์š”?
  • ์ƒ๊ฐ๋ณด๋‹ค ๋ฒ„์ „๊ด€๋ฆฌ๊ฐ€ ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ / ๋‚˜์˜ ์ฝ”๋“œ / ๋‚จ์ด ์‹คํ–‰์‹œํ‚ค๋Š” ๋‚˜์˜ ์ฝ”๋“œ๊ฐ€ ๋‹ฌ๋ž๋‹ค.
  • ๋ฌธ์ œ์ƒํ™ฉ๊ณผ ํ’€์ด๊ณผ์ •๊ณผ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ์š”๊ตฌ์‚ฌํ•ญ๊ณผ ๋ช…์„ธ, ๊ธฐํš์— ๋Œ€ํ•ด ์ฃผ๋„์ ์ธ ํƒœ๋„๋Š” ์–ดํ•„์ด ๋ ๊นŒ์š”?

  • ๋„์›€์€ ๋˜๊ฒ ์ง€๋งŒ, ๊ธฐ์ˆ ์ด 99%๋ฅผ ์ฐจ์ง€ํ•œ๋‹ค.

๐Ÿ—ฃ๏ธ ํ”„๋กœ์ ํŠธ ๊ธฐ์—ฌ ํ•ญ๋ชฉ์— ๋Œ€ํ•ด์„œ

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

โ“ ์™œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋Š”๊ฐ€?์— ๋Œ€ํ•œ ์งˆ๋ฌธ์ด ์˜ฌ ์ˆ˜ ์žˆ๋Š”๊ฐ€?

  • ๊ทธ ๋ฐ˜๋Œ€๊ฐ€ ํ›จ์”ฌ ๋งŽ๊ฒ ๋‹ค.

โ“ ์™œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์•ˆ์ผ๋Š”๊ฐ€?์— ๋Œ€ํ•œ ๊ฑฑ์ •์„ ์•ˆํ•ด๋„ ๋ ๊นŒ์š”?

  • ์ œํ•œ์ ์ธ ๊ธฐ๋Šฅ์„ ๋‹ด์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“ฌ์œผ๋กœ์จ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋™์ž‘์„ ์•Œ๊ธฐ ์œ„ํ•ด ํ–ˆ๋‹ค.
  • ์˜คํžˆ๋ ค ๋งŒ๋“ค์–ด๋ณด์•˜์œผ๋‹ˆ, ์ฐจ์ด๊ฐ€ ์–ด๋–ค๊ฒŒ ์žˆ๋Š”๊ฐ€์— ๋Œ€ํ•ด ์ž˜ ๋‹ต๋ณ€ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ํƒ๊ตฌ์ •์‹ ์—์„œ ์ ์ˆ˜๋ฅผ ๋ฐ›๊ฒŒ๋˜๋Š”๊ฑธ๊นŒ์š”?

  • ์›๋ฆฌ๋ฅผ ๋ชจ๋ฅด๋ฉด, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์“ด ๊ฒƒ๊ณผ ๋‹ค๋ฅผ๋ฐ” ์—†๋‹ค.
  • ์‹ค์ œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋™์ž‘ ์›๋ฆฌ๋ฅผ ์•Œ์•˜์„ ๋•Œ, ๊ทธ๋•Œ์„œ์•ผ ๊ฐ•์ ์ด ๋œ๋‹ค.

โ“ ๊ธฐํš๋‹จ๊ณ„์—์„œ์˜ ๋ฌธ์ œ ์ธ์‹๊ณผ ์ ‘๊ทผ์— ๋Œ€ํ•ด ์ ๋Š”๊ฑด ์–ด๋–จ๊นŒ?

  • ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•œ ์ด์œ ์™€ ๋งฅ๋ฝ์„ ๊ธฐ์ˆ ์ ์œผ๋กœ๋งŒ ์„ค๋ช…ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์› ๊ธฐ ๋•Œ๋ฌธ (ex. ~~ํ•œ ์„œ๋น„์Šค๋ผ์„œ ~~ํ•œ ๊ธฐ์ˆ ์„ ๋„์ž…ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.)

  • ๊ธฐํš์ ์ธ ๋ฐฐ๊ฒฝ์ด ๋ชจ๋‘ ๊ธฐํš์ ์ธ ๋ฐฐ๊ฒฝ์ด ์•„๋‹ˆ๋‹ค. (ex. ์›น์†Œ์ผ“ โ‡’ short polling์œผ๋กœ ๋„˜์–ด๊ฐˆ ๋•Œ, ์ด์ •๋„์˜ ์‹ค์‹œ๊ฐ„์„ฑ์ด ๋ณด์žฅํ•  ํ•„์š”๊ฐ€ ์—†์—ˆ๋‹ค.)

  • ๋‹ค๋งŒ, ์ด๋ ฅ์„œ๋Š” ๋„ˆ๋ฌด ์„ธ์„ธํ•˜๊ณ  ๋งŽ์€ ๋‚ด์šฉ์„ ์ ์ง€ ์•Š๋Š” ๊ฒƒ๋„ ์ค‘์š”ํ•˜๋‹ค.

    โ‡’ ์ด๋ ฅ์„œ๋ฅผ ๋ณด๊ณ  ๊ถ๊ธˆํ•ด์ ธ์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ

    โ‡’ ํšŒ์‚ฌ์—์„œ ๋ˆ„๊ตฐ๊ฐ€๋ฅผ ๋งŒ๋‚  ๋•Œ, ๊ฐ€์žฅ ๋จผ์ € ๋ณด๊ฒŒ ๋˜๋Š” ๋ถ€๋ถ„

    โ‡’ ๋‚ด๊ฐ€ ๊ฐ€์žฅ ์–ดํ•„ํ•˜๊ณ  ์‹ถ์€ ๋ถ€๋ถ„์„ ์ด๋ ฅ์„œ์— ์จ์•ผํ•œ๋‹ค. + ๋ถˆํ•„์š”ํ•œ ๊ฒƒ์€ ๋œ์–ด๋‚ด๊ธฐ

    โ‡’ ์ด๊ฑธ ์•„๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

โ“ ์–ด๋–ค๊ฒŒ ์–ดํ•„๋˜๋ฉด ์ข‹์„๊นŒ์š”?

  • ์ผ๋‹จ์€ ๊ธฐ์ˆ ์ ์ธ ๊ณ ๋ฏผ๋“ค

    โ‡’ ๋‚˜๋Š” ์ƒ๊ฐํ•˜๊ณ  ๊ฐœ๋ฐœํ•œ๋‹ค. ๋ผ๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ค˜์•ผํ•œ๋‹ค.

  • ์–ด๋–ค ๋ฌธ์ œ ์ƒํ™ฉ์—์„œ ์–ด๋–ค ๊ธฐ์ˆ ์„ ์จ์„œ, ์–ด๋–ค ์„ฑ๊ณผ๊ฐ€ ์žˆ์—ˆ๋Š”์ง€, ์™œ ํ–ˆ๋Š”์ง€

    โ‡’ ex. JS๋งŒ ์“ฐ๋‹ค๊ฐ€ TS๋ฅผ ๋„์ž…ํ•œ ๊ฒฝ์šฐ

    โ‡’ TS๋ฅผ ์™œ ๋„์ž…ํ–ˆ๋Š”๊ฐ€? TS๋ฅผ ํ†ตํ•œ ๋Ÿฐํƒ€์ž„ ์•ˆ์ •์„ฑ๊ณผ ๊ฐœ๋ฐœ ํŽธ์˜์„ฑ

    โ‡’ ์—ฌ๊ธฐ์— ๋Œ€ํ•œ ํŒŒ์ƒ ์งˆ๋ฌธ์ด ๋‚˜์˜จ๋‹ค. ๊ธฐ์กด์˜ JS๋Š” ์–ด๋–ป๊ฒŒ ํ–ˆ๋Š”๊ฐ€?

    โ‡’ ์ด ๊ณผ์ •๊ณผ ๊ฑฐ๊ธฐ์—์„œ์˜ ์–ด๋ ค์›€์„ ๊ณต์œ ํ•˜์—ฌ, ๋‹จ์ˆœํ•œ ๊ฐœ๋ฐœ์„ ๋„˜์–ด์„œ ์ œํ’ˆ์˜ ๋ผ์ดํ”„์‚ฌ์ดํด์„ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด ์–ดํ•„ํ•ด์•ผํ•œ๋‹ค.

โ“ ๋ˆˆ์— ๋„๋Š” ์ด๋ ฅ์„œ์—๋Š” ์–ด๋–ค ์š”์†Œ๊ฐ€ ์žˆ์„๊นŒ์š”?

  • ์ƒ๊ฐ ๊ณผ์ •์ด๋‚˜ ๋ฌธ์ œ ํ•ด๊ฒฐ๊ฐ™์€ ์˜ˆ์‹œ๊ฐ€ ์žˆ์„๊นŒ์š”?

  • ์ผ๋‹จ์€ ๋„ˆ๋ฌด ๋˜‘๊ฐ™์€ CRUD ํ”„๋กœ์ ํŠธ๋งŒ ํ–ˆ๋‹ค๋ฉด ๋ณ„ ์ƒ๊ฐ์ด ๋‚˜์ง€ ์•Š๋Š”๋‹ค.

    โ‡’ ๋ฐ›์•„๋„ rm -rf ์กฐ์ฐจ ํ•˜์ง€ ์•Š๊ณ  ์žŠํ˜€์ง„๋‹ค.

    โ‡’ ํŠน๋ณ„ํ•˜๊ณ  ๋…์ฐฝ์ ์ธ ๊ฒฝํ—˜์ด ์ข‹๋‹ค.

    โ‡’ ex. webRTC๋ฅผ ์ด์šฉํ•ด์„œ ๋ฝ€๋ชจ๋„๋กœ ํƒ€์ด๋จธ๋ฅผ ํ™”์ƒ๋ฒ„์ ผ์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

    โ‡’ ๋‚ด๊ฐ€ ํ•˜๊ณ  ์‹ถ์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ์žˆ์–ด์•ผ ๊นƒํ—™์„ ์—ด์–ด๋ณด๊ฒŒ ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์š”์•ฝ์„ ํ•  ๋•Œ, ๊ธฐํš์ ์ธ ์š”์•ฝ์ด ์ค‘์š”ํ•œ์ง€ ๊ธฐ์ˆ ์ ์ธ ์š”์•ฝ์ด ์ค‘์š”ํ•œ์ง€?

  • ์ผ๋‹จ ์ด๋ ฅ์„œ๋ฅผ ๋ฐ›๋Š” ์‚ฌ๋žŒ์€ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ชจ๋ฅด๋‹ˆ, ๊ธฐํš์ ์ธ ์š”์•ฝ ํ•œ ์ค„ ์š”์•ฝ์ด ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค.
  • ๊ธฐ์ˆ ์ ์ธ ์š”์•ฝ์€ ํ”„๋กœ์ ํŠธ ์„ค๋ช…์—์„œ ์–ดํ•„ํ•ด์•ผ๊ฒ ๋‹ค.

๐Ÿ—ฃ๏ธ ๋…ธ์…˜ ์ด๋ ฅ์„œ๋Š” ๋น„์ถ”๋“œ๋ฆฝ๋‹ˆ๋‹ค.

  • ๋…ธ์…˜์€ ํ”ํžˆ ํŽ˜์ด์ง€๋ฅผ ๋‚˜๋ˆ ์„œ ์“ฐ๊ฒŒ๋˜๋Š”๋ฐ, ์ด UX๊ฐ€ ๊ต‰์žฅํžˆ ์ข‹์ง€๊ฐ€ ์•Š๋‹ค.

โ“ ๊ทธ๋Ÿผ ํ…œํ”Œ๋ฆฟ์œผ๋กœ ์“ฐ๋ฉด ์–ด๋–จ๊นŒ์š”?

โ‡’ ๊ณต๋ฐฑ์ด ๋Š๋Š”๊ฒŒ ๋ณ„๋กœ์ธ ๊ฒƒ ๊ฐ™๋‹ค.

โ‡’ pdf ํ•œ ํŽ˜์ด์ง€๋กœ ๋ฝ‘๋Š”๊ฒŒ ์ข‹์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ์ข‹์•˜๋˜ ํ…œํ”Œ๋ฆฟ์ด ์žˆ์œผ์…จ์„๊นŒ์š”?

  • ํ…œํ”Œ๋ฆฟ๋ณด๋‹ค ๋‚ด์šฉ์ด ์ข‹์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ๋‹ค๋งŒ ์‚ฌ๋žŒ์ธ์ด๋ผ๋˜๊ฐ€ ์—‘์…€์ด๋ผ๋˜๊ฐ€ ์ด๋Ÿฐ ๊ฒƒ์€ ์ง€์–‘ํ•ด์ฃผ์„ธ์š”.

  • ์„ฑ์žฅ๊ณผ์ • ์“ฐ์ง€ ๋งˆ์„ธ์š”.

  • ์“ฐ๊ณ  ์‹ถ๋‹ค๋ฉด ๋‚˜๋ฅผ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ํ•œ ์ค„์„ ์ •๋ฆฌํ•ด์„œ ์“ฐ๋Š”๊ฒŒ ์ข‹๋‹ค.

  • ์žฅ๋‚œ์Šค๋Ÿฌ์šด ํ•œ ์ค„์€ ๊ดœ์ฐฎ์€๋ฐ, ๊ทธ๊ฑด ์œ ๋จธ๊ฐ๊ฐ์ด ๋›ฐ์–ด๋‚ ๋•Œ๋งŒ

  • ๊ฐœ๋ฐœ ์„ฑํ–ฅ์ด๋‚˜ ์ฒ ํ•™์ด ๋…น์•„๋“ค์–ด๊ฐ„ ํ•œ ์ค„์ด๋ผ๋ฉด ์ข‹๋‹ค.

    โ‡’ ๊ฐ€์น˜๊ด€์„ ๋ณผ ์ˆ˜ ์žˆ์–ด์„œ

โ“ ๊ทธ๋ ‡๋‹ค๋ฉด ๊ทธ๋Ÿฐ ์ฒ ํ•™์„ ๋’ท๋ฐ›์นจํ•ด์ค„ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ์ด ์ด๋ ฅ์„œ์— ์žˆ์–ด์•ผํ• ๊นŒ์š”?

  • ๊ตณ์ด ํ•„์š”์—†๋‹ค. ๋ณดํ†ต ๋ฉด์ ‘์˜ ์ž๊ธฐ์†Œ๊ฐœ ์‹œ๊ฐ„ ๋•Œ ํ’€์–ด๋‚ด๋ฉด ๋  ๊ฒƒ ๊ฐ™๋‹ค.
  • ์ž๊ธฐ์†Œ๊ฐœ๋Š” ๋ณดํ†ต ๊ทธ๋Ÿฐ๊ฐ€๋ณด๋‹ค ํ•˜๊ณ  ๋„˜๊ธด๋‹ค.
  • ๊ฒ€ํ† ๋Š” ๋ณดํ†ต ์ธ์‚ฌํŒ€ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์‹ค๋ฌด์ž๋“ค๋„ ๋ณด๊ธฐ ๋•Œ๋ฌธ.

โ“ ๊ธฐ์ˆ ๋ณด๋‹ค๋Š” ์„ฑํ–ฅ์— ๊ฐ€๊นŒ์šด ๊ธฐ์ˆ ๊ด€๋ จ ํ™œ๋™์„ ์ ์–ด๋„ ๊ดœ์ฐฎ์„๊นŒ์š”?

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

โ“ ์™€๋‹ฟ๋Š” ์ด๋ ฅ์„œ์˜ ์ˆ˜์น˜๋“ค

  • ์„ฑ๋Šฅ ๊ฐœ์„ ์ด ์ œ์ผ ์™€๋‹ฟ๋Š”๋‹ค.

  • ์„ฑ๋Šฅ์— ๋Œ€ํ•ด ๋””ํ…Œ์ผํ•œ ์ˆ˜์น˜๊ฐ€ ์žˆ์œผ๋ฉด ๋” ์ข‹๋‹ค. (ex. 10๋ถ„์ด ๊ฑธ๋ฆฌ๋˜ ๊ฒƒ์„ 1๋ถ„์œผ๋กœ ์ค„์˜€๋‹ค.)

  • ์„ฑ๋Šฅ ๊ฐœ์„ ๋„ ๋งฅ๋ฝ์ด ์žˆ์–ด์•ผํ•œ๋‹ค. ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•œ ์ˆ˜์น˜๊ฐ€ ์‹ ๋น™์„ฑ์ด ์žˆ์–ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

  • ์–ด์ฐจํ”ผ ์„ฑ๋Šฅ ๊ฐœ์„  ํ–ˆ๋‹ค๊ณ  ์“ฐ๋ฉด, ๋ฉด์ ‘์—์„œ ๋ฌผ์–ด๋ณผ ๊ฒƒ์ด๋‹ค.

    โ‡’ ๊ถ๊ธˆํ•˜๊ฒŒ ๋งŒ๋“œ๋Š”๊ฒŒ ์ข‹๋‹ค!

โ“ ์ด๋”ด๊ฒŒ ์„ฑ๋Šฅ๊ฐœ์„ โ€ฆ? ๊ตณ์ด ์ด๋Ÿฐ ์ˆ˜์น˜๋ฅผโ€ฆ?

  • ์„ฑ๋Šฅ๊ฐœ์„ ์€ ๋‹ค ๊ดœ์ฐฎ๋‹ค.

    โ“ ๊ทธ๋Ÿผ left top vs transform ๊ฐ™์€ ๊ธฐ๋ณธ์ ์ธ ๋น„๊ต๋„ ์จ๋„ ๊ดœ์ฐฎ์„๊นŒ์š”?

    • ํ”„๋กœ์ ํŠธ ๋‚ด์šฉ์— ์žˆ์–ด์„œ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์จ๋„ ๋˜๊ณ , ์•„๋‹ˆ๋ผ๋ฉด ์•ˆ์จ๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค.

    โ“ ๊ธฐ์ˆ ๋ณด๋‹ค๋Š” ์–ผ๋งˆ๋‚˜ ํ•ต์‹ฌ๊ธฐ๋Šฅ์ธ๊ฐ€๊ฐ€ ์ค‘์š”ํ•œ๊ฑธ๊นŒ์š”?

    • ์ด๋ ฅ์„œ์—๋Š” ๋ญ˜์จ๋„ ์ข‹๋‹ค. ๋‹ค๋งŒ ๋‚ด๊ฐ€ ์ž˜ ๋Œ€๋‹ตํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋ฉด ๋œ๋‹ค.
    • ์„ฑ๋Šฅ๊ฐœ์„ ์€ ์žˆ์œผ๋ฉด ์ข‹๋‹ค. ๊ทผ๊ฑฐ๊ฐ€ ์žˆ์–ด์•ผํ•œ๋‹ค.
  • ํ”„๋กœ์ ํŠธ ๊ธฐ์—ฌ๋„ ์ˆ˜์น˜

โš™๏ธ ๊ธฐ์ˆ 

โ“ ๋งŒ์ง€์ง€ ์•Š์€ ๋ธŒ๋žœ์น˜์˜ ์ฝ”๋“œ์™€ ์ถฉ๋Œ์ด ๋‚ฌ๋‹ค.

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

โ“ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์™€ ๋ธŒ๋žœ์น˜ ์ „๋žต ์‚ฌ์ด์˜ ์ƒ๊ด€๊ด€๊ณ„๊ฐ€ ์žˆ์„๊นŒ์š”?

  • ํ™•์‹คํžˆ ๋ชจ๋…ธ๋ ˆํฌ์—์„œ๋Š” ๋ณต์žกํ•œ ๋ธŒ๋žœ์น˜ ์ „๋žต์„ ์“ฐ๊ธฐ ํž˜๋“ค๋‹ค. ์ด์— ๊ด€๋ จ๋œ ์ „๋žต๋„ ๋”ฐ๋กœ ์žˆ๋‹ค.
  • ๋‹ค๋งŒ ์‹ฑ๊ธ€๋ธŒ๋žœ์น˜๋Š” ๋ง์ด ์•ˆ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋Ÿผ Git์„ ์“ฐ๋Š” ์ด์œ ๊ฐ€ ์—†๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ๋ธŒ๋žœ์น˜ ์ „๋žต์ด ๋„ˆ๋ฌด ๋งŽ์ง€๋Š” ์•Š๋‚˜์š”?

  • Trunk Based Development, Git flow, Github flow ์ •๋„๊ฐ€ ์žˆ๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๋ณ„๋กœ ๋งŽ์ง€๋Š” ์•Š์€ ๊ฒƒ ๊ฐ™๋‹ค.
  • ๋ณดํ†ต ๊ธฐ์ดˆ๊ฐ€ ๋˜๋Š” ์ „๋žต์„ ํšŒ์‚ฌ๋งˆ๋‹ค ์กฐ๊ธˆ์”ฉ ๋ณ€ํ˜•ํ•ด์„œ ์“ฐ๊ณ  ์žˆ๋‹ค.

๐Ÿ—ฃ๏ธ ๊นƒ๊ณผ ๊นƒํ—ˆ๋ธŒ๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋งŽ๋‹ค.

  • ๊นƒ์˜ PR์„ ์ผ์Šต๋‹ˆ๋‹ค. ๋ผ๋Š” ๋ง์„ ํ• ๊ฑฐ๋ฉด ์ด๋ ฅ์„œ์— ์•ˆ์ ๋Š”๊ฒŒ ์ข‹์Šต๋‹ˆ๋‹ค.

    โ‡’ ๋” ๋‚˜์•„๊ฐ€, ๊ธฐ์ดˆ๊ฐœ๋…์— ๋Œ€ํ•œ ์„ค๋ช…์ด ํ‹€๋ฆฌ๋ฉด ๋ง์— ๋Œ€ํ•œ ์‹ ๋ขฐ๊ฐ€ ํ™• ๋–จ์–ด์ง€๋ฏ€๋กœ ์ž˜ ์ƒ๊ฐํ•ด์„œ ์จ์•ผํ•ฉ๋‹ˆ๋‹ค.

โ“ JPA๊ฐ€ ๋ณ„๋กœ์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ ์–ด๋–ค ๊ฒƒ์œผ๋กœ ๊ฐœ๋ฐœํ•˜์‹œ๋‚˜์š”?

  • NodeJS or Kotlin Webflux

  • ์ž๋ฐ” ORM์€ ๋ญ˜ ์จ๋„ ๋ณ„๋กœ๋‹ค!

    โ‡’ JPA๋งŒ์œผ๋กœ๋Š” ์Šคํ‚ค๋งˆ ๋‚ด์—ญ๊ด€๋ฆฌ๋„ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

    โ‡’ ORM์„ ์“ฐ๋Š” ์ด์œ ๋Š” DB ์Šคํ‚ค๋งˆ ๋‚ด์—ญ ๊ด€๋ฆฌ๋„ ์žˆ๋Š”๋ฐ ์•„์‰ฌ์šด ์ ์ด๋‹ค.

๐Ÿ›ค๏ธ ํ”„๋กœ์ ํŠธ ๋ฐฉํ–ฅ์„ฑ

1๏ธโƒฃ ์ธํ”„๋ผ์ ์ธ ํ•ด๊ฒฐ์„ ๋œ์–ด๋ƒ„.

2๏ธโƒฃ Websocket โ‡’ Short Polling

  • stateless์˜ ๊ฐ•์ ์„ ๋Š๋‚„ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

โ— ๊ทธ๋Ÿฐ๋ฐ, CRUD ์ด์ƒ์ด๋ผ๊ณ  ๋งํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค๊ณ  ๋Š๊ผˆ๋‹ค.

  • CRUD ๊ตฌํ˜„์€ ๊ธฐ๋ณธ์œผ๋กœ, API ์š”์ฒญ ์‹œ๊ฐ„ ๊ฐœ์„ , ์ฟผ๋ฆฌ ํŠœ๋‹, ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํŠœ๋‹, ์ธ์Šคํ„ด์Šค ๋Š˜๋ฆฌ๋Š” ์‹์œผ๋กœ ์„ฑ๋Šฅ ๊ฐœ์„ ์— ์ง‘์ค‘ํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ทผ๊ฑฐ์žˆ๋Š” ์„ฑ๋Šฅ ๊ฐœ์„ ์ด๋ผ๋Š” ๊ณผ์ •์„ ํ†ตํ•ด์„œ ๊ฐ™์€ CRUD ๋‚ด์—์„œ ์ข‹์€ ํƒœ๋„๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ ์ž ํ•œ๋‹ค.

โ“ ๋‹ค๋งŒ ๊ฒฐ๊ตญ CRUD์—์„œ ๋ฒ—์–ด๋‚˜์ง„ ๋ชปํ•œ๊ฑด๋ฐ, ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์‹œ๋‚˜์š”?

  • ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ์œ„ํ•œ ๋ถ€๋ถ„์—์„œ ์ฝ”๋“œ์ ์ธ ๋„์ „์ด ์œ ์˜๋ฏธํ•˜์ง€ ์•Š์„ ๊ฒƒ ๊ฐ™๋‹ค.

  • ๊ฒฐ๊ตญ DB์ชฝ์œผ๋กœ ๊ฐ€์ง€ ์•Š์„๊นŒ? ์ธ๋ฑ์Šค์™€ ์ •๊ทœํ™”์„ ์—์„œ ์ •๋ฆฌ๋˜์ง€ ์•Š์„๊นŒ?

  • ๋ถ€ํ•˜ํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์˜ ์˜์‚ฌ๊ฒฐ์ •์„ ๋ณด์—ฌ์ฃผ๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ์ƒ์œ„ 10%, ํ•˜์œ„ 10%, ํ‰๊ท  ์‘๋‹ต์†๋„ ๊ฐ๊ฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ†ตํ•ด์„œ ๊ฐ๊ฐ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๊ณ  ๋ฌด์—‡์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€?

    โ‡’ ๋ณ‘๋ชฉ์„ ์ฐพ์•„์„œ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค. ๋‹จ์ˆœํžˆ ORM ์ฟผ๋ฆฌ์˜ ์„ฑ๋Šฅ ๊ฐœ์„ ์€ ์œ ์˜๋ฏธํ•œ ์„ฑ๋Šฅ๊ฐœ์„ ์ด๋ผ๊ณ  ๋ณด๊ธฐ ์–ด๋ ค์šธ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ์ธ์Šคํ„ด์Šค๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์€ ๊ธฐ์ˆ ์ ์ธ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ๋ณด๊ธฐ๋Š” ์–ด๋ ค์šธ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ Nginx์˜ ํ™œ์šฉ์ด๋‚˜ DB ๊ตฌ์กฐ ๊ฐœ์„ ์€ ์–ด๋–จ๊นŒ์š”?

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

โ“ ์–ด๋Š์ •๋„๋กœ ์ฝ”๋“œ๋กœ ๋„์ „ํ•œ ๋’ค ์ธํ”„๋ผ๋ฅผ ์‹œ๋„ํ•ด๋ด์•ผํ•œ๋‹ค๋Š” ๊ธฐ์ค€์ด ์žˆ์„๊นŒ์š”?

  • ๋‹น์—ฐํžˆ ์ข‹์€ CPU์—์„œ ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด ๋” ์ข‹์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค. ๋‹ค๋งŒ, ์ด๊ฒƒ์€ ์˜ฌ๋ฐ”๋ฅธ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์ด ์•„๋‹ˆ๋‹ค.
  • ์‹œ๊ฐ„๋ณต์žก๋„ ์ž์ฒด๋ฅผ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ๊ทผ๋ณธ์ ์ธ ์ ‘๊ทผ์ด ์•„๋‹๊นŒ?
  • ์ฟผ๋ฆฌ ์‹คํ–‰ ๊ณ„ํš์ด ์ด์ƒํ•  ๋•Œ์˜ Query Explain ๋ถ„์„, ์‹œ๊ฐ„๋ณต์žก๋„์˜ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„์€ ์—†์„์ง€ ์ถฉ๋ถ„ํžˆ ๊ณ ๋ฏผํ•˜๊ณ  ์ธํ”„๋ผ๋กœ ๋„˜์–ด๊ฐ€์•ผํ•˜์ง€ ์•Š์„๊นŒ?
  • ์‹ ์ž…์—๊ฒŒ ์ธํ”„๋ผ๋Š” ์–ด๋Š ํšŒ์‚ฌ์—์„œ๋„ ํฌ๊ฒŒ ๊ธฐ๋Œ€ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ฐฑ์—”๋“œ์˜ 2์ฐจ ์ „์ง ๊ฐ™์€ ๋Š๋‚Œ.

โ— ๋ฌธ์ œ๊ฐ€ ํ„ฐ์ง€์ง€ ์•Š์€ ์‚ฌํ™ฉ์—์„œ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ๋‚˜ ์ด๋ ฅ์„œ ์ž‘์„ฑ์„ ์œ„ํ•ด ๊ธฐ์ˆ ์ ์ธ ๋„์ „์„ ์ •ํ•˜๋ ค๋‹ค๋ณด๋‹ˆ, ์ธํ”„๋ผ ๊ฐ™์€ ์ •ํ•ด์ ธ ์žˆ๋Š” ํ’€์ด์— ์ ‘๊ทผ๋˜๋Š” ๊ฒƒ ๊ฐ™๊ธฐ๋„ ํ•˜๋‹ค.

  • ์ฒ˜์Œ๋ถ€ํ„ฐ ๋””์ž์ธ ํŒจํ„ด ๊ณต๋ถ€ํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์™€๋‹ฟ์ง€ ์•Š๋Š”๋‹ค.
  • ํ•„์š”์„ฑ์„ ๋Š๋‚„ ๋•Œ ํ•ด๋‚˜๊ฐ€๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.
  • ๊ฐœ๋ฐœ์€ ์ผ๋‹จ ๋งŒ๋“ค์–ด๋ณด๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

โ“ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋Š” ์–ด๋–ค๊ฐ€์š”?

  • ๋ฌด์กฐ๊ฑด ์งœ์•ผํ•œ๋‹ค. ํฐ ๋ฉ”๋ฆฌํŠธ์ด๋‹ค.

โ“ ์ฝ”๋“œ ์ปค๋ฒ„๋ฆฌ์ง€๋กœ ์ˆ˜์น˜์ ์ธ ์ด์•ผ๊ธฐ ํ•ด๋„ ๋ ๊นŒ์š”?

  • ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์ฝ”๋“œ ์ปค๋ฒ„๋ฆฌ์ง€๋กœ ๋ชจ๋“  ๊ฒƒ์„ ๋ณด์žฅํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.
  • ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์™œ ์ผ์„์ง€๋‚˜, ์ˆ˜์น˜ ๋ชฉํ‘œ๊ฐ€ ์™œ ์žˆ์—ˆ๋Š”์ง€์— ๋Œ€ํ•ด ๊ณ ๋ฏผํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ์บ์‹œ๋„ ์ธํ”„๋ผ์ ์ธ ํ•ด๊ฒฐ์ผ๊นŒ์š”?

  • Redis ๊ฐ™์€ ์บ์‹œ ๋ ˆ์ด์–ด๋ฅผ ์“ฐ๋ฉด, ์ธํ”„๋ผ์ ์ธ ํ•ด๊ฒฐ๋ฐฉ์•ˆ์ด๋‹ค.

โ“ ๋ฐฑ์—”๋“œ์—์„œ ์ฝ”๋“œ์ ์œผ๋กœ ์บ์‹œ๋ฅผ ๊ตฌํ˜„ํ•ด๋ณด๋ฉด ์–ด๋–จ๊นŒ์š”?

  • ๋Œ€๋ถ€๋ถ„์˜ ์š”์ฒญ์€ HTTP๊ฐ€ ์บ์‹œ๋ฅผ ํ•ด์ค๋‹ˆ๋‹ค. Redis๊ฐ€ ์ •๋ง ํ•„์š”ํ•  ๋•Œ๊ฐ€ ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ํ”„๋ก ํŠธ์—”๋“œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋Š” ์–ด๋–ค๊ฐ€์š”?

  • ์œ ์ € ์‹œ๋‚˜๋ฆฌ์˜ค์— ๊ธฐ๋ฐ˜ํ•œ๊ฒŒ ์ข‹์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ๋กœ๊ทธ์ธ ์ปดํฌ๋„ŒํŠธ ๋ Œ๋”๋ง ๋˜๋Š”๊ฐ€? ๊ฐ™์€๊ฑฐ ํ…Œ์ŠคํŠธํ•ด๋„ ํฐ ์˜๋ฏธ ์—†๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

  • ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ณด๋‹ค๋Š” ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ๋‚˜ E2E ํ…Œ์ŠคํŠธ๊ฐ€ ๋” ์œ ์˜๋ฏธํ•œ ๊ฒƒ ๊ฐ™๋‹ค.

  • ์ปดํฌ๋„ŒํŠธ ์•ˆ์— ๋“ค์–ด๊ฐ€์žˆ๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์€ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ฒ ๋‹ค.

  • ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€๋ณด๋‹ค ์œ ์˜๋ฏธํ•œ ํ…Œ์ŠคํŠธ์— ์ง‘์ค‘ํ•˜๋Š” ๊ฒƒ์ด ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ๋ถ„๊ธฐ๋ณ„ ํ…Œ์ŠคํŠธ๋Š” ๊ฐ€๋Šฅํ•˜๋”๋ผ๋„ ์‹œ๋‚˜๋ฆฌ์˜ค์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ๋ณด๋Š”๊ฒŒ ์–ด๋ ต๋‹ค. ์œ ์˜๋ฏธํ•œ ์œ ์ € ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ๊ฐ€์ง„ ํ…Œ์ŠคํŠธ๊ฐ€ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋” ๋†’์€ ๊ฒƒ ๊ฐ™๋‹ค.

๐Ÿ—ฃ๏ธ ์š”์ฆ˜์€ ์ธํ”„๋ผ๋ฅผ ์ค„์ด๋Š” ์ชฝ์˜ ๋ฐฉํ–ฅ์ด๋‹ค.

  • ํšจ์œจ์„ฑ์„ ๋†’์—ฌ์„œ 1์–ต ๊ฐ์†Œ ์ด๋Ÿฐ๊ฒŒ ๋ชฉํ‘œ๊ฐ€ ๋˜๊ณ  ์žˆ๋‹ค.

  • ์˜ค ๊ทธ๋Ÿผ Websocket โ†’ Short Polling์„ ์–ดํ•„ํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ์ฒ˜์Œ์— ์ธํ”„๋ผ๋กœ ํ•ด๊ฒฐํ•˜๋ ค๋‹ค๊ฐ€, ๊ทธ๊ฒƒ๋ณด๋‹ค๋Š” ์ฝ”๋“œ์˜ ํšจ์œจ์„ฑ์„ ๋†’์ด๋Š” ๊ฒƒ์ด ๊ทผ๋ณธ์ ์ธ ํ•ด๊ฒฐ์ฑ…์ด๋ผ๊ณ  ์ ‘๊ทผํ–ˆ๋‹ค๋Š” ๊ฒƒ์„ ์ด๋ ฅ์˜ ํ•œ ์ค„์ด ๋  ์ˆ˜ ์žˆ์„๊นŒ์š”?

    โ‡’ ๊ทธ๋Ÿด ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ ๋งฅ๋ฝ์ด ์ค‘์š”ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ex. ์ฝ”๋“œ๋‚˜ ๊ตฌ์กฐ์˜ ๊ฐœ์„  ์—†์ด ๋ˆ์„ ๋“ค์—ฌ ์ธํ”„๋ผ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ์€ ์–ธ์  ๊ฐ€ ํŠธ๋ž˜ํ”ฝ์ด ์ฆ๊ฐ€ํ–ˆ์„ ๋•Œ ๊ฐ™์€ ๋ฌธ์ œ๋“ค ๋‚ณ์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ด์„œ ์ด๋ ‡๊ฒŒ ์ „ํ™˜ํ–ˆ๋‹ค.

Week05. ๋ฉ˜ํ† ๋ง 5์ฃผ์ฐจ : ์„ฑ๋Šฅ ์ธก์ •๊ณผ ๊ฐœ์„  ๋ฐฉํ–ฅ

์ด๋ฒˆ ์ฃผ ์–ด๋ ค์› ๋˜ ์ ๊ณผ ๊ถ๊ธˆ์ฆ

๋ผ์ดํŠธ ํ•˜์šฐ์Šค๊ฐ€ ์•„๋‹Œ ์„ฑ๋Šฅ ์ธก์ • ๋ฐฉ๋ฒ•์ด ์žˆ์„๊นŒ์š”?

  • ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ถฉ๋Œ์„ ์—ฐ์‚ฐํ•˜๋Š” ๋ฌผ๋ฆฌ์—”์ง„์˜ ๊ฒฝ์šฐ, ๋ผ์ดํŠธ ํ•˜์šฐ์Šค์—์„œ ๋กœ๋”ฉ์ด ์•ˆ๋œ ๊ฒƒ์œผ๋กœ ์ธ์‹ํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ์„๊นŒ์š”?

โ‡’ ๋ผ์ดํŠธ ํ•˜์šฐ์Šค๋ณด๋‹ค๋Š” ์–ด๋Š ์ •๋„์˜ ์ž์›์„ ์“ฐ๊ณ  ์žˆ๋Š”๊ฐ€๋ฅผ ๋ณด๋Š”๊ฒŒ ๋‚˜์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. React debug ๋“ฑ์œผ๋กœ ํ™•์ธํ•ด๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹ค์‹œ๊ฐ„ ์—ฐ์‚ฐ์˜ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์€ ์–ด๋””์— ๊ธฐ์ค€์„ ๋‘ฌ์•ผํ• ๊นŒ์š”?

  • ํฌ๋กฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋กœ ๋ณด์•˜๋Š”๋ฐ ์ตœ์ ํ™”๋ฅผ ํ•œ ๋’ค ๋‹ค๋ฅธ ์‚ฌ์ดํŠธ์™€๋Š” ํฐ ์ฐจ์ด๊ฐ€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

โ‡’ ๋‹ค๋ฅธ ์‚ฌ์ดํŠธ๋Š” ํ†ตํ•ฉ์ด 35mb ์ •๋„์ผ ๊ฒƒ ๊ฐ™๋‹ค. ๋‹ค๋ฅธ ์‚ฌ์ดํŠธ์™€ ํฐ ์ฐจ์ด๊ฐ€ ์—†๋‹ค๋ฉด ๋ฌธ์ œ๊ฐ€ ์—†์„ ์ˆ˜ ์žˆ์œผ๋‚˜, ๋‹ค๋ฅธ ์‚ฌ์ดํŠธ๊ฐ€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์–ด๋–ค ๋™์ž‘์„ ํ•˜๊ณ  ์žˆ๋Š”์ง€์— ๋”ฐ๋ผ์„œ ๋‹ค๋ฅผ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ํ•ด๋‹น ์ปดํฌ๋„ŒํŠธ๋งŒ ๋…๋ฆฝ์ ์œผ๋กœ ์ธก์ •ํ•ด๋ด๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ—์ถฉ๋Œ์„ ์ œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•˜์ง€ ๋ชปํ•˜๊ณ  ์žˆ๋‹ค.

โ‡’ ์˜ˆ์™ธ์ฒ˜๋ฆฌ๊ฐ€ ์ถ”๊ฐ€๋˜์–ด์•ผํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ์ธํ„ฐ๋ž™์…˜์ด ๊ทธ๋ƒฅ ํ•œ ์ ์œผ๋กœ ๋ชจ์ด๊ณ  ์žˆ๋‹ค. ๋‹ค๋ฅธ ๋‹ค์ด๋‚˜๋ฏน์ด ์žˆ์–ด์•ผํ•˜์ง€ ์•Š์„๊นŒ์š”?

โ‡’ ๋ชจ์ด๋Š” ์œ„์น˜์— ๋Œ€ํ•œ ๋žœ๋ค์„ฑ์ด๋‚˜ ์ถฉ๋Œ๋ ฅ์ด ๋” ์ปค์ง€๊ฒŒ ํ•˜๋Š”๋“ฑ ์—ญ๋™์„ฑ์ด ์ƒ๊ธฐ๋ฉด ๋” ์žฌ๋ฏธ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

SEO ์ ์ˆ˜์™€ ์ ‘๊ทผ์„ฑ ์ ์ˆ˜๋Š” ๋†’์€ ์ ์ˆ˜๋ฅผ ์œ ์ง€ํ•ด์•ผํ• ๊นŒ์š”?

โ‡’ ์‹ค๋ฌด์—์„œ๋Š” ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์ด๋ฏธ ๋งŒ๋“ค์–ด์ ธ ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„์„œ, ์ ‘๊ทผ์„ฑ๋ณด๋‹ค๋Š” ์„ฑ๋Šฅ์— ๋” ์šฐ์„ ์„ ๋‘๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โ“ ๋ฐฑ์—”๋“œ์—์„œ๋Š” ๋ฌด์—‡์„ ํ•˜๊ณ  ์žˆ๋‚˜์š”?

  • ๊ธฐ๋ณธ์ ์ธ CRUD API

  • ํ‚ค์›Œ๋“œ ์ถ”์ฒœ ์‹œ์Šคํ…œ

  • ํ‚ค์›Œ๋“œ ์†Œ๊ทธ๋ฃน ๋ณ‘ํ•ฉ ์‹œ์Šคํ…œ

    • ํ‚ค์›Œ๋“œ === ์†Œ๊ทธ๋ฃน, ์Šค๋ ˆ๋“œ === ์†Œ๊ทธ๋ฃน ๋‚ด์˜ ๊ฒŒ์‹œ๊ธ€

    • ์†Œ๊ทธ๋ฃน ๋‚ด์˜ ์•ˆ์ •์ ์ธ ์Šค๋ ˆ๋“œ ๋ณ‘ํ•ฉ์„ ์œ„ํ•œ ๋ฐฐ์น˜ ํ”„๋กœ๊ทธ๋žจ ๊ตฌํ˜„

      โ‡’ ํฐ ์ฝ”์ŠคํŠธ๊ฐ€ ์†Œ๋ชจ๋  ๊ฒƒ์ด๋ผ ํŒ๋‹จ, ๋ฐฐ์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌํ˜„ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

  • ์ฟผ๋ฆฌ๋ฌธ ํŠœ๋‹ ์ง„ํ–‰

  • ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์ž‘์„ฑ (API ํ…Œ์ŠคํŠธ, ๋‹จ์œ„ ํ…Œ์ŠคํŠธ)

โ‡’ ์„ฑ๋Šฅ ๊ฐœ์„ ์€ ์ข‹์ง€๋งŒ, ํ˜„์žฌ ๊ตฌ์กฐ๋กœ ์–ด๋Š ์ •๋„์˜ ์„ฑ๋Šฅ์ด ๋‚˜์˜ค๋Š”์ง€๋ฅผ ๋จผ์ € ๋ณด๊ณ  ์šฐ๋ฆฌ์˜ ๋ชฉํ‘œ๋ฅผ ์ •ํ•˜๊ณ  ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ํ•˜๋Š”๊ฒŒ ๋” ์œ ์˜๋ฏธํ•œ ์„ฑ๊ณผ๊ฐ€ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ์–ด๋Š ๋ถ€๋ถ„์ด ํฐ ์ฝ”์ŠคํŠธ๋ผ๊ณ  ๋Š๊ปด์ง€์…จ๋‚˜์š”?

โ‡’ Index๊ฐ€ ๊ฑธ๋ ค์žˆ๋Š” ํŠน์ • Key๊ฐ’๋“ค์„ ์—…๋ฐ์ดํŠธ ์‹œ์ผœ์ฃผ๋Š”๊ฑด๋ฐ, ์–ด๋–ป๊ฒŒ ํ•ด์„œ ํฐ ์ฝ”์ŠคํŠธ๋กœ ๊ณ„์‚ฐ๋˜์—ˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

  • ex) ์—ฌ๋Ÿฌ ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ํ•œ ๊ฒŒ์‹œํŒ ๋‹น, 500~1000๊ฐœ์˜ ๊ฒŒ์‹œ๊ธ€์ด ์žˆ์„ ๋•Œ 5๊ฐœ์˜ ํ‚ค์›Œ๋“œ๋ฅผ ๋ณ‘ํ•ฉํ•œ๋‹ค๋ฉด ํฐ ์ฝ”์ŠคํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

โ“ ๊ตฌ์ฒด์ ์ธ ๊ฒฐ๊ณผ๊ฐ€ ์žˆ๋‚˜์š”?

  • ํ˜„์žฌ๋Š” ๋‹จ์ˆœํžˆ ๋ณ‘ํ•ฉ๋  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์–ด๋‘์—ˆ๊ณ , ์ดํ›„ ํ…Œ์ŠคํŠธ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

โ‡’ ๋จผ์ € ํ˜„์žฌ์˜ 5000๊ฐœ์˜ ์—…๋ฐ์ดํŠธ๊ฐ€ DB์—์„œ ์‹œ๊ฐ„์ด ์–ผ๋งˆ๋‚˜ ๊ฑธ๋ฆฌ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ํ•ด๊ฒฐ๋ฒ•์„ ์ •ํ•˜๋Š”๊ฒŒ ๋‚ซ์ง€ ์•Š์„๊นŒ์š”?

โ“ ๋ฐฐ์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•ด ์šฐ๋ฆฌ๊ฐ€ ์–ป๊ณ ์žํ•˜๋Š” ์„ฑ๋Šฅ ์ด์ ์€ ์–ด๋Š์ •๋„์ธ๊ฐ€์š”?

  • ํ˜„์žฌ soft delete๋กœ ํ‚ค์›Œ๋“œ ๋ณ‘ํ•ฉ์„ ๋งŒ๋“ค๊ณ , ๋ฐฐ์น˜ ํ”„๋กœ๊ทธ๋žจ์„ ํ†ตํ•ด์„œ ์‹ค์ œ ๋ณ‘ํ•ฉ์€ ๋‹ค๋ฅธ ์‹œ๊ฐ„๋Œ€์— ์ง„ํ–‰ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์†๋„๋ณด๋‹ค๋Š”, ์œ ์ €๊ฐ€ ๋ณ‘ํ•ฉ ์ค‘์ธ ๊ทธ๋ฃน์— ๋“ค์–ด์™”์„ ๋•Œ ๊ฒช์„ ๋ถˆํŽธ์„ ํ•ด์†Œํ•˜์—ฌ UX๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•จ์ด ๋” ํฝ๋‹ˆ๋‹ค.

โ‡’ ์ ‘๊ทผ์ด ์ž˜๋ชป๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. โ€˜์Šค๋ ˆ๋“œ๊ฐ€ ๋ฐ”๋ผ๋ณด๊ณ  ์žˆ๋Š” ํ‚ค์›Œ๋“œโ€™ ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค์–ด์„œ, ์–ด๋Š ํ‚ค์›Œ๋“œ๋ฅผ ๋ฐ”๋ผ๋ณด๊ณ  ์žˆ๋Š”์ง€ ์ˆ˜์ •ํ•˜๋Š”๊ฒŒ ํšจ์œจ์ ์ด์ง€ ์•Š์„๊นŒ์š”?

  • ์ด ์ˆ˜์ •์ด ๋ฐœ์ƒํ•˜๋Š” ์‹œ๊ฐ„์„ ์ดํ›„์— ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค.

โ‡’ ํ‚ค์›Œ๋“œ๋ฅผ ๋‹จ์ˆœํžˆ ์ง‘ํ•ฉ์œผ๋กœ ๋ณธ๋‹ค๋ฉด, ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ณ‘ํ•ฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์Šค๋ ˆ๋“œ๋ฅผ ๋ฐ”๋ผ๋ณด๋Š” ์ง‘ํ•ฉ์„ ์˜ฎ๊ธฐ๋ฉด ๋˜์ง€ ์•Š์„๊นŒ์š”? ๋ฐฐ์น˜ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๋ฏธ๋ฃจ์–ด์„œ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ณ‘ํ•ฉํ•  ํ•„์š”๊ฐ€ ์žˆ์„๊นŒ์š”?

โ“ ๊ทธ๋ฃน ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค๊ณ  ํ‚ค์›Œ๋“œ๋ฅผ Foreign Key๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋˜์ง€ ์•Š์„๊นŒ์š”?

  • ๊ทธ๋ ‡๊ฒŒ ๊ตฌํ˜„ํ•  ๊ฒฝ์šฐ, ์Šค๋ ˆ๋“œ์˜ Foreign Key๊ฐ€ ๋ฐ”๋€Œ์ง€ ์•Š์•„์„œ ์Šค๋ ˆ๋“œ๋งŒ์œผ๋กœ ์ฝ๊ธฐ๊ฐ€ ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ‚ค์›Œ๋“œ ํ…Œ์ด๋ธ”๊นŒ์ง€ ํ™•์ธํ•ด์•ผํ•ด์„œ ์ด๋Ÿฐ ๋ฌธ์ œํ•ด๊ฒฐ์„ ๊ณ ๋ฏผํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ •๋„ ์ œ์•ฝ์‚ฌํ•ญ์ด๋ผ๋„ ํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ์žˆ์„๊นŒ์š”?

โ‡’ ์Šค๋ ˆ๋“œ ํ…Œ์ด๋ธ”์—์„œ ์Šค๋ ˆ๋“œ๋“ค์„ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ํ‚ค์›Œ๋“œ ๊ทธ๋ฃนํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค์–ด์„œ ํ•ด๋‹น ํ‚ค์›Œ๋“œ ๊ทธ๋ฃนํ…Œ์ด๋ธ”์— ์†ํ•œ ์Šค๋ ˆ๋“œ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์–ด๋–จ๊นŒ์š”?

โ‡’ ํ˜„์žฌ๋Š” 5,000๊ฑด์ด๋ผ๊ณ  ํ•˜์ง€๋งŒ, ๋‚˜์ค‘์— 100,000๊ฑด์ด๋ผ๊ณ  ํ•œ๋‹ค๋ฉด ๋ฌผ๋ฆฌ์ ์ธ ๋ณ‘ํ•ฉ๋ณด๋‹ค๋Š” ์ด์ชฝ์ด ๋‚˜์„๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’จ ํ˜น์‹œ ์ง€๊ธˆ ์ทจ์—… ์‹œ์žฅ์ด ๋งŽ์ด ์ถ”์šธ๊นŒ์š”?

โ‡’ ์‹ค์ œ๋กœ ๋งŽ์ด ์ถฅ๊ณ , ๋ฝ‘๋Š” ํšŒ์‚ฌ๋ณด๋‹ค ๋‚ด๋ณด๋‚ด๋Š” ํšŒ์‚ฌ๊ฐ€ ๋” ๋งŽ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋Š” ํƒ€์ด๋ฐ์ด ์•„๋‹ˆ์ง€ ์•Š๋‚˜ ์‹ถ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋‹คํ–‰์ธ ๊ฒƒ์ด, ๊ฐœ๋ฐœ์ž๋Š” ๊ทธ๋‚˜๋งˆ ์ฑ„์šฉ์„ ํ•˜์ง€๋งŒ ํƒ€ ์ง๊ตฐ์€ ์ฑ„์šฉ์ด ์•„์˜ˆ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์šฐ๋ฆฌ๋Š” ์—ด๋ฆฐ ๊ณต๊ณ ์— ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿซ– ๊ธฐ์—… ๋ฏธํŒ… ํ‹ฐํƒ€์ž„์—์„œ ๋ฌด์Šจ ์–˜๊ธฐํ•˜๋‚˜์š”? ๋ฌด์Šจ ์ด์•ผ๊ธฐ๋ฅผ ํ•ด์•ผํ•˜๋‚˜์š”?

โ‡’ ์–ด๋–ค ํฌ์ง€์…˜์„ ์›ํ•˜๋Š”์ง€, ํšŒ์‚ฌ์˜ ์ธ์žฌ์ƒ ๋“ฑ๋“ฑ ์ปฌ์ณํ•์„ ๋ณด๋Š” ์ž๋ฆฌ์ด๋‹ˆ, ํŽธ์•ˆํžˆ ๊ฐ€๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

  • ๋ฉด์ ‘๊ณผ ์•„์˜ˆ ์ƒ๊ด€์ด ์—†๋Š”๊ฑธ๊นŒ์š”?

โ‡’ ์•„์˜ˆ ์—†์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

๐Ÿงช ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์ž‘์„ฑ

  • API ํ…Œ์ŠคํŠธ, ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ API ํ…Œ์ŠคํŠธ ์ค‘์— ๋‹ค๋ฅธ ๊ธฐ๋Šฅ๊ณผ ์˜์กด์„ฑ์„ ๊ฐ€์ง€๋Š” ๊ธฐ๋Šฅ์˜ ๊ฒฝ์šฐ API๋ฅผ ํ˜ธ์ถœํ•ด์„œ ํ•ด์•ผํ• ๊นŒ์š”? ๋ฐฑ์—”๋“œ ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ๋งŒ๋“ค๋ฉด ๋ ๊นŒ์š”?

โ‡’ ์• ์ดˆ์— ๋‹ค๋ฅธ ๊ธฐ๋Šฅ๊ณผ์˜ ์˜์กด์„ฑ์„ ๊ฐ€์ง€๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค. DB ์ข…์†์ ์ธ ๋ถ€๋ถ„์€ ๋ฌด์กฐ๊ฑด Mocking์„ ํ•˜๋Š” ๊ฒƒ์ด ๋‚ซ์Šต๋‹ˆ๋‹ค.

  • API ํ…Œ์ŠคํŠธ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ผ๊นŒ์š”?

โ‡’ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์— ๋Œ€ํ•œ ๊ฒ€์ฆ์ด ๋๋‚˜์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

โ‡’ API ๊ฒ€์ฆ์€ ๊ฒฐ๊ตญ ๊ฑฐ๊ธฐ์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์—๋Ÿฌ ์ผ€์ด์Šค๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ๊ฒƒ, ๊ฒฐ๊ตญ API๋Š” ๊ฐ ํ•จ์ˆ˜ ์‹คํ–‰์˜ ๊ฒฐ๊ณผ๋กœ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋กœ ์ถฉ๋ถ„ํžˆ ๊ฒ€์ฆ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

๐Ÿ‘ฅ ํŒ€ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ ํ”ผ๋“œ๋ฐฑ

  • ์‹ค์ œ๋กœ ์ด๋ ฅ์„œ ๊ฒ€ํ† ํ•˜๋Š” ์‹œ๊ฐ„์€ 1๋ถ„ ์ •๋„

  • ํ•ต์‹ฌ๊ธฐ๋Šฅ๊ณผ ๋„์ „๊ณผ์ œ ๋ถ€๋ถ„์—์„œ, ๊ทธ๋ž˜์„œ ๋ญ˜ ํ–ˆ๋Š”๋ฐ? ๋ผ๋Š” ๊ฒƒ ๋ฐ–์— ์ƒ๊ฐ์ด ์•ˆ๋‚œ๋‹ค.

  • ์ฒ˜์Œ ๋ดค์„ ๋•Œ ๋“œ๋Š” ์ƒ๊ฐ์€ ๊ธฐ์ˆ ์ ์ธ ๋„์ „ ๊ณผ์ œ๊ฐ€, ์ฝ๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ•˜์—ฌ๊ธˆ ๋„ˆ๋ฌด ํฌ๊ด„์ ์ธ ๋Š๋‚Œ์„ ์ค€๋‹ค.

    โ‡’ ๊ธฐ์ˆ  ๋„์ „ ๊ณผ์ œ์˜ ์ œ๋ชฉ์—์„œ ์ž„ํŒฉํŠธ๋ฅผ ๋” ์ฃผ๋ฉด ์ข‹๊ฒ ๋‹ค.

    โ‡’ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ์†Œ๊ฐœ๋กœ ๋นผ๋Š”๊ฒŒ ์ข‹๊ฒ ๋‹ค. ์„น์…˜์„ ๋ดค์„ ๋•Œ ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋Š”์ง€ ๋ช…ํ™•ํ•˜์ง€๊ฐ€ ์•Š๋‹ค. โ‡’ ์–ด๋–ค ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ์™œ ๊ทธ๋Ÿฐ ์„ ํƒ์„ ํ–ˆ๋Š”์ง€๊ฐ€ ์ œ๋ชฉ์—์„œ ๋ณด์ด๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

  • ์ฝ์„ ๋•Œ์˜ ํ๋ฆ„์ด ๋ช…ํ™•ํ•˜์ง€ ์•Š๋‹ค. ์ฝ์—ˆ์„ ๋•Œ, Problem์— ๋‚˜์˜จ ๋ฌธ์ œ๋“ค์˜ ํ•ด๊ฒฐ๊ณผ ๊ณผ์ •์ด ์ถฉ๋ถ„ํžˆ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์•„์„œ ๋จธ๋ฆฟ์†์—์„œ ์ •๋ฆฌ๋˜์ง€ ์•Š๋Š”๋‹ค.

  • ์ง€๊ธˆ ๋‚ด์šฉ์€ ํ”„๋ ˆ์  ํ…Œ์ด์…˜ ๋‚ด์šฉ๊ฐ™๋‹ค. ์ด๋ ฅ์„œ๋‚˜ ์ฑ„์šฉ์„ ์œ„ํ•ด์„œ๋Š” ํ•œ ์ค„์„ ์ฝ์—ˆ์„ ๋•Œ, ์–ด๋–ค ์„ฑ๊ณผ๊ฐ€ ์žˆ๋Š”์ง€ ์ „๋‹ฌ๋˜๋Š”๊ฒŒ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

    ex) ๋ฌผ๋ฆฌ์—”์ง„์„ ์ด์šฉํ•œ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋ฒ„๋ธ”์ฐจํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ UX ํ–ฅ์ƒโ€™

  • ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ๋Š” ๊ดœ์ฐฎ์€๋ฐ, ์ด๋ ฅ์„œ์—์„œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„ ๊ฐ™๋‹ค.

๐Ÿ“„ ์ด๋ ฅ์„œ ํ”ผ๋“œ๋ฐฑ

  • ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ์™€ ์ด๋ ฅ์„œ ๋‚ด์šฉ์ด ๊ฐ™๋‹ค๋ฉด, ์ฝ๋Š” ์‚ฌ๋žŒ์ด ์ฝ์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค.

  • ๊ธฐ์ˆ  ์Šคํ‚ฌ์„ ๋‹จ์ˆœ ๋‚˜์—ดํ•˜๋Š” ๊ฑด ์•„๋ฌด ์˜๋ฏธ๊ฐ€ ์—†๊ณ , ํ„ธ๋ฆฌ๊ธฐ ๋”ฑ ์ข‹๋‹ค.

    โ‡’ ์–ด๋””๊นŒ์ง€ ์•„๋Š”์ง€ ๊ผฌ๋ฆฌ ์งˆ๋ฌธ ํ•  ๊ฒƒ.

    โ‡’ ํ”„๋ก ํŠธ์—”๋“œ / ๋ฐฑ์—”๋“œ์ฒ˜๋Ÿผ ํŒŒํŠธ๋ฅผ ๋‚˜๋ˆ ์„œ ์–ด๋–ค ๊ฒƒ์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์ ๋Š” ๊ฒƒ์ด ๋‚˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ๋‚ด๊ฐ€ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์—์„œ ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋Š” ๊ฐ€์น˜๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€? ๋ฅผ ์ ์–ด์ฃผ๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ex) React์™€ TS๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋†’์€ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

    โ‡’ ์ด๋ ฅ์„œ๋Š” ์ง€์›ํ•ด์„œ ํ‰๊ฐ€๋ฐ›๊ธฐ ์œ„ํ•จ๋„ ์žˆ์ง€๋งŒ, ๋ฉด์ ‘์„ ๋‚ด๊ฐ€ ์›ํ•˜๋Š”๋Œ€๋กœ ์ด๋Œ์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ฒซ๋ฒˆ์งธ ๊ด€๋ฌธ์ด๋‹ค. ๋‚ด๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ„์•ผ์™€ ์—ญ๋Ÿ‰์„ ๊ตฌ์ฒด์ ์œผ๋กœ ์ ์–ด์ฃผ๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

  • ํ”„๋กœ์ ํŠธ ๋ถ€๋ถ„์€ ์ •๋ฆฌ๊ฐ€ ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ๊ตฌ์–ด์ฒด๋กœ ์“ฐ์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

    โ‡’ ๋ฌธ์žฅ์„ ๋” ๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๋งํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ์ด ์•„๋‹Œ ๊ธ€๋กœ์จ์˜ ๊ธ€์„ ์“ฐ๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ์š”์•ฝ์„ ํ•ด์„œ ๋ฌธ์ œ์™€ ๊ฐœ์„ ์ด ๋ช…ํ™•ํ•˜๊ฒŒ ๋ณด์ด๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

  • ํ”„๋กœ์ ํŠธ์—์„œ ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š์€, ๋ถ€์ŠคํŠธ์บ ํ”„์—์„œ ๋ฐฐ์šด ๊ฒƒ์ด ์žˆ๋‹ค๋ฉด ์ ์–ด์ค˜๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ CS๋ฅผ ๋ฐฐ์› ๋‹ค๊ฑฐ๋‚˜ ๋“ฑ, SQLD ์„ค๋ช…์ฒ˜๋Ÿผ ์ ์œผ๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

โ“ ์ฐฝ์—…๊ฒฝํ—˜์€ ๋„ฃ๋Š”๊ฒŒ ์ข‹์„๊นŒ์š” ๋นผ๋Š”๊ฒŒ ์ข‹์„๊นŒ์š”?

โ‡’ ์ด๋ ฅ์„œ์— ๋นผ์„œ ์–ป๋Š” ๊ฒƒ์ด ๋ฌด์—‡์ด์ฃ ?

โ‡’ ์ฐฝ์—…์„ ํ–ˆ๋‹ค๋Š” ๊ฒƒ์œผ๋กœ ์–ป์€ ๊ฒƒ์€ ๋ฌด์—‡์ด์ฃ ?

โ‡’ ๋Œ€๋ถ€๋ถ„์ด ์Šคํƒ€ํŠธ์—…์ผํ…๋ฐ, ๋„ฃ๋Š” ๊ฒƒ์ด ๋” ์ด์ ์ด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ์ง๋ฌด๋‚˜ ํšŒ์‚ฌ์™€ ์œ ๊ด€ํ•˜๊ฒŒ ์“ฐ๋ฉด ๋” ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ๊ฐœ๋ฐœ์ž ์ด๋ ฅ์„œ ์“ฐ๋Š”๋ฐ ์ฟ ํŒก๋งจ์„ ์“ด๋‹ค๋ฉด ๋ณ„๋กœ๊ฒ ์ง€๋งŒ, ์ฐฝ์—…์€ ์Šคํƒ€ํŠธ์—…๊ณผ ๊ด€๋ จ์ด ์žˆ์œผ๋‹ˆ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.

  • ๋ถ€์ŠคํŠธ์บ ํ”„์—์„œ ์–ป์€ ๊ฒƒ์„ ์ ์„ ๋•Œ, ๊ตฌ์ฒด์ ์ธ ๊ฒƒ ๋ง๊ณ  ์• ๋งคํ•˜๊ฒŒ ์ ์œผ๋ฉด ์ ์–ด๋„ ๊ดœ์ฐฎ์„ ๊ฒƒ ๊ฐ™๋‹ค.

    โ‡’ ๊ณผ์ •์„ ํ†ตํ‹€์–ด์„œ ์ ๋Š” ๋“ฑ. ๊ฐœ์ธํ”„๋กœ์ ํŠธ๋กœ ๋ฌถ์–ด์„œ ์ ์œผ๋ฉด ๋˜์ง€ ์•Š์„๊นŒ์š”?

  • ์ œ์ฃผ๋„ ์—ฌํ–‰์ง€๋„ ๊ด€๋ จํ•ด์„œ๋Š” ์“ฐ๋Š”๊ฒŒ ์–ด๋–จ ๊ฒƒ ๊ฐ™์œผ์‹ ๊ฐ€์š”?

    โ‡’ ์ž๊ธฐ์†Œ๊ฐœ์— ์˜ˆ์‹œ๋กœ ์–ธ๊ธ‰ํ•˜๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ์™ธ๋ถ€๋งํฌ ๋งŽ์ด ๋ณด์‹œ๋‚˜์š”?

  • ๊นƒํ—™, ๋ธ”๋กœ๊ทธ๋Š” ์ข…์ข… ๋ณด๋Š”๋ฐ ๋…ธ์…˜์€ ์ž˜๋ณด์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.
  • ์ž๊ธฐ์†Œ๊ฐœ ํŽ˜์ด์ง€๊ฐ€ ๋…ธ์…˜์ด๋ฉด ์ข…์ข… ๋ˆŒ๋Ÿฌ๋ณด๋Š” ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค.

๐Ÿ” ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ ๋ฆฌ๋ทฐ

  • PR ๋‹จ์œ„๊ฐ€ ๋„ˆ๋ฌด ํฌ๋‹ค.

  • PR merge๋Š” Squash merge๊ฐ€ ๋‚ซ์ง€ ์•Š์„๊นŒ?

  • types ํŒŒ์ผ ์ชผ๊ฐœ๊ธฐ

    โ‡’ ๋‚˜์ค‘์— ํ•ฉ์‹œ๋‹ค๋Š” ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ์— ์ชผ๊ฐœ๋‘์–ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    โ‡’ type export / import ์”์‹œ๋‹ค.

  • import ์ปจ๋ฒค์…˜

    โ‡’ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ โ†’ ํƒ€์ž… โ†’ ํ•จ์ˆ˜, ์ปดํฌ๋„ŒํŠธ๋“ค์ด ์ผ๋ฐ˜์ ์ธ ์ˆœ์„œ

  • ์ฒ˜์Œ๋ณด๋Š” ์‚ฌ๋žŒ์„ ์œ„ํ•ด ์ฃผ์„ ์จ์ฃผ๊ธฐ

  • community as string ๋‹ค๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜๋Š” ์—†๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ

  • undefined ๋ฐฐ์—ด ์˜ฌ ๋•Œ, ๋ถ„๊ธฐ๋กœ ๊ฐ€๋ฅด์ง€ ๋ง๊ณ  concat์„ ์“ฐ๋ฉด ๋œ๋‹ค.

    โ‡’ if / else ๋ถ„๊ธฐ๋Š” ๋‚˜์ค‘์— ํ…Œ์ŠคํŠธ ํ•˜๊ธฐ๋„ ํž˜๋“ค์–ด์„œ ์ตœ๋Œ€ํ•œ ์•ˆ์จ์ฃผ๋Š”๊ฒŒ ์ข‹๋‹ค.

  • ๋ถˆํ•„์š”ํ•œ ํ• ๋‹น ์ค„์ด๊ธฐ

Week06. ๋งˆ์ง€๋ง‰ ๋ฉ˜ํ† ๋ง

โ“ ๋ฐฑ์—”๋“œ ๋ธŒ๋žœ์น˜์—์„œ ํ”„๋ก ํŠธ์—”๋“œ ํด๋”๋ฅผ ์ง€์šธ ์ˆ˜ ์žˆ์„๊นŒ์š”?

  • ์ผ๋‹จ ์ด ๊ธฐํšŒ์— ๋ธŒ๋žœ์น˜๋ฅผ ๋‚˜๋ˆ„๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.
  • ์ฒ˜์Œ ๋ฐฑ์—”๋“œ์—์„œ ํ”„๋ก ํŠธ์—”๋“œ ํด๋”๊ฐ€ pull ๋œ ์‹œ์ ์ด ๊ณตํ†ต ์กฐ์ƒ์ด๋ผ์„œ, ๊ทธ๋•Œ๊นŒ์ง€ ๋Œ์•„๊ฐ€์„œ ์ปค๋ฐ‹์„ ๋ฐ”๊ฟ”์•ผํ•ฉ๋‹ˆ๋‹ค.

โ“ ๊ทธ๋Ÿผ tracking์—์„œ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ main์—์„œ frontend ํด๋”๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ๋Š” ์•ˆ๋ ๊นŒ์š”?

  • ๊ทธ๊ฑด ์‚ฌํŒŒ์˜ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ •ํ†ต ๋ฐฉ๋ฒ•์€ ๋‹น์‹œ์˜ ์ปค๋ฐ‹์„ ๋ณ€๊ฒฝํ•ด์„œ frontend ํด๋”๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ๋‹ค๋Š” ๊ณผ๊ฑฐ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • rebase ํ•˜๋ฉด ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทผ๋ฐ ์ด๊ฒƒ๋„ ๋ˆ„๊ตฐ๊ฐ€์˜ local์—์„œ merge ๋˜๊ฑฐ๋‚˜ push ๋˜๋ฉด ๋‹ค์‹œ ํ„ฐ์งˆ ์ˆ˜ ์žˆ๋‹ค.

โ“ ์ด๋Ÿฐ ์ƒํ™ฉ์— ํ•™์Šตํ•  ํ‚ค์›Œ๋“œ๊ฐ€ ์žˆ์„๊นŒ์š”?

โ‡’ git flow๋‚˜ github flow๋ฅผ ๊ณต๋ถ€ํ•˜์‹œ๊ฑฐ๋‚˜, ๋ชจ๋…ธ๋ ˆํฌ๋ฅผ ์‚ฌ์šฉํ•˜์‹ ๋‹ค๋ฉด ๋ชจ๋…ธ๋ ˆํฌ ๊ด€๋ฆฌ ๋„๊ตฌ๋ฅผ ์ฐพ์•„๋ด๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ์ด๋ฒˆ ๊ธฐํšŒ์— ์˜ˆ์ƒ์น˜์•Š๊ฒŒ ๋ชจ๋…ธ๋ ˆํฌ์˜ ๋‹จ์ ์„ ๋งŽ์ด ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ๋ชจ๋…ธ๋ ˆํฌ๊ฐ€ ๋Œ€๋ถ€๋ถ„์˜ ์‹œ๊ฐ„์„ merge conflict ํ•˜๋Š”๋ฐ ์“ด๋‹ค๋Š” ๊ฒƒ์ด ๊ดœํžˆ ๋‚˜์˜จ ๋ง์ด ์•„๋‹™๋‹ˆ๋‹ค.

โ“ ๊นƒํ—™์—์„œ conflict๊ฐ€ ์ž์ฃผ ๋‚˜๋Š” ๊ฑด ๋ฌธ์ œ์ธ๊ฐ€์š”?

โ‡’ ๋„ค ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ตฌ์กฐ๋ฅผ ๊ฐ™์ด ์งœ๊ณ  ์ตœ๋Œ€ํ•œ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š์œผ๋ฉด์„œ ํ˜‘์—…ํ•ฉ๋‹ˆ๋‹ค.

โ“ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์˜ ์ €์žฅ์†Œ๋ฅผ ๋ถ„๋ฆฌํ•˜๋ ค๊ณ  ํ–ˆ๋˜ ์‹œ๋„๋Š” ๊ธ์ •์ ์ผ๊นŒ์š”?

โ‡’ ๊ตณ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์„œ๋กœ์˜ ํด๋”๊ฐ€ ์„ž์ด์ง€ ์•Š๋Š”๊ฒŒ ๋ฌด์Šจ ์˜๋ฏธ๊ฐ€ ์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

  • ์ €ํฌ๋Š” ์ €์žฅ์†Œ๋ฅผ ๋‚˜๋ˆ„๋“ฏ์ด ๋ธŒ๋žœ์น˜๋ฅผ ๋‚˜๋ˆ„๋ ค๊ณ  ํ–ˆ๋˜๊ฑด๋ฐ ์˜๋ฏธ์—†๋Š” ์‹œ๋„์˜€์„๊นŒ์š”?

โ‡’ ์ง€๊ธˆ์ฒ˜๋Ÿผ ์ €์žฅ์†Œ๊ฐ€ ํ•˜๋‚˜์ธ ๊ฒฝ์šฐ์˜€๋‹ค๋ฉด ์ฐจ๋ผ๋ฆฌ ํด๋”๊ฐ€ ํ•˜๋‚˜์˜€์–ด๋„ ์ƒ๊ด€ ์—†์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ์ž‘์—…ํ•˜๋‹ค๊ฐ€ ๋ฐฑ์—”๋“œ ์ฝ”๋“œ๋ฅผ ๋ณด๊ฒŒ๋˜๋Š” ๊ฒฝ์šฐ๋„ ํ•„์š”ํ•˜์ง€ ์•Š์„๊นŒ์š”?

  • ์‹ค๋ฌด์—์„œ๋„ ์ฝ”๋“œ๋ฅผ ๋ณด๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์ด ์žˆ๋‚˜์š”?

โ‡’ Swagger ๋“ฑ์œผ๋กœ ๋ชจ๋“  ์ •๋ณด๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์—†์–ด์„œ ๋ณผ ์ผ์ด ์ƒ๊น๋‹ˆ๋‹ค.

โ— ๋ธŒ๋žœ์น˜ ์ „๋žต์ด ์ž˜๋ชป๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ release๋ฅผ ๋‹น๊ฒจ์˜ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, release๊ฐ€ main์œผ๋กœ ๋ณ‘ํ•ฉ๋˜์—ˆ์„ ๋•Œ ๋ฐฐํฌ๋˜๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ action ์„ค๊ณ„๊ฐ€ ์ž˜๋ชป๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ๊ทธ๋Ÿผ ์ €์žฅ์†Œ๋ฅผ ์™„์ „ํžˆ ๋ถ„๋ฆฌํ•˜๋Š”๊ฑด ์–ด๋–ค ์ด์ ์ด ์žˆ๋‚˜์š”?

โ‡’ ๊นƒํ—ˆ๋ธŒ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค. ์ด๋ฒˆ ์ผ ๊ฐ™์€ conflict๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

โ“ ํ•œ ํด๋”์— ์„œ๋ฒ„, ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ๋ฅผ ๋‘๋Š” ๊ฒƒ๊ณผ ๋ชจ๋…ธ๋ ˆํฌ๋Š” ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ๋‚˜์š”?

โ‡’ ๋‘˜์ด ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ฐจ์ด์ ์ด ์žˆ๋‹ค๋ฉด ๋ชจ๋…ธ๋ ˆํฌ๋Š” ๊ฐ ํด๋”๊ฐ€ ํ•˜๋‚˜์˜ ์„œ๋น„์Šค๊ฐ€ ๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

โ‡’ ์ง€๊ธˆ๊ณผ ๊ฐ™์ด ์„œ๋น„์Šค๋ฅผ ๋‚˜๋ˆŒ ๋ชฉ์ ์ด์—ˆ๋‹ค๋ฉด, ๋ชจ๋…ธ๋ ˆํฌ ๊ด€๋ฆฌ ์ „๋žต์„ ์ฐพ์•„๋ดค์œผ๋ฉด ์ข‹์•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

โ“ ๋“ค์–ด์˜ค์‹œ๋Š”๋ถ„๋“ค์ด ์ €ํฌ๊ฐ€ ๋ธŒ๋žœ์น˜๋ฅผ ์–ด๋–ป๊ฒŒ ์“ฐ๋ ค๊ณ  ํ–ˆ์—ˆ๋Š”์ง€ ์ดํ•ดํ•˜์‹ค๊นŒ์š”?

โ‡’ ์•„๋งˆ main ๋ธŒ๋žœ์น˜๋งŒ ๋ณผ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ธŒ๋žœ์น˜ ์ „๋žต์— ๋Œ€ํ•ด ๊ทธ๋ฆผ์ด๋‚˜ ์„ค๋ช…์„ ๋„ฃ์–ด๋‘๋Š”๊ฒŒ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ํ•˜๋“œ์›จ์–ด ์„ฑ๋Šฅ์— ๋”ฐ๋ฅธ ์„œ๋ฒ„ ์„ฑ๋Šฅ์˜ ๋ฒค์น˜๋งˆํฌ๊ฐ€ ์žˆ์„๊นŒ์š”?

  • ์ง€๊ธˆ ์ €ํฌ ์ฝ”๋“œ๊ฐ€ ๋ฌธ์ œ์ธ๊ฑด์ง€ ํ•˜๋“œ์›จ์–ด๊ฐ€ ๋ถ€์กฑํ•œ๊ฑด์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

โ‡’ ํ•˜๋“œ์›จ์–ด ๋ฌธ์ œ๋Š” ์•„๋‹Œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ์—์„œ ๋Œ๋ ค๋ณด๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ์ดˆ๋‹น request 300๋„ ๋ชป๋ฒ„ํ‹ฐ๋Š”๋ฐ ์ด๊ฒŒ ๋งž์„๊นŒ์š”.

โ‡’ ์—ฐ์‚ฐ์„ ๋นผ๋ฒ„๋ฆฌ๊ณ  ์Šคํ”„๋ง์—์„œ Hello world๋ฅผ ์ฐ๋Š” ๊ฒƒ๋งŒ ๋Œ๋ ค์„œ ํ™•์ธํ•ด๋ณด๋ฉด ํ˜„์žฌ ์ฝ”๋“œ ์„ฑ๋Šฅ ๊ธฐ์ค€์„ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ์•„๋ฌด ๊ฒƒ๋„ ์—†๋Š” Spring, ๋‚ด ๋กœ์ง์ด ์žˆ๋Š” Spring, ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋น„๊ตํ•ด๋ด์•ผ ์ œ๋Œ€๋กœ ๋น„๊ตํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ“ ํ”„๋กœ์ ํŠธ ์‹œ์ž‘๊ณผ ๋๋‚˜๋Š” ์ง€๊ธˆ์˜ ์ฐจ์ด๋Š” ์–ด๋– ์‹ ๊ฐ€์š”?

โ‡’ ์›๋ž˜ ํ”„๋กœ์ ํŠธ ์ƒํ™ฉ์—์„œ ํƒˆ์ฃผํ•˜๋Š” ์‚ฌ๋žŒ์ด ๋งŽ์Šต๋‹ˆ๋‹ค.

  • ์ž๊ดด๊ฐ์ด ๋งŽ์ด ๋“ค๊ณ  ์‰ฝ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ณต์žก๋ฏธ๋ฌ˜ํ•˜๋„ค์š”.
  • ๋‚ด๊ฐ€ ์•„์ง ์•„๋ฌด ๊ฒƒ๋„ ๋ชจ๋ฅธ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋งŽ์ด ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋กœ ํ•˜๋Š” ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด ๋งŽ์ด ๋Š๋ผ์ง€ ์•Š์•˜๋‚˜ ์‹ถ์Šต๋‹ˆ๋‹ค. ๋น„ํ–‰๊ธฐ ๋‚ ๊ฐœ๋ฅผ ๊ฐˆ์•„๋ผ์šฐ๋Š” ๋Š๋‚Œ์ด ๋ญ”์ง€ ์•Œ ๊ฒƒ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. โ‡’ ์žฅ๊ธฐ๊ฐ„ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•ด๋ณธ ๊ฒฝ์šฐ๋Š” ๋งŽ์ง€ ์•Š์œผ๋‹ˆ, ๊ท€ํ•œ ๊ฒฝํ—˜ ๊ฐ™์Šต๋‹ˆ๋‹ค.

โ‡’ ๋ถ€์ŠคํŠธ์บ ํ”„๋Š” ์ˆ˜์งˆ ๊ฒ€์‚ฌ๋ฅผ ํ•˜๊ณ  ๋ฝ‘์•˜๊ธฐ ๋•Œ๋ฌธ์— ํƒˆ์ฃผ๊ฐ€ ์ ์ง€ ์•Š์•˜๋‚˜ ์‹ถ์Šต๋‹ˆ๋‹ค.

  • ๋งŽ์€ ๊ฑธ ๋ฐฐ์šฐ๊ณ  ๋งŽ์€ ๊ฑธ ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค.

  • ๋ถ€ํŠธ์บ ํ”„๋ฅผ ํ•œ ๋ฒˆ ํ–ˆ์–ด์„œ ๋ณ„๋กœ ํฐ ์ฐจ์ด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ฒ˜์Œ์—๋Š” ์š•์‹ฌ ์—†์ด ์‹œ์ž‘ํ–ˆ๋Š”๋ฐ, ์ ์  ์š•์‹ฌ์ด ์ƒ๊ฒจ์„œ ์žฌ๋ฏธ์žˆ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

    โ‡’ ๋งž์•„์š”. ์žฌ๋ฏธ์žˆ์–ด์•ผ ํ•  ์ˆ˜ ์žˆ์„๊ฒ๋‹ˆ๋‹ค. ํšŒ์‚ฌ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ผ๊ฑฐ์—์š”. ํ•˜๊ณ  ์‹ถ์€ ์ผ์ด ๋ณด์ธ๋‹ค๋ฉด ์ ๊ทน์ ์œผ๋กœ ์–ดํ•„ํ•˜๋Š”๊ฒŒ ์ข‹๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Ÿฐ ์‚ฌ๋žŒ์„ ๋‹ค๋“ค ๋” ์ข‹์•„ํ•  ๊ฒ๋‹ˆ๋‹ค.

โ“ ๋ฉ˜ํ† ๋‹˜์€ ์ด ์งˆ๋ฌธ์„ ํ†ตํ•ด ์ €ํฌ์˜ ๋ฌด์—‡์„ ์ดํ•ดํ•˜๊ณ  ์‹ถ์œผ์‹ ๊ฐ€์š”?

โ‡’ ํŒ€ํ”„๋กœ์ ํŠธ๋Š” 6์ฃผ์ด๊ณ , ํ’€ํƒ€์ž„์ด๋‹ˆ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ์ƒ๊ฐ์— ๋ณ€ํ™”๊ฐ€ ๊ถ๊ธˆํ•ด์„œ ์—ฌ์ญค๋ดค์Šต๋‹ˆ๋‹ค. ๊ทธ ์ด์ „๊นŒ์ง€๋Š” ๊ฐœ๋ฐœ์— ๋ชฐ์ž…ํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์€ ์—†์—ˆ์„ํ…Œ๋‹ˆ, ์˜จ์ „ํžˆ ๊ฐœ๋ฐœ์— ๋ชฐ์ž…ํ–ˆ์„ ๋•Œ ๋ฌด์—‡์„ ๋Š๊ผˆ๋Š”์ง€ ํšŒ๊ณ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์งˆ๋ฌธ์„ ๋“œ๋ ธ์Šต๋‹ˆ๋‹ค.

โ“ ๋ฉ˜ํ† ๋‹˜์˜ ๋ฉ˜ํ† ๋ง ์†Œ๊ฐ์€ ์–ด๋– ์‹ ๊ฐ€์š”?

โ‡’ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•  ๋•Œ์— ๋น„ํ•ด์„œ ๋‹ค๋“ค ํ•œ ๋‹จ๊ณ„ ์Šคํ…์—…์„ ํ•œ ๊ฒƒ ๊ฐ™์•„์„œ ๋‹คํ–‰์ž…๋‹ˆ๋‹ค. ๋ฉ˜ํ† ๋ง์˜ ์„ฑ๊ณผ์™€ ์ค„ ์ˆ˜ ์žˆ๋Š”๊ฒŒ ์žˆ์–ด์„œ ๋‹คํ–‰์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒŒ ๋๋‚˜๋ฉด ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด ๋ถ€์ŠคํŠธ์บ ํ”„๋ผ๋Š” ๋ณดํ˜ธ๋ง‰ ์•ˆ์— ์žˆ๋‹ค๊ฐ€, ๋ณดํ˜ธ๋ง‰์ด ์—†๋Š” ์ฑ„์šฉ์‹œ์žฅ์— ๋˜์ ธ์งˆ๊ฑฐ๋ผ๋Š” ๊ฑฑ์ •์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๋Š” ํƒˆ์ฃผํ•  ์ˆ˜ ์žˆ์—ˆ์„ํ…๋ฐ, ๋๊นŒ์ง€ ๋งˆ๋ฌด๋ฆฌ๋ฅผ ํ•˜๊ฒŒ๋˜์–ด ์ข‹์Šต๋‹ˆ๋‹ค.

โ“ ๋‹ด๋‹น์ž์™€์˜ ๋งŒ๋‚จ์—์„œ ๋ญ˜ ๋ฌผ์–ด๋ด์•ผํ•ฉ๋‹ˆ๊นŒ?

โ‡’ ํšŒ์‚ฌ์— ๊ถ๊ธˆํ•œ ๊ฑธ ๋ฌผ์–ด๋ณด๊ณ , ์ธ์‚ฌ๋‹ด๋‹น์ž์—๊ฒŒ ์•ฝ๊ฐ„์˜ ์–ดํ•„์„ ํ•˜๊ณ  ์˜ค๋ฉด ๋ฉ๋‹ˆ๋‹ค.

โ“ ๊ตญ๋‚ด ๊ฐœ๋ฐœ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ถ”์ฒœ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

โ‡’ ๊ธ€๋กœ๋ฒŒ๋กœ ๋„˜์–ด๊ฐ€์„ธ์š”.

โ“ ์˜คํ”ˆ์†Œ์Šค๋ฅผ ์–ด๋–ป๊ฒŒ ์ง„์ž…ํ•ด์•ผํ• ๊นŒ์š”?

โ‡’ ์‹ ์ž… ๋•Œ ๋ณ„๋กœ ์˜๋ฏธ ์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ์—†๋Š” ๊ธฐ์—ฌ๋Š” ์˜๋ฏธ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์˜คํƒ€๋‚˜ ๋ฒˆ์—ญ์œผ๋กœ ์ฐธ์—ฌํ•ด๋„ ํฐ ๋„์›€์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์“ฐ๋Š” ์˜คํ”ˆ์†Œ์Šค๋‚˜ ๊ด€์‹ฌ์žˆ๋Š” ์˜คํ”ˆ์†Œ์Šค์— ์ฐธ์—ฌํ•˜์„ธ์š”.

โ— ์ •๊ณต๋ฒ•์ด ์ œ์ผ ๋น ๋ฅด๋‹ค.

โš ๏ธ **GitHub.com Fallback** โš ๏ธ