Skip to content
This repository has been archived by the owner on Apr 13, 2020. It is now read-only.

Latest commit

ย 

History

History
208 lines (127 loc) ยท 20 KB

File metadata and controls

208 lines (127 loc) ยท 20 KB

์‹œ์ž‘ํ•˜๋Š” ๊ธ€

'๋ฆฌ์•กํŠธ ๋„์›€๋‹ซ๊ธฐ(์›์ œ The Road to learn React)'๋Š” ๋ฆฌ์•กํŠธ ์ž…๋ฌธ์ž๋ฅผ ์œ„ํ•œ ์ฑ…์ž…๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ ์„ค์น˜๋ถ€ํ„ฐ ๊ธฐ์ดˆ, ์„œ๋ฒ„ ๋ฐฐํฌ๊นŒ์ง€, ๋ฆฌ์•กํŠธ ๊ฐœ๋ฐœ ์ „ ๊ณผ์ •์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜์•„๊ฐ€ ์œ ์ง€, ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ๋ฆฌ์•กํŠธ ๋””์ž์ธ ํŒจํ„ด๊ณผ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์žฅ๊ณผ ์ ˆ๋งˆ๋‹ค ์ถ”๊ฐ€ ์‹ค์Šต ๋ฐ ์‹ฌํ™” ํ•™์Šต์„ ์œ„ํ•œ ์ฝ๊ธฐ ์ž๋ฃŒ๋ฅผ ์ œ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฑ…์˜ ๋ชฉ์ ์€ ์ˆœ์ˆ˜ํ•œ ๋ฆฌ์•กํŠธ๋งŒ์œผ๋กœ๋„ ํ›Œ๋ฅญํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์™ธ๋ถ€ ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๋„๊ตฌ๋ฅผ ๋‹ค๋ฃจ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค ๊ธฐ์ดˆ๊ฐ€ ํŠผํŠผํ•ด์•ผ ๋” ๋„“์€ ๋ฆฌ์•กํŠธ ์„ธ๊ณ„๋กœ ๋›ฐ์–ด๋“ค ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์•ž์œผ๋กœ ์—ฌ๋Ÿฌ๋ถ„๋“ค์€ ์ด ์ฑ…์„ ์ฝ์œผ๋ฉฐ ํ•ด์ปค ๋‰ด์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค์–ด ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰๊ณผ ์ •๋ ฌ, ํŽ˜์ด์ง€๋„ค์ด์…˜, ํด๋ผ์ด์–ธํŠธ ์บ์‹œ ๊ธฐ๋Šฅ์„ ์ง์ ‘ ๊ตฌํ˜„ํ•ด๋ณด๋ฉด์„œ ๋ฆฌ์•กํŠธ ๊ธฐ์ดˆ ์ง€์‹์„ ํŠผํŠผํžˆ ์Œ“์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์ „์— ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES5๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES6๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ €๋Š” ๋…์ž ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ๋ฆฌ์•กํŠธ์™€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์— ์žฌ๋ฏธ์™€ ํฅ๋ฏธ๋ฅผ ๋Š๊ผˆ์œผ๋ฉด ํ•ฉ๋‹ˆ๋‹ค. ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ์ฑ…์„ ๋„์›€๋‹ซ๊ธฐ ์‚ผ์•„ ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๊ป‘์ถฉ ๋›ฐ์–ด๊ฐ€๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

{pagebreak}

์ง€์€์ด: ๋กœ๋นˆ ์œ„์–ดํฌ(Robin Wieruch)

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

