Search
๐Ÿคน๐Ÿผโ€โ™€๏ธ

Module & State Management

Module, State Management ์•Œ์•„์•ผ ํ•˜๋Š” ์ด์œ 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ฝ”๋“œ์˜ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ด๊ณ  ์‹ถ๋‹ค๋ฉด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ Module๋กœ ๊ตฌ๋ถ„ํ–ˆ์„ ๋•Œ ๋ฐ์ดํ„ฐ์˜ ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด

์ด ๋ฌธ์„œ๋ฅผ ๋ณด๊ณ  ๋‚˜๋ฉด

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ๋•Œ ๋ชจ๋“ˆ ๋‹จ์œ„๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.
์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฐœ๋…์ธ ์ผ๊ด€์„ฑ๊ณผ ์ƒํƒœ์ ‘๊ทผ ๋ฒ”์œ„์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค.

Module

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์ฝ”๋“œ๋ฅผ ๋กœ๋“œํ•  ๋•Œ "๋ชจ๋“  ๊ฒƒ์„ ๊ณต์œ ํ•˜๋Š”" ๋ฐฉ์‹์€ ๊ฐ€์žฅ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์‰ฌ์šด ๋ถ€๋ถ„์ด๊ณ  ์–ธ์–ด์ ์œผ๋กœ๋„ ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์–ธ์–ด๋“ค์€ ์ฝ”๋“œ์˜ ์Šค์ฝ”ํ”„๋ฅผ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•ด ํŒจํ‚ค์ง€ ๊ฐ™์€ ๊ฐœ๋…์„ ๊ฐ–๊ณ  ์žˆ์ง€๋งŒ, ES6 ์ด์ „๊นŒ์ง€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์— ์ •์˜๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ชจ๋“  ๋ถ€๋ถ„์€ ํ•˜๋‚˜์˜ ์ „์—ญ ์Šค์ฝ”ํ”„๋ฅผ ๊ณต์œ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ณต์žกํ•ด์งˆ์ˆ˜๋ก ๋” ๋งŽ์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๊ณ , ์ด๋Ÿฌํ•œ ๋ฐฉ์‹์€ ์ด๋ฆ„ ์ถฉ๋Œ์ด๋‚˜, ๋ณด์•ˆ์ƒ ์šฐ๋ ค๋˜๋Š” ๋ฌธ์ œ๋“ค์„ ์ผ์œผ์ผฐ์Šต๋‹ˆ๋‹ค. ES6์˜ ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜๋Š” ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์ด์—ˆ๊ณ  Module์ด ๋“ฑ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค.
๋ชจ๋“ˆ์€ ํŠน์ • ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•˜๋‚˜์˜ ์ฝ”๋“œ ๋ฌถ์Œ ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์ด ๋ชจ์—ฌ ํ•˜๋‚˜์˜ ํฐ ํ”„๋กœ๊ทธ๋žจ์ด ๋˜๋ฉฐ, ๋ชจ๋“ˆ์€ ๋˜ ๋‹ค๋ฅธ ๋ชจ๋“ˆ์˜ ์ผ๋ถ€๋กœ์„œ ๊ธฐ๋Šฅ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๋ชจ๋“ˆ์˜ ํ•ต์‹ฌ์€ "์บก์Šํ™”" ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“ˆ ์•ˆ์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์€ ๋ชจ๋“ˆ ์•ˆ์—์„œ ๋™์ž‘ํ•˜๋ฉฐ, ๋ชจ๋“ˆ ๋ฐ–์—์„œ๋Š” ์ ‘๊ทผ์ด ํ—ˆ์šฉ๋œ ์†์„ฑ์ด๋‚˜ ๋ฉ”์„œ๋“œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค. ES5๊นŒ์ง€๋Š” ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ์ง€์›์ด ๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ชจ๋“ˆ๊ณผ ๋น„์Šทํ•œ ๊ตฌ์กฐ๋ฅผ ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
const module = (function() { const _str = "๋ชจ๋“ˆ ๋ณ€์ˆ˜" return { myfunc: function() { return _str } } })() console.log(module.myfunc()) // ๋ชจ๋“ˆ ๋ณ€์ˆ˜
JavaScript
๋ณต์‚ฌ
๋ฐ˜ํ™˜ ๋ฐ›์€ ๊ฐ์ฒด๋Š” myfunc ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๊ณ , ํด๋กœ์ €์ด๊ธฐ ๋•Œ๋ฌธ์— _str ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ module.myfunc()๋ฅผ ์‹คํ–‰ํ•˜๋ฉด "๋ชจ๋“ˆ ๋ณ€์ˆ˜" ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“ˆ ์™ธ๋ถ€์—์„œ๋Š” _str ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
์ด๋Ÿฌํ•œ ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•˜๋ฉฐ ๋ชจ๋“ˆ ํ˜•ํƒœ์— ๋Œ€ํ•œ ๋‹ˆ์ฆˆ๊ฐ€ ์žˆ๋‹ค ๋ณด๋‹ˆ, ๊ฒฐ๊ตญ ES6์—์„œ๋Š” ๋ณธ๊ฒฉ์ ์œผ๋กœ ๋ชจ๋“ˆ์„ ์ง€์›ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. (ES6์˜ ๋ชจ๋“ˆ์ด ๋‚˜์˜ค๊ธฐ๊นŒ์ง€ ํ‘œ์ค€์„ ์œ„ํ•œ ์›€์ง์ž„์„ ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด ๋งํฌ๋ฅผ ํ™•์ธํ•ด์ฃผ์„ธ์š”!) ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์ด ์‹ฌํ”Œํ•˜๊ณ  ๋ช…ํ™•ํ•˜๋ฏ€๋กœ ๊ฐ€๋Šฅํ•˜๋ฉด ์œ„์™€ ๊ฐ™์€ ๋ฐฉ์‹๋ณด๋‹ค๋Š” ES6์˜ ์ƒˆ๋กœ์šด ๋ชจ๋“ˆ ์ž‘์„ฑ ๋ฐฉ๋ฒ•์„ ์ถ”์ฒœํ•˜๋Š”๋ฐ์š”. ES6์—์„œ ์ƒˆ๋กญ๊ฒŒ ์ง€์›ํ•˜๋Š” ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์€ ๋‹ค์Œ์˜ ๊ทœ์น™์— ๋”ฐ๋ผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
๋ชจ๋“ˆ์€ ํŒŒ์ผ ๋‹จ์œ„๋กœ ๊ตฌ์„ฑํ•˜๋Š” ๊ฑธ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๊ฐ„๋‹จํ•œ ๋ฉ”์„œ๋“œ ํ˜•ํƒœ์ธ ๋ชจ๋“ˆ๋“ค์ธ ๊ฒฝ์šฐ ํ•œ ๊ฐœ์˜ ํŒŒ์ผ์—์„œ ๊ด€๋ฆฌํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ๋ชจ๋“ˆ์˜ ๋ณ€์ˆ˜, ํ•จ์ˆ˜, ํด๋ž˜์Šค ๋“ฑ์€ export ํ‚ค์›Œ๋“œ๋กœ ๋…ธ์ถœํ•˜๊ณ  import๋กœ ๋‹ค๋ฅธ ๋ชจ๋“ˆ, ํŽ˜์ด์ง€์—์„œ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ•œ๋‹ค. ๋ชจ๋“ˆ์€ ์ˆœํ™˜ ์ฐธ์กฐ๋ฅผ ํ•  ์ˆ˜ ์—†๋‹ค. ๋ชจ๋“ˆ ์‹œ์Šคํ…œ์€ ํ•ญ์ƒ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ๋งจ ์œ„์— ์ฒ˜์Œ ์‹คํ–‰๋˜๋Š” ๋ฃจํŠธ ํŽ˜์ด์ง€/๋ชจ๋“ˆ์ด ์žˆ์œผ๋ฉฐ ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ๋งŒ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ชจ๋“ˆ์˜ ์ด๋ฆ„์€ ์ค‘๋ณต๋  ์ˆ˜ ์—†๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐ€์ ธ์˜ค๋Š”(import) ์‹œ์ ์— ์ด๋ฆ„์„ ์žฌ์ •์˜ํ•ด ์ถฉ๋Œ์„ ํ”ผํ•  ์ˆ˜ ์žˆ๋‹ค.

