Section 1์์ ๊ฐ์ฅ ์ด๋ ต๋ค๊ณ ๋๊ปด์ก๋ React ๋ถ๋ถ์ ๋ค์ ๋ฐฐ์ ์ต๋๋ค. ๋ถ๋ชจ ์ปดํฌ๋ํธ์ ์์ ์ปดํฌ๋ํธ๊ฐ ์๋ค ๊ฐ๋ค ๋ง์ด ํด์ ์ข ์ ์ ์์๊ธด ํ์ง๋ง ์ข๋ง ๋ฐฐ์ ๋ ๋ด์ฉ ๋ ์ ๋ฆฌํ๋ฉด ์ดํด ์ํ ์ ์์ ๊ฒ ๊ฐ์์!๐ ๋ด์ผ๊น์ง React๋ฅผ ์ด์ฉํ ํญ๊ณต๊ถ ์์ฝ ์ฌ์ดํธ๋ฅผ ๊ตฌํํ๋๋ฐ์. ์์ง REST API๋ก ์ด๋ป๊ฒ ๊ตฌํํ๋์ง์ ๋ํด ๋ชปํ์์ง๋ง ๋ด์ผ๊น์ง ํ ์ ์๋๋ก ๋ง์ ์ด์ฌํ ํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋น Lifting State Up React์์ ์ปดํฌ๋ํธ์ ๋ฐ์ดํฐ ํ๋ฆ์ ํํฅ์์ธ๋ฐ์. ๋ฐ๋ผ์ ๋ถ๋ชจ ์ปดํฌ๋ํธ๊ฐ ์์ ์ปดํฌ๋ํธ์๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํฉ๋๋ค. ํ์ง๋ง ๋ถ๋ชจ ์ปดํฌ๋ํธ์์์ ์ํ๊ฐ ํ์ ์ปดํฌ๋ํธ์ ์ํด ๋ณํํ๋ ๊ฒฝ์ฐ๋ ์๋๋ฐ์. ์ด ๊ฒฝ์ฐ React์ ๊ฐ์ฅ ํฐ ํน์ง์ธ ํํฅ์์ ์๋ฐฐ๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ด๋ฅผ ํด๊ฒฐ..
Node.js ๋ชจ๋์์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ ๊ฒ์ ์ด์ด ์ค๋์ URL์์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ๋น๋๊ธฐ์ ์ผ๋ก ํจ์๋ฅผ ์คํํ๋ ๋ฐฉ๋ฒ์ ๊ณต๋ถํ์ต๋๋ค. ์ด์ ๋ณด๋ค๋ ๋ ์ต์ํด์ ธ์ ์ข ๋ ์์ํ๊ฒ ๋ฌธ์ ๋ฅผ ํ ์ ์์์ต๋๋ค. ์ด์ ์ '๋'๋ณด๋ค ๋ ๋์ ์ค๋์ '๋'๊ฐ ๋๊ธฐ ์ฑ.๊ณต.๐ fetch API ๋น๋๊ธฐ ์์ฒญ์ ๋ํ์ ์ธ ์ฌ๋ก๋ก URL๋ก ์์ฒญํ๋ ๊ฑธ ๊ฐ๋ฅํ๊ฒ ํด์ฃผ๋ API๋ก JSON ํํ๋ก ๋ณํ ํ Promise๋ก ์ ๋ฌํฉ๋๋ค. Promise ํ์์ผ๋ก ๋์ด์๊ธฐ ๋๋ฌธ์ .then ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ํฌํธ ์ฌ์ดํธ์์ ์ต์ ๋ด์ค, ๋ ์จ, ์ฃผ๊ฐ ๋ฑ ๋์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์์ผ ํ๋ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค ๋ ์ฃผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. Sprint Review Async/ Await ๋ฅผ ์ฌ๋ฌ ๋ฒ ์คํํ ๋ ์ผ์ผ์ด ๋ณ์ ์ ์ธ ํ ๋นํ์ง๋ง๊ณ ๋ฐฐ์ด ์ด์ฉํด์..
์ค๋์ ๋ณธ๊ฒฉ์ ์ผ๋ก ๋น๋๊ธฐ์ ๋ํด์ ๊ณต๋ถํ์ต๋๋ค. ์ด ๋ถ๋ถ์ ์์ ํ ์ฒ์ ๋ฐฐ์ด ๋ถ๋ถ์ด๋ผ ์์ง ๋ง์ด ๋ฏ์ค์ง๋ง ์์ฃผ ๋ณด๋ฉด์ ์ต์ํด์ง๋๋ก ๋ ธ๋ ฅํ๊ฒ ์ต๋๋ค! ๋น๋๊ธฐ ์ ์ ๋ฐ ์ฌ๋ก ๋๊ธฐ์ ๋ฌ๋ฆฌ ์์ฒญ์ ๋ํ ๊ฒฐ๊ณผ๊ฐ ๋ค๋ฅธ ์์ฒญ๊ณผ ๋์์ ์ผ์ด๋์ง ์๋ ๊ฒ์ ๋งํฉ๋๋ค. ๋ฐ๋ผ์ ์์ฒญ ์ดํ ๋ค๋ฅธ ๋ถ๋ถ๋ค์ด ๊ณ์ํด์ ์์ ํ ์ ์๊ฒ ํด์ค๋๋ค. ์ฌ๋ก: DOM Elemenet์ ์ด๋ฒคํธ ํธ๋ค๋ฌ, ํ์ด๋จธ, ์๋ฒ์ ์์ ์์ฒญ ๋ฐ ์๋ต Callback Async(๋น๋๊ธฐ)์์ ์คํ๋๋ ์์๋ฅผ ํต์ ํ๊ณ ์ถ์ ๋ Callback ํจ์๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. Error Handling์์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ์ฃผ๋ก (err, data) ์์๋ก ๋ฐ๊ฒ๋ฉ๋๋ค. ํ์ง๋ง Callback ํจ์๋ฅผ ๋ง์ด ์ฌ์ฉํ๊ฒ ๋๋ฉด ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋ Callback Hell์ด ..
์ค๋์ ๊ณ ์ฐจํจ์ ๊ธฐ๋ฅ์ ์ง์ ๊ตฌํํด๋ณด๋ ์คํ๋ฆฐํธ๋ฅผ ์งํํ์ต๋๋ค. Nightmare ๋ฌธ์ ๋ฅผ ์์ง ๋ชปํ์ด์ ๋ธ๋ก๊น ์ดํ์ ๋ง์ ๋ ํ์ด๋ณด๋ ค๊ตฌ์! ๋ณธ๊ฒฉ์ ์ธ ๋น๋๊ธฐ์ ๊ด๋ จํ ๋ด์ฉ์ ๋ด์ผ ๋์์ ๋ด์ผ ๋ง์ ์ ๋ฆฌํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค! ๊ฐ๋จํ๊ฒ ๊ณ ์ฐจํจ์๋ฅผ ๋ฆฌ๋ทฐํ๊ฒ ์ต๋๋ค. 1. ๊ณ ์ฐจํจ์๋ ์ฝ๋ฐฑํจ์(Callback Function)๋ฅผ ์ ๋ฌ๋ฐ์ ์ ์์ต๋๋ค. ์ฝ๋ฐฑํจ์๋ ๊ณ ์ฐจํจ์์ ์ธ์๋ก ์ ๋ฌ๋๋ ํจ์๋ผ๊ณ ํฉ๋๋ค. 2. ๊ณ ์ฐจํจ์๋ ๋ค๋ฅธ ํจ์๋ฅผ ๋ฆฌํดํ ์ ์์ต๋๋ค. ์ฝ๋ฐฑ ํจ์๋ฅผ ์ ๋ฌ๋ฐ์ callerํจ์๋, ํจ์ ๋ด๋ถ์์ ์ด ์ฝ๋ฐฑ ํจ์๋ฅผ ํธ์ถ(invoke) ํ ์ ์์ต๋๋ค. caller๋ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ฝ๋ฐฑ ํจ์์ ์คํ ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ ์ ์์ต๋๋ค. ์์ ํธ์ถํ์ง ์์ ์๋ ์๊ณ , ์ฌ๋ฌ ๋ฒ ์คํํ ์๋ ์์ต๋๋ค. ์์ผ๋ก๋ ํน์ ์์ ..
์ค๋์ ์ด์ ๋ฐฐ์ด ์ฌ๊ทํจ์๋ฅผ Sprint์ ํ์ฉํด๋ณด์์ต๋๋ค. ํ์คํ ์ฝํ๋ฆฟ ๋ฌธ์ ํธ๋ ๊ฒ๋ณด๋ค ์ฌ๊ทํจ์์ ํ์ฉ์ฑ์ ์ ์์๊ฐ ์ ์์์ต๋๋ค. ์ด์ ์ฝํ๋ฆฟ ํ๋ฉด์ ์ด๋ป๊ฒ ์ฐ๋๊ฑด์ง ์ ์๊ฒ๋์์ง๋ง "์" ์ด๋ฏธ ์๋ ๋ฉ์๋๋ฅผ ๋ด๊ฐ ์ง์ ์ฌ๊ทํจ์๋ฅผ ์จ์ ๋ค์ ์ฝ๋๋ฅผ ์ง์ผํ๋๊ฐ์ ๋ํด ์๋ฌธ์ ๊ณ์ ๊ฐ์ก์์ด์. ํ์ง๋ง ์ค๋ Tree UI๋ฅผ ํ๋ฉด์ ์ ์ด๋ฐ ๊ณณ์ ํ์ฉํ ์ ์๊ฒ ๊ตฌ๋! ๋ผ๋ ์๊ฐ์ ํ์ต๋๋น :) JSON (JavaScript Object Notation) JSON์ JavaScript Object Notation์ ์ค์๋ง๋ก, ์๋ก ๋ค๋ฅธ ํ๋ก๊ทธ๋จ ์ฌ์์ ๋ฐ์ดํฐ ๊ตํ์ ์ํด ๋ง๋ค์ด์ง ๊ฐ์ฒด ํํ์ ํฌ๋งท์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ JSON ํฌ๋งท์ JS๋ฅผ ํฌํจํ ๋ง์ ์ธ์ด์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ฒ์ฉ์ฑ์ด ๋์ต๋๋ค. JSON์ผ๋ก ..
๊ฐ์ฒด ์งํฅ ์ธ์ด(Object Oriented Programming)๋? ๊ฐ์ฒด ์งํฅ ์ธ์ด์ ๋๋น ๋๋ ๊ฒ์ด ์ ์ฐจ์ ์ธ์ด์ ๋๋ค. ์ ์ฐจ์ ์ธ์ด๋ ์์ฐจ์ ์ผ๋ก ๋ช ๋ น์ ์กฐํฉํ ์ธ์ด๋ก ์ด๊ธฐ์ ์ด๋ฐ ํ์์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๊ฐ ์ฌ์ฉ๋์ต๋๋ค. ์ด์ ๋ฌ๋ฆฌ ๊ฐ์ฒด์งํฅ ์ธ์ด๋ ์์ฐจ์ ์ผ๋ก ๋ช ๋ น์ ์กฐํฉํ์ง ์๊ณ ์ฌ๋ฌ ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํด์ ๋ช ๋ น์ ๋ง๋ญ๋๋ค. ํด๋์ค๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ฒญ์ฌ์ง์ ๋๋ค. ์ธ์คํด์ค๋ ํด๋์ค๋ฅผ ํ์ฉํ ์ฌ๋ก๋ผ๊ณ ์๊ฐํ๋ฉด ๋ฉ๋๋ค. ํด๋์ค์ ์ธ์คํด์ค์ ๋ํด ์์ธํ ์์๋ณด๊ธฐ ์ ์ ๋จผ์ ๊ฐ์ฒด์ ๋ํด ๋ณต์ตํด๋ณด๊ฒ ์ต๋๋ค. ๊ฐ์ฒด์ ๋ฉ์๋๋ฅผ ํธ์ถํ๊ธฐ ์ํด์๋ ๊ฐ์ฒด.๋ฉ์๋()๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ์๋์ ๊ฐ์ด ์ฝ๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. let counter = { value: 0, increase: function() { thi..