๋กœ๋นˆ์€ ๋…์ผ์—์„œ ์ปดํ“จํ„ฐ ๊ณตํ•™ ์„์‚ฌ ๊ณผ์ •์„ ๋งˆ์นœ ํ›„, ์Šคํƒ€ํŠธ์—… ํšŒ์‚ฌ์ธ Small Improvements์—์„œ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋กœ ๊ทผ๋ฌดํ•˜๋ฉฐ SaaS ์ œํ’ˆ์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹œ ์ œํ’ˆ์€ ์ดˆ์ฐฝ๊ธฐ์—๋Š” ์œ„์ผ“(Wicket), ์ œ์ด์ฟผ๋ฆฌ(jQuery), ์ž๋ฐ”(Java)๋กœ ๋งŒ๋“ค์–ด์กŒ์œผ๋‚˜ 1์„ธ๋Œ€ SPA ํ”„๋ ˆ์ž„์›Œํฌ๋“ค์ด ๋‚˜ํƒ€๋‚˜๋ฉด์„œ ์•ต๊ทค๋Ÿฌ(Angular) ๋ฒ„์ „ 1๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜์—ฌ ์ดํ›„ 2๋…„ ๊ฐ„ ์•ต๊ทค๋Ÿฌ๋กœ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์•ต๊ทค๋Ÿฌ๋Š” ์ƒํƒœ ๊ด€๋ฆฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ์ตœ์ƒ์˜ ์†”๋ฃจ์…˜์ด ์•„๋‹ˆ๋ผ๋Š” ๊ฒฐ๋ก ์— ์ด๋ฅด๋Ÿฌ, ์ตœ์ข…์ ์œผ๋กœ ๋ฆฌ์•กํŠธ์™€ ๋ฆฌ๋•์Šค๋ฅผ ๋„์ž…ํ•ด ๋Œ€๊ทœ๋ชจ ์• ํ”Œ์ผ€์ด์…˜์„ ์„ฑ๊ณต์ ์œผ๋กœ ์šด์˜ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

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

๊ทธ์™ธ ์—ฌ๊ฐ€ ์‹œ๊ฐ„์€ ๋ชจ๋‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•™์Šต์— ํˆฌ์žํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์„ ์ƒ๋‹˜์ด ๋ฐฐ์›€์„ ๊ฒŒ์„๋ฆฌํ•˜๋ฉด ๋” ์ด์ƒ ํ•™์ƒ๋“ค์—๊ฒŒ ๊ฐ€๋ฅด์น  ๊ฒƒ์ด ์—†๋‹ค๋Š” ๊ทธ์˜ ์ƒ๊ฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋กœ๋นˆ์„ ํ›„์›ํ•˜๊ณ  ํ•จ๊ป˜ ์ผํ•˜๊ธธ ์›ํ•œ๋‹ค๋ฉด ๊ทธ์˜ ๊ฐœ์ธ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๋ฐฉ๋ฌธํ•˜๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.

{pagebreak}

์˜ฎ๊ธด์ด: ์ด์ˆ˜์ง„ (Sujin Lee)

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

์ˆ˜์ง„์€ ๋ชจ๋‘๊ฐ€ ํ‰๋“ฑํ•˜๊ฒŒ ๊ต์œก์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์‚ฌํšŒ๋ฅผ ์ง€์ง€ํ•˜๋ฉฐ ํ›„์›ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•™๋ถ€์—์„œ ์ž‘๊ณก๊ณผ ์Œ์•…๊ต์œก์„ ์ „๊ณตํ•œ ํ›„, IT ๋น„์˜๋ฆฌ ๊ต์œก ์žฌ๋‹จ์—์„œ ๋‹ค๋…„๊ฐ„ ์˜จ๋ผ์ธ ๊ต์œก ํ”Œ๋žซํผ์„ ๊ธฐํšํ•˜๊ณ  ์šด์˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์ˆ˜์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŠœํ† ๋ฆฌ์–ผ๊ณผ ๊ธฐ์ˆ  ๋ฌธ์„œ๋ฅผ ๋ฒˆ์—ญํ•˜๋ฉฐ ์˜์–ด์˜ ์žฅ๋ฒฝ ์—†์ด ๋ˆ„๊ตฌ๋‚˜ ์ตœ์‹  ๊ต์œก ์ฝ˜ํ…์ธ ๋ฅผ ์ ‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์—ฌ์„ฑ ๊ฐœ๋ฐœ์ž๋กœ์„œ IT๋ถ„์•ผ ๋‚ด ์„ฑ ๊ฒฉ์ฐจ(Gender Gap) ๋ฌธ์ œ์— ๋งŽ์€ ๊ด€์‹ฌ์„ ๊ธฐ์šธ์ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ตญ๋‚ด ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ ๋‚ด ๋‹ค์–‘์„ฑ์„ ๋†’์ด๊ณ ์ž ์—ฌ์„ฑ ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์กฐ์งํ•˜์˜€๊ณ  ์—ฌ์„ฑ๋“ค์—๊ฒŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•™์Šต ๊ธฐํšŒ๋ฅผ ์ œ๊ณตํ•˜๊ณ ์ž ํŒŒ์ด์ฌ๊ณผ ์žฅ๊ณ (Django) ์›น ํ”„๋ ˆ์ž„์›Œํฌ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ด€๋ จ ๋ฌด๋ฃŒ ์›Œํฌ์ˆ๊ณผ ์„ธ๋ฏธ๋‚˜๋ฅผ ์šด์˜ํ•ด์˜ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

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

