1. Recoil vs Redux

μ•‘μ…˜, λ¦¬λ“€μ„œ, 미듀웨어 λ“± boilerplate μ½”λ“œκ°€ 많이 λ°œμƒν•˜λŠ” Redux μ™€λŠ” λŒ€μ‘°μ μœΌλ‘œ Recoil 은 boilerplate-free API μ œκ³΅ν•œλ‹€. React 의 useState 처럼 κ°„λ‹¨ν•œ κ²Œν„°(get) / μ„Έν„°(set) μΈν„°νŽ˜μ΄μŠ€λ‘œ μ‚¬μš© κ°€λŠ₯ν•©λ‹ˆλ‹€.

Redux 의 μƒνƒœ κ΅¬μ‘°λŠ” 트리 ꡬ쑰λ₯Ό λ”°λ₯΄μ§€λ§Œ Recoil 은 λ°©ν–₯ κ·Έλž˜ν”„(directed graph, digraph) λ₯Ό λ”°λ¦…λ‹ˆλ‹€.

Recoil 은 μƒνƒœλ₯Ό μ‚¬μš©ν•˜λŠ” μ»΄ν¬λ„ŒνŠΈλ₯Ό μˆ˜μ •ν•˜μ§€ μ•Šκ³  νŒŒμƒ 데이터(derived data)λ₯Ό λŒ€μ²΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

기본적으둜 μ•„ν†°(atom)의 데이터가 λ³€κ²½λ˜λ©΄ ν•΄λ‹Ή atom 을 κ΅¬λ…ν•˜λŠ” λͺ¨λ“  μ»΄ν¬λ„ŒνŠΈλ“€μ€ κ°±μ‹ λ©λ‹ˆλ‹€. Redux μ—μ„œλŠ” ν•΄λ‹Ή κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κΈ° μœ„ν•΄ reselect 같은 3rd-party λΌμ΄λΈŒλŸ¬λ¦¬κ°€ ν•„μš”ν•©λ‹ˆλ‹€.

AtomEffect λ₯Ό μ‚¬μš©ν•΄μ„œ νŠΉμ • μƒνƒœμ˜ κ°±μ‹  μ΄ν›„μ˜ μ‚¬μ΄λ“œ μ΄νŽ™νŠΈλ₯Ό 자체적으둜 μ •μ˜ κ°€λŠ₯ν•©λ‹ˆλ‹€

  • μƒνƒœ κ°±μ‹  이후에 영ν–₯λ°›λŠ” μ»΄ν¬λ„ŒνŠΈμ—μ„œ 직접 useEffectλ₯Ό μ‚¬μš©ν•  ν•„μš”κ°€ μ—†λ‹€.

Last updated