React

  • ๋ฆฌ์•กํŠธ๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค(UI) ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ JavaScript ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ž…๋‹ˆ๋‹ค.

  • ํ˜„์žฌ ๊ฐ€์žฅ ์ฃผ๋ชฉ๋ฐ›๋Š” ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๋ฆฌ์•กํŠธ, ์•ต๊ทค๋Ÿฌ(Angular), ๋ทฐ(Vue) ์ž…๋‹ˆ๋‹ค. ์ด ์ค‘ ๊ฐ€์žฅ ์‚ฌ์šฉ์ž๊ฐ€ ๋งŽ์€ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๋ฆฌ์•กํŠธ์ž…๋‹ˆ๋‹ค.

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

    • ๋ฆฌ์•กํŠธ์˜ ํŠน์ง•

      • ์žฌ์‚ฌ์šฉ ยท ์œ ์ง€๋ณด์ˆ˜์— ์šฉ์ดํ•œ ์ปดํฌ๋„ŒํŠธ ๊ตฌ์กฐ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์–ด ํšจ์œจ์  ๋ฆฌ์•กํŠธ๋Š” ํ™”๋ฉด ์ถœ๋ ฅ์— ํŠนํ™”๋œ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ปดํฌ๋„ŒํŠธ(component)๋ผ๋Š” ๋…๋ฆฝ์ ์ธ ์ฝ”๋“œ ๋ธ”๋ก์„ ์กฐํ•ฉํ•˜์—ฌ ํšจ์œจ์ ์œผ๋กœ ํ™”๋ฉด์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ๋Š” ๋ฐ์ดํ„ฐ(props, state)๋ฅผ ์ž…๋ ฅ ๋ฐ›์•„ DOM Node๋ฅผ ์ถœ๋ ฅํ•˜๋Š” "ํ•จ์ˆ˜"์˜ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

      • Virtual DOM

        Virtual DOM์„ ํ†ตํ•œ rendering์œผ๋กœ ํ™”๋ฉด ์ถœ๋ ฅ ์†๋„๋ฅผ ๋†’์ด๊ณ , ์ฝ”๋“œ์˜ ๋ณต์žก์„ฑ์„ ์ค„์˜€์Šต๋‹ˆ๋‹ค. (๋ณ€ํ™”๋ฅผ Virtual DOM์— ๋จผ์ € ์ ์šฉํ•˜๊ณ , Real DOM๊ณผ ๋น„๊ต๋ฅผ ํ†ตํ•ด ๋ณ€ํ™”๋œ ๋ถ€๋ถ„๋งŒ renderํ•˜์—ฌ ์—ฐ์‚ฐ์„ ์ค„์—ฌ ์ค๋‹ˆ๋‹ค.)

      • ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ

        ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๋กœ๋ถ€ํ„ฐ ์ž์‹ ์ปดํฌ๋„ŒํŠธ๋กœ props์ „๋‹ฌ. ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ์˜ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๋ ค๋ฉด ๋ถ€๋ชจ๋กœ๋ถ€ํ„ฐ ํ•จ์ˆ˜๋ฅผ ์ „๋‹ฌ ๋ฐ›์•„์„œ ์‚ฌ์šฉ

Last updated