{pagebreak}

๋„์›€์ฃผ์‹  ๋ถ„

์กฐ์ˆ˜ํ˜„(ํ•œ๋น›๋ฏธ๋””์–ด), ์ •์žฌํ•„, ๋ฐ•์„ฑํƒ, ๋ฐ•์ค€๋ชจ, ์ •ํ•ด๊ท  ๋‹˜๊ป˜์„œ ๋ฆฌ๋ทฐ ๊ณผ์ • ์ค‘ ๋„์–ด์“ฐ๊ธฐ, ์˜คํƒˆ์ž, ๋งž์ถค๋ฒ• ๋“ฑ์„ ์ˆ˜์ •ํ•ด์ฃผ์…จ์Šต๋‹ˆ๋‹ค.

์ถ”์ฒœ์‚ฌ

๋กœ๋“œ ํˆฌ ๋ฆฌ์•กํŠธ(Road to React), ๊ตฟ๋ฆฌ๋“œ, ์•„๋งˆ์กด์—์„œ ๋งŽ์€ ๋…์ž๋“ค์ด ์ถ”์ฒœ์‚ฌ๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์…จ์Šต๋‹ˆ๋‹ค.

ํ•ด์™ธ

๋ฌดํ•˜๋งˆ๋“œ ์นด์‰ฌํ”„(Muhammad Kashif) "์ด ์ฑ…์€ ๋ฆฌ์•กํŠธ ์ž…๋ฌธ์ž๋ถ€ํ„ฐ ์ „๋ฌธ๊ฐ€๊นŒ์ง€ ๋ชจ๋‘๊ฐ€ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ์ฑ…์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ณณ์—์„œ ์–ป์„ ์ˆ˜ ์—†๋Š” ํ†ต์ฐฐ๊ณผ ๊ธฐ์ˆ ์„ ์ด ์ฑ…์—์„œ ๋งŒ๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฐธ๊ณ  ์ž๋ฃŒ์™€ ์˜ˆ์ œ ๋˜ํ•œ ์™„๋ฒฝํ•ฉ๋‹ˆ๋‹ค. 17๋…„์ฐจ ๊ฐœ๋ฐœ์ž์ธ ๋‚˜์กฐ์ฐจ ๋ฆฌ์•กํŠธ๋ฅผ ์ฒ˜์Œ ์‹œ์ž‘ํ•  ๋•Œ ์–ด๋ ค์›€์„ ๊ฒช์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฑ…์€ ๋งˆ๋ฒ•์ž…๋‹ˆ๋‹ค."

์•ˆ๋“œ๋ ˆ์•„ ๋ฐฐ๊ฐ€์Šค(Andre Vargas) "๋†€๋ผ์›€ ๊ทธ ์ž์ฒด์ž…๋‹ˆ๋‹ค! ์ด ์ฑ…์—์„œ ๋ฆฌ์•กํŠธ์™€ ES6 ๋Œ€๋ถ€๋ถ„์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค!"

๋‹ˆ์ฝœ๋ผ์Šค ํ—Œํ„ฐ-์›Œ์ปค(Nicholas Hunt-Walker), ์‹œ์• ํ‹€ ์ฝ”๋”ฉ ์Šค์ฟจ ๊ฐ•์‚ฌ "์ง€๊ธˆ๊นŒ์ง€ ์ฝ์—ˆ๋˜ ์ฝ”๋”ฉ ์ฑ… ์ค‘ ๊ฐ€์žฅ ํ›Œ๋ฅญํ•œ ์ฑ…"

์–ด์Šคํ‹ด ๊ทธ๋ฆฐ(Austin Green) "๋ฆฌ์•กํŠธ, ES6, ๊ณ ๊ธ‰ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐœ๋…๊นŒ์ง€ ๋ชจ๋“  ๊ฒƒ์„ ๊ฐ–์ถ˜ ์ฑ…์ž…๋‹ˆ๋‹ค."

๋‹ˆ์ฝœ๋ผ์Šค ํผ๊ทธ์ˆœ(Nicole Ferguson) "์ฃผ๋ง ๋‚ด๋‚ด ์ด ์ฑ…์„ ๋ดค์Šต๋‹ˆ๋‹ค. ๋„ˆ๋ฌด ์žฌ๋ฐŒ์–ด์„œ ์–‘์‹ฌ์˜ ๊ฐ€์ฑ…์„ ๋Š๋‚„ ์ •๋„์ž…๋‹ˆ๋‹ค."

์นด๋ž€(Karan) "๋ฐฉ๊ธˆ ์ด ์ฑ…์„ ๋งˆ์ณค์Šต๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ์™€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž…๋ฌธ์ž๋“ค์„ ์œ„ํ•œ ์ตœ๊ณ ์˜ ์ฑ…์ž…๋‹ˆ๋‹ค. ๋ฉ‹์ง‘๋‹ˆ๋‹ค! )"

์—๋ฆญ ํ”„๋ฆฌ์˜ค์šฐ(Eric Priou) "๋กœ๋นˆ ์œ„์–ดํฌ ์ฑ…์€ ํ•„๋…์„œ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ์™€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ •์ˆ˜๋ฅผ ๋ง› ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."

ํ† ๋งˆ์Šค ๋ผํฌ๋‹ˆ(Thomas Lockney) "๋ฐฉ๋Œ€ํ•œ ๋‚ด์šฉ์„ ํ•œ๊บผ๋ฒˆ์— ๋‹ค๋ฃจ์ง€ ์•Š์•„ ์ข‹์•˜์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ฆฌ์•กํŠธ๊ฐ€ ์–ด๋–ค ๊ฒƒ์ธ์ง€ ๋ง›๋ณด๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋ฅด๋Š” ES6 ๋ฌธ๋ฒ•์„ ๋ฐฐ์šฐ๋ ค๊ณ  ์ด๊ฒƒ ์ €๊ฒƒ ์ฐพ์•„๋ณผ ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋ถ€์ง€๋Ÿฐํ•œ ๋…์ž๋ผ๋ฉด, ์ด ์ฑ…์˜ ๋‚ด์šฉ ๊ทธ ์ด์ƒ์˜ ๊ฒƒ์„ ์–ป์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค."

์ต๋ช…์˜ ์‹ ์ž… ๊ฐœ๋ฐœ์ž "์‹ ์ž… ๊ฐœ๋ฐœ์ž๋„ ์‰ฝ๊ฒŒ ์ฝ์„ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ ๊ฐœ๋ฐœ์— ์ž์‹ ๊ฐ์„ ๊ฐ–๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ ๊ณต์‹ ํŠœํ† ๋ฆฌ์–ผ๋ณด๋‹ค ํ›จ์”ฌ ์ข‹์•˜์Šต๋‹ˆ๋‹ค."

์ต๋ช…์˜ ํ•™์ƒ "๋ฆฌ์•กํŠธ ์ž…๋ฌธ์„œ ์ฑ… ์ค‘ ์ตœ๊ณ ์ž…๋‹ˆ๋‹ค. '์ฝ”๋“œ์™€ ๋ฐฐ์›€' ์ด ๋‘ ๊ฐ€์ง€๋ฅผ ์ •ํ™•ํžˆ ๋งˆ์Šคํ„ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."

๊ตญ๋‚ด

๊ฐ•์ง€์› "๋ฆฌ์•กํŠธ๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ์‚ฌ๋žŒ๋„ ์•Œ์•„๋“ฃ๊ธฐ ์‰ฝ๊ฒŒ ์“ฐ์—ฌ์ง„ ์ฑ…. ํฅ๋ฏธ๋กœ์šด ์‹ค์Šต ์œ„์ฃผ๋กœ ์ง„ํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ง€๋ฃจํ•˜์ง€ ์•Š๊ฒŒ ๋‚ด์šฉ์„ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ค์œผ๋กœ, ES6๊นŒ์ง€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ•จ๊ป˜ ์ตํž ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."

๊ธฐ๋ฐœ์ž "๋ฆฌ์•กํŠธ ์ค‘์š” ๊ฐœ๋…์„ ์ตํžˆ๋Š”๋ฐ ๋„์›€์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."

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

์ตœ์„ธ์˜ "์‰ฌ์šด ํ•œ๊ธ€์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์› ์Šต๋‹ˆ๋‹ค."

์ง„์˜ํ™” "์Šค์Šค๋กœ ๋”ฐ๋ผ ํ•˜๋ฉฐ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ๋Š” ์ฑ…"

๋ฐ•ํฌ์ • "์ง์ ‘ ์‹ค์Šตํ•˜๋ฉฐ ๋ฆฌ์•กํŠธ ๊ธฐ์ดˆ ์ง€์‹๊ณผ ํ•จ๊ป˜ ๊ฐœ๋ฐœ ์‹ค๋ ฅ์„ ๋†’์ผ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ES6 ์ž…๋ฌธ์„œ๋กœ๋„ ์†์ƒ‰์—†์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์„ค๋ช…๊ณผ ์˜ˆ์ œ๊ฐ€ ๊ณ๋“ค์—ฌ์ ธ ์žˆ์–ด ๊ฐœ๋… ์ดํ•ด์™€ ํ™œ์šฉ ๋ชจ๋“  ๋ฉด์—์„œ ์ข‹์•˜์Šต๋‹ˆ๋‹ค."

{pagebreak}

์–ด๋ฆฐ์ด๋ฅผ ์œ„ํ•œ ๊ต์œก

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

{pagebreak}

์ž์ฃผ ์ฐพ๋Š” ์งˆ๋ฌธ

