๐ Reference
๐ย Chapter
mutable, immutable
mutable & immutable ๊ฐ์ฒด
immer
Redux
immutable.js
- ๋ถ๋ณ์ฑ(immutability)์ ์ ์งํ๊ธฐ ์ํ ๋๊ตฌ
- immutable ๋ฐ์ดํฐ ๊ด๋ฆฌ๋ฅผ ์ํ ๋๊ตฌ
- state๊ฐ ๋ณต์กํด๋ ๋ถ๋ณํจ์ ์ ์งํ ์ ์๋๋ก ๋๋๋ค.
- ํ์ด์ค๋ถ์์ ๋ง๋ค์๊ธฐ ๋๋ฌธ์ React์ ํธํ์ด ์ด๋ ์ ๋ ๋๋ค.
- ์๋ฅผ ๋ค์ด์ JSX ์ด๋ฃจ์ด์ง List๋ฅผ ๋ ๋๋ง ํ ์ ์๋ค.
- ํ์ง๋ง state ์์ฒด๋ฅผ Immutable ๋ฐ์ดํฐ๋ก ์ฌ์ฉํ๋ ๊ฒ ๊น์ง๋ ์ง์๋์ง ์๋๋ค.
Map
, List
, Set
๋ฑ ์์ฒด ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํด์ผ ํจ
- ์ผ๋ฐ ๊ฐ์ฒด/๋ฐฐ์ด์ด ์๋ โ
JSON.stringify
, forEach
, ...
spread ๋ฑ ๋ถ๊ฐ
- ๊ตฌ์กฐ์ ๊ณต์ (Structural Sharing)๋ก ๋งค์ฐ ๋น ๋ฅธ diff ๋ฐ ๋ณต์ฌ ๊ฐ๋ฅ
immutable.js - ์ค์น
# npm
npm install immutable
# yarn
yarn add immutable