์ƒํƒœ๋ž€

ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๋ฉด์„œ ์ƒํƒœ(state)๊ด€๋ฆฌ๋ผ๋Š” ์šฉ์–ด๋ฅผ ๋งŽ์ด ์“ฐ๋Š”๋ฐ์š”. ์ƒํƒœ๋ž€ ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด '๋ฐ์ดํ„ฐ' ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด ์ƒํƒœ ๊ด€๋ฆฌ๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ณต์žกํ•ด์งˆ์ˆ˜๋ก ์ ์  ์–ด๋ ค์›Œ์ง‘๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋‹จ์ˆœํ•œ ๊ตฌ์กฐ์ผ๋•Œ๋ถ€ํ„ฐ ์ด ์ƒํƒœ๋ฅผ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌํ•˜๋ฉด ์ข‹์„์ง€์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์„ ์ถฉ๋ถ„ํžˆ ํ•ด๋ณด๋Š” ๊ฒƒ์€ ๋” ํฐ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ๊ณผ์ •์—์„œ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
๋จผ์ € ์ƒํƒœ๋ž€ ๋ฌด์—‡์ผ๊นŒ์š”? ์ƒํƒœ๊ฐ€ ์žˆ๊ณ , ์ƒํƒœ๊ฐ€ ์•„๋‹Œ ๊ฒƒ์ด ์žˆ์„ํ…๋ฐ์š”. ๋‘˜์€ ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ์„๊นŒ์š”? ์ƒํƒœ์—์„œ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์€ ๋ฐ”๋กœ ๊ฐ’์ด ๋ณ€ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์ด ๋ณ€ํ•˜๋Š”๋ฐ ์˜ˆ์ธก๋œ ๊ฐ’์œผ๋กœ ๋ณ€ํ•ด์•ผ ์˜๋„ํ•œ๋Œ€๋กœ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋‹ˆ, ์˜ˆ์ธก ๋ฒ”์œ„ ์•ˆ์—์„œ ๋ณ€ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ทธ ์˜ˆ์ธก๋œ ๋ฒ”์œ„๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ, ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ œ์•ฝ์กฐ๊ฑด์ด๋‚˜ ๊ตฌ์กฐ์ ์ธ ์„ค๊ณ„๋ฅผ ๊ณ ๋ฏผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์˜ˆ์ธก ๋ฒ”์œ„๋ฅผ ์ตœ์†Œํ™” ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ƒํƒœ์— ๋Œ€ํ•ด ์ผ๊ด€๋˜๊ฒŒ READํ•˜๋Š” ๋กœ์ง๊ณผ, ์ตœ์†Œํ™”ํ•œ Writeํ•˜๋Š” ๋กœ์ง์„ ๋งŒ๋“ค ๋•Œ ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.
๋ฒ”์œ„๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š”๊ฑฐ๋Š” ๋ชจ๋“ˆ ๋‹จ์œ„, ์Šค์ฝ”ํ”„ ๋‹จ์œ„์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์œผ๋กœ ํ™•์žฅ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒํƒœ์— ๋Œ€ํ•œ ์ผ๊ด€์„ฑ์€ ์ƒํƒœ๋ฅผ ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ READํ•˜๋Š” ๋ฐฉ์‹์„ ๊ณ ๋ฏผํ•ด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒํƒœ๋ฅผ ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ์ง์ ‘์ ์œผ๋กœ ์ˆ˜์ •ํ•œ๋‹ค๋ฉด, ์ƒํƒœ๋ฅผ ์˜ˆ์ธกํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์–ด๋ ค์šฐ๋‹ˆ ์ˆ˜์ •ํ•˜๋Š” ๋ถ€๋ถ„์„ ์ œํ•œํ•˜๊ณ , ๊ทธ ์ฑ…์ž„์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋Œ€์ƒ์ด ๋ถ„๋ช…ํ•˜๊ฒŒ ์—ญํ• ์„ ๊ฐ€์ง„๋‹ค๋ฉด ์ตœ์†Œํ™”ํ•œ write๊ฐ€ ๊ฐ€๋Šฅํ•ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์˜ˆ์ œ๋ฅผ ํ†ตํ•ด์„œ ํ”„๋ก ํŠธ์—”๋“œ์˜ ์ƒํƒœ ๊ด€๋ฆฌ์— ๋Œ€ํ•ด ์•Œ์•„๋ณผํ…๋ฐ์š”. ์•„์ฃผ ๊ฐ„๋‹จํ•œ ํˆฌ๋‘๋ฆฌ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์ƒํƒœ ๊ด€๋ฆฌ์— ๋Œ€ํ•ด ๋‹ค๋ค„๋ณผ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
์œ„ TodoList ์•ฑ์€ TodoItems๋ผ๋Š” ๋ฐ์ดํ„ฐ ๊ฐ’์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ๊ตฐ๋ฐ์—์„œ ๊ด€๋ฆฌํ•œ๋‹ค๋ฉด ํ•œ ๊ณณ์— ๋ณ€ํ™”๊ฐ€ ์žˆ์„ ๋•Œ๋งˆ๋‹ค, ๋ชจ๋“  ๋ณ€ํ™”๋ฅผ ๊ฐ์ง€ํ•˜๊ณ  ๋ฐ˜์˜ํ•˜๋ ค๋ฉด ์ค‘๋ณต ์ฝ”๋“œ๋„ ๋งŽ์•„์ง€๊ณ  ๋ถˆํ•„์š”ํ•œ dom ์ ‘๊ทผ ๋˜ํ•œ ๋งŽ์•„์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ, ์–ด๋””์„œ ๊ด€๋ฆฌํ•˜๋ฉด ์ข‹์„๊นŒ์š”?
์šฐ์„  ๋ฐ์ดํ„ฐ์™€ ๊ด€๋ จ๋œ ๋ถ€๋ถ„๋“ค์„ ์ฒดํฌํ•˜๊ธฐ ์œ„ํ•ด ์•ž์˜ ๋ฌธ์„œ์—์„œ ๋ณด์•˜๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ๊ฐฑ์‹ ๋˜์•ผ ํ•˜๋Š” ๊ธฐ์ค€์œผ๋กœ UI๋ฅผ ๋ถ„๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
๋” ์„ธ๋ถ€์ ์œผ๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ๋„ ์žˆ์ง€๋งŒ, ์šฐ์„ ์€ ์ด 4๊ฐ€์ง€๋กœ ๋ถ„๋ฆฌํ•ด๋ณผ๊ฑด๋ฐ์š”. ์œ„์ฒ˜๋Ÿผ ๊ตฌ๋ถ„ํ•˜๊ณ  ๋‚˜๋ฉด, TodoApp์ด๋ผ๋Š” ์ปดํฌ๋„ŒํŠธ ์•ˆ์— TodoInput, TodoList, TodoCount UI๋“ค์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๋Ÿฌํ•œ ๊ตฌ์กฐ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ฃผ๊ณ  ๋ฐ›๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ณ ๋ คํ•ด์•ผํ•  ๊ฒƒ์€ ๋ฌด์—‡์ด ์žˆ์„๊นŒ์š”? ๊ทธ๋ฆฌ๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•œ ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ผ๊นŒ์š”? ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•๋“ค์„ ๊ฒ€์ƒ‰ํ•ด๋ณด์…”๋„ ์ข‹๊ณ , ์Šค์Šค๋กœ ๊ณ ๋ฏผํ•œ ๋ฐฉ๋ฒ•์„ ์ง์ ‘ ๊ตฌํ˜„ํ•ด๋ด๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ๋ถ€ํ„ฐ ์ž˜ ๋งŒ๋“ค์–ด์ง„ ํŒจํ„ด๋“ค์„ ๋ฐ”๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ๋ณด๋‹ค๋Š” ์ง์ ‘ ๊ณ ๋ฏผํ•ด๋ณด๊ณ , ๊ตฌํ˜„ํ•ด๋ณด๋Š” ๊ณผ์ •์ด ์žˆ๋‹ค๋ฉด ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ๊ณผ ๋„๊ตฌ๋“ค์„ ๋งŒ๋‚ฌ์„ ๋•Œ ๊ทธ ์˜๋ฏธ๋ฅผ ๋”์šฑ ์ž˜ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ถ€๋ถ„์„ ๊ณ ๋ คํ•ด์„œ ๋กœ๋˜ ๋ฏธ์…˜์— ๋ฐ˜์˜ํ•ด์ฃผ์„ธ์š”.

์œ„ ์˜ˆ์ œ๋กœ ์—ฐ์Šตํ•ด๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด!

๋งํฌ์—์„œ fork๋ฐ›์•„ ์ €์ˆ˜์ค€์—์„œ๋ถ€ํ„ฐ ์ถ”์ƒํ™”์‹œ์ผœ๋‚˜๊ฐ€๋ฉฐ ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์—ฐ์Šตํ•ด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์ž‘์„ฑํ•˜๊ณ  ๋‚œ ๋‹ค์Œ์—๋Š” PR์„ ๋ณด๋‚ด๋ณด์„ธ์š”! ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์—ฌ๋Ÿฌ๋ถ„์˜ PR์— ๋ฆฌ๋ทฐ๋ฅผ ๋‚จ๊ฒจ์ค„๊บผ์—์š”!

์ •๋ฆฌ

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

์ฐธ๊ณ  ๋งํฌ