์—…๋ฐ์ดํŠธ ์†Œ์‹์€ ์–ด๋–ป๊ฒŒ ๋ฐ›๋‚˜์š”? ์ด ๊ณณ์—์„œ ๋‰ด์Šค ๋ ˆํ„ฐ ๊ตฌ๋… ์‹ ์ฒญ์„ ํ•˜๊ฑฐ๋‚˜ ํŠธ์œ„ํ„ฐ๋กœ ์ตœ๊ทผ ์†Œ์‹์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฑ…์„ ์ตœ์ดˆ ๋‹ค์šด๋กœ๋“œํ•œ ์ดํ›„์—๋„ ์ƒˆ ๊ฐœ์ •ํŒ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ๋ฆฌ์•กํŠธ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‚˜์š”? ๋ฆฌ์•กํŠธ ์ตœ์‹  ๋ฒ„์ „์ด ๊ณตํ‘œ๋˜๋ฉด ์ฑ… ๋‚ด์šฉ๋„ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฆฌ์•กํŠธ ์—…๋ฐ์ดํŠธ ์ฃผ๊ธฐ๊ฐ€ ๋งค์šฐ ๋น ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€๋ถ€๋ถ„์˜ ์ฑ…๋“ค์€ ์ตœ์‹  ๋‚ด์šฉ์„ ๋‹ด์ง€ ๋ชปํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด ์ด ์ฑ…์€ ์ž๊ฐ€์ถœํŒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์–ธ์ œ๋“ ์ง€ ์ˆ˜์ •ํ•˜์—ฌ ์ถœํŒ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌ๋•์Šค(Redux)๋ฅผ ๋ฐฐ์šฐ๋‚˜์š”? ์ด ์ฑ…์—์„œ๋Š” ๋ฆฌ๋•์Šค๋ฅผ ๋‹ค๋ฃจ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ์ €์„œ์—์„œ ๋‹ค๋ฃฐ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. "๋ฆฌ์•กํŠธ ๋„์›€๋‹ซ๊ธฐ"๋Š” ์‹ฌํ™” ์ฃผ์ œ๋กœ ๋„˜์–ด๊ฐ€๊ธฐ ์ „ ํŠผํŠผํ•œ ๊ธฐ์ดˆ ์ง€์‹์„ ์Œ“๋Š” ๊ฒƒ์ด ์ฃผ ๋ชฉ์ ์ž…๋‹ˆ๋‹ค. ์‹ค์Šต ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ๋ฆฌ๋•์Šค๊ฐ€ ์—†์–ด๋„ ์ถฉ๋ถ„ํžˆ ๋ฆฌ์•กํŠธ๋งŒ์œผ๋กœ ํ›Œ๋ฅญํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ๊ณ ์ž ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฑ…์„ ๋งˆ์ณค๋‹ค๋ฉด ๋ฆฌ๋•์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„, ์ˆœ์ˆ˜ํ•œ ๋ฆฌ์•กํŠธ ๋งŒ์œผ๋กœ ๊ฒฌ๊ณ ํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ €์ž์˜ ๋ฆฌ์•กํŠธ ๋‘ ๋ฒˆ์งธ ์ฑ…์ธ "๋ฆฌ์•กํŠธ ์ƒํƒœ ๋‹ค๋ฃจ๊ธฐ(Taming the State in React)"์—์„œ ๋ฆฌ๋•์Šค ๊ด€๋ จ ๋‚ด์šฉ์„ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES6๋ฅผ ์‚ฌ์šฉํ•˜๋‚˜์š”? ๋„ค, ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ฑฑ์ •ํ•˜์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES5์— ์ต์ˆ™ํ•˜๋‹ค๋ฉด ์ž˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ES5์—์„œ ES6๋กœ ๋ณ€ํ™˜ ๊ณผ์ •์„ ๊ธฐ์ˆ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ๋Š” ๋ฌผ๋ก  ์œ ์šฉํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES6 ๋ฉ”์„œ๋“œ๋ฅผ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์•ž์œผ๋กœ ๋‚ด์šฉ์ด ์ถ”๊ฐ€๋˜๋‚˜์š”? ์ฃผ์š” ์—…๋ฐ์ดํŠธ ๊ธฐ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ ๋ฐ˜์˜ ์ „ ๊ฐœ์„  ๋‚ด์šฉ์„ ๋ฏธ๋ฆฌ ๊ณต์ง€ํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ์™€ ์˜๋…ผํ•œ ํ›„, ์˜ค๋ž˜๋œ ๋‚ด์šฉ์„ ์ˆ˜์ •ํ•˜๊ณ  ์ถ”๊ฐ€ ๋‚ด์šฉ์„ ์ง‘ํ•„ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ตœ์‹ ์˜ ์˜ˆ์ œ์™€ ๊ฐœ๋…, ํŒจํ„ด์„ ๋‹ด์„ ์ˆ˜ ์žˆ๋„๋ก ๋…ธ๋ ฅํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฌธ์„œ ํ™•์žฅ์ž๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”? .pdf, .epub, .mobi ํ™•์žฅ์ž๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, ๊นƒํ—ˆ๋ธŒ ๋ฆฌํผ์ง€ํ† ๋ฆฌ์—์„œ์—์„œ ๋งˆํฌ๋‹ค์šด(.md) ๋ฌธ์„œ๋กœ๋„ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋„๋ก ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์ด ๋†’์€ ๋ฌธ์„œ๋ฅผ ์„ ํƒํ•ด ์ฝ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‚˜์š”? "The Road to learn React" ์Šฌ๋ž™์„ ๊ฐœ์„คํ–ˆ์Šต๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ํ†ตํ•ด ๋„์›€์„ ๋ฐ›๊ฑฐ๋‚˜ ๋„์›€์ด ํ•„์š”ํ•œ ์ด๋“ค์—๊ฒŒ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ๊ตญ์–ด ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ์ฑ„๋„์ด ์—ด๋ ค์žˆ์Šต๋‹ˆ๋‹ค. #road-to-react-korean ์ฑ„๋„์—์„œ ํ•จ๊ป˜ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์‹ค๋ ฅ์„ ๋†’์ด๊ณ  ์‹ถ๋‹ค๋ฉด ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์„ ๋„์™€์ฃผ์„ธ์š”.

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

์ด ์ฑ…์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋‚˜์š”? ๋…์ž์˜ ์˜๊ฒฌ๊ณผ ๊นƒํ—ˆ๋ธŒ ๊ธฐ์—ฌ๋Š” ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์œ ์ฐฝํ•œ ์˜์–ด๋กœ ์ž‘์„ฑํ•˜์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์˜ ์• ์ •๊ณผ ๋„์›€์— ๊นŠ์ด ๊ฐ์‚ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

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

ํ”„๋กœ์ ํŠธ ํ›„์›์„ ํ•  ์ˆ˜ ์žˆ๋‚˜์š”? ๋ˆ„๊ตฌ๋‚˜ ์ด ํ”„๋กœ์ ํŠธ์— ํ›„์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜คํ”ˆ์†Œ์Šค ํŠœํ† ๋ฆฌ์–ผ ์ œ์ž‘์„ ์œ„ํ•ด ์ƒ๋‹นํ•œ ๋งŽ์€ ์‹œ๊ฐ„๋™์•ˆ ํˆฌ์žํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ์ธ ํ™ˆํŽ˜์ด์ง€์—์„œ ์ €์ž ํ”„๋กœํ•„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํŠธ๋ ˆ์˜จ(Patreon)์—์„œ ์ €์˜ ๊ฐœ์ธ ํ›„์›์ž๊ฐ€ ๋˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋…์ž ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ์ด ์ฑ…์„ ๋„๋ฆฌ ์•Œ๋ ค์ฃผ์‹œ๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ์ €๋Š” ์ •๋ง ๊ธฐ์˜๊ณ  ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

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

{pagebreak}

์ด ์ฑ…์„ ์ฝ๋Š” ๋ฐฉ๋ฒ•

์ด ์ฑ…์˜ ์ฒ ํ•™์€ '๋งŒ๋“ค๋ฉด์„œ ๋ฐฐ์šฐ์ž'์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์€ ์‹ค์ œ ๋ฆฌ์•กํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๋ฉด์„œ ๋ฆฌ์•กํŠธ๋ฅผ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฑ…์€ ๋ฆฌ์•กํŠธ๋ฅผ ์„ค๋ช…ํ•œ ์ฐธ๊ณ  ์ž๋ฃŒ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฆฌ์•กํŠธ๋ฅผ ๋ฐฐ์šฐ๋Š” ์‹ค์งˆ์ ์ธ ์•ˆ๋‚ด์„œ์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์€ ์™ธ๋ถ€ API์™€ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ํ•ด์ปค ๋‰ด์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ์ž‘ํ•ด ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ์—์„œ ๊ฐ€์žฅ ํฅ๋ฏธ๋กœ์šด ๋ถ€๋ถ„์€ ์บ์‹ฑ ๋ฐ ์ƒํ˜ธ ์ž‘์šฉ(์ •๋ ฌ ๋ฐ ๊ฒ€์ƒ‰)์˜ ์ƒํƒœ ๊ด€๋ฆฌ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ์ด์™ธ์— ๋ฆฌ์•กํŠธ ๋ชจ๋ฒ” ์˜ˆ์ œ์™€ ๋””์ž์ธ ํŒจํ„ด์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด ์ฑ…์€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES5์—์„œ ES6์œผ๋กœ ์ „ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‹ค๋ค˜์Šต๋‹ˆ๋‹ค. ๋ฆฌ์•กํŠธ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES6 ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๊ณ  ์žˆ์–ด ES6๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ๊ณ ์ž ํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์ด ์ฑ…์„ ๋งˆ์น˜๋ฉด ์™„์„ฑ๋œ ๋ฆฌ์•กํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ๋งŒ๋“  ๊ฒฐ๊ณผ๋ฌผ์„ ๊ผญ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด ์ฑ…์„ ๋‹ค ์ฝ๊ณ  ๋‚œ ํ›„ ๋งŒ๋“  ๊ฒฐ๊ณผ๋ฌผ์„ ๊ผญ ์ €์—๊ฒŒ ์•Œ๋ ค์ฃผ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ์žฅ์—์„œ ์—ฌ๋Ÿฌ๋ถ„์˜ ๋ฆฌ์•กํŠธ ํ•™์Šต์„ ๊ณ„์†ํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ๊ธฐ์ˆ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €์ž ์›น์‚ฌ์ดํŠธ์—์„œ๋„ ๋ฆฌ์•กํŠธ ๊ด€๋ จ ์ •๋ณด๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

ํ•™์Šต ๋‚ด์šฉ

  • ๋ฆฌ์•กํŠธ ์•ฑ ๊ฐœ๋ฐœํ•˜๊ธฐ - ํ•ด์ปค ๋‰ด์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
  • ํ™˜๊ฒฝ ์„ค์ •
  • create-react-app ์œผ๋กœ ๋ฆฌ์•กํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹œ์ž‘
  • ํšจ์œจ์ ์ธ ์ฝ”๋“œ ์ž‘์„ฑ
  • setState()๋กœ ๋‚ด๋ถ€ ์ƒํƒœ ๊ด€๋ฆฌ
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ES5์—์„œ ES6์œผ๋กœ ๋ฌธ๋ฒ• ์ „ํ™˜
  • setState ๋ฐ ์ƒ๋ช…์ฃผ๊ธฐ ๋ฉ”์†Œ๋“œ API ์‚ฌ์šฉ
  • ํ•ด์ปค ๋‰ด์Šค API์™€ ์ธํ„ฐ๋ ‰์…˜
  • ์‚ฌ์šฉ์ž ์ธํ„ฐ๋ ‰์…˜
    • ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ์ •๋ ฌ
    • ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ํ•„ํ„ฐ๋ง
    • ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๊ฒ€์ƒ‰
  • ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ์บ์‹ฑ ๊ตฌํ˜„
  • ๊ณ ์ฐจ ํ•จ์ˆ˜์™€ ๊ณ ์ฐจ ์ปดํฌ๋„ŒํŠธ
  • Jest ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ
  • Enzyme ๋‹จ์œ„ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ
  • ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ
  • ์‹ค์Šต๊ณผ ์ฐธ๊ณ ์ž๋ฃŒ ์ฝ๊ธฐ
  • ํ•™์Šต ๋‚ด์šฉ ๋˜์ƒˆ๊ธฐ๊ธฐ ๋ฐ ๊ฐ•ํ™”ํ•˜๊ธฐ
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ

{pagebreak}

์ˆ˜์ • ๋‚ด์—ญ

2017๋…„ 1์›” 10์ผ

2017๋…„ 3์›” 8์ผ

  • v3 ํ’€ ๋ฆฌํ€˜์ŠคํŠธ
  • ๋ณธ๋ฌธ 20% ๋‚ด์šฉ ์ถ”๊ฐ€
  • ๋ณธ๋ฌธ 25% ๋‚ด์šฉ ๊ฐœ์„ 
  • ์‹ ๊ทœ 9์žฅ ์ถ”๊ฐ€
  • ์ด 170 ํŽ˜์ด์ง€

2017๋…„ 4์›” 15์ผ

  • React 15.5 ์—…๊ทธ๋ ˆ์ด๋“œ

2017๋…„ 7์›”

  • node 8.1.3 ์—…๊ทธ๋ ˆ์ด๋“œ
  • npm 5.0.4 ์—…๊ทธ๋ ˆ์ด๋“œ
  • create-react-app 1.3.3 ์—…๊ทธ๋ ˆ์ด๋“œ

2017๋…„ 10์›” 17์ผ

  • node 8.3.0 ์—…๊ทธ๋ ˆ์ด๋“œ
  • npm 5.5.1 ์—…๊ทธ๋ ˆ์ด๋“œ
  • create-react-app 1.4.1 ์—…๊ทธ๋ ˆ์ด๋“œ
  • React 16 ์—…๊ทธ๋ ˆ์ด๋“œ
  • v4 ํ’€ ๋ฆฌํ€˜์ŠคํŠธ
  • ๋ณธ๋ฌธ 15% ๋‚ด์šฉ ์ถ”๊ฐ€
  • ๋ณธ๋ฌธ 15% ๋‚ด์šฉ ๊ฐœ์„ 
  • ์‹ ๊ทœ 3์žฅ ์ถ”๊ฐ€ (๋ฐ”์ธ๋”ฉ, ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ, ์—๋Ÿฌ ์ฒ˜๋ฆฌ)
  • ์ด 190+ ์ด์ƒ
  • +9 ํ”„๋กœ์ ํŠธ ์˜ˆ์ œ ์†Œ์Šค ์ฝ”๋“œ

2018๋…„ 2์›” 17์ผ

  • node 8.9.4 ์—…๊ทธ๋ ˆ์ด๋“œ
  • npm 5.6.0 ์—…๊ทธ๋ ˆ์ด๋“œ
  • create-react-app 1.5.1 ์—…๊ทธ๋ ˆ์ด๋“œ
  • v5 ํ’€ ๋ฆฌํ€˜์ŠคํŠธ
  • ํ•™์Šต ๊ณต๋ถ€ ๋ฐฉ๋ฒ• ์ถ”๊ฐ€
  • ์ฝ๊ธฐ ์ž๋ฃŒ ์ถ”๊ฐ€
  • ์‹ ๊ทœ 1์žฅ ์ถ”๊ฐ€ (Fetch ๋Œ€์‹  Axios ์‚ฌ์šฉ)

{pagebreak}