230502(ν)
π μ±μ₯μΌμ§ 4.0
μ±
ν볡ν μ΄κΈ°μ£Όμμ(μ¨μΈ λ€μ΄μ΄)
μ λ΄μ©μ μκ·Ήλ°μ μμνλ μλ°ν μ±μ₯κΈ°λ‘
μ΄μμλ κ½κ³Ό μ£½μ κ½μ μ΄λ»κ² ꡬλ³νλκ°?
μ±μ₯νκ³ μλ κ²μ΄ μ΄μ μλ κ²μ΄λ€.
μλͺ μ μ μΌν μ¦κ±°λ μ±μ₯μ΄λ€!
π³ (1.0)ν€μλ
μ΅λν κ°λ¨νκ² μ 리, μΆνμ 보면μ μ€μ€λ‘ μ€λͺ
π (2.0)κ²½ν μμ£Όλ‘
λ¨μ μ 보λ₯Ό μ λ¬νκΈ°λ³΄λ€ λ¬΄μμ λ°°μ κ³ μ΄λ»κ² ν΄κ²°νλμ§ μ§§κ³ κ°λ¨νκ² μμ±
βοΈ (3.0)μ ν΄μ§ ν νλ¦Ώμ λ§μΆ°μ
ν€μλ, κ²½ν λͺ¨λ μ’λ€. λ€λ§ λ§€μΌ μμ±νκΈ°λ‘ λ§μ λ¨Ήμλ§νΌ ν΅μ¬λ§ κ°κ²°νκ² μ 리ν μ μκ² ν νλ¦Ώμ μμ±
(3.1)230102λΆν° μμλλ νμ΅μ κ΄ν λ΄μ© μΆκ°
(3.2)230313λΆν° μ’λ κ²½ν, κ°μ μμ£Όμ λ΄μ©λ λ΄κΈ°!
πΎ (4.0)νμ΅ ν€μλμμ μ΅λν κ°λ¨ν μ 보 μ 곡, κ³ λ―Όμμ λ΄ κ²½νμ μμΈν μ μ!
π μ€λμ νμ΅ ν€μλ
useEffect vs useMemo vs useCallback vs useRef vs React.Memo
μ΄ λ¬νκ² λ€λ₯Έ ν λ μλ€β¦ μκ³ λ³΄λ©΄ κ΅μ₯ν λ€λ₯Έ λͺ©μ κ³Ό μ©λλ₯Ό κ°κ³ μμ§λ§ μ²μ 보면 λκ° μΌμΆ λΉμ€λ¬΄λ¦¬ν λλμ΄ λ λ€. ν΄μ μ‘λμ¬λμ μ΄ λ μλ€μ μ 리ν΄λμλ€. βοΈ μ°Έκ³
π μ€λμ κ³ λ―Ό ν€μλ
useReducerμ context APIλ₯Ό μ¬μ©ν μ μ μν κ΄λ¦¬ feat. Redux
μμ§ μ΄ λμ νμ©λ²μ λν΄μ μμΈν μλΏμ§κ° μλλ€. κ°λ μ μΌλ‘λ λλ€ μ μμΌλ‘ μνλ₯Ό κ΄λ¦¬ν μ μκ³ λ°μ΄ν°μ λν λ‘μ§μ λ°λ‘ λΆλ¦¬ν μ μλ€λ μ₯μ μ΄ μλ€λ κ² μ λ..?λ μκ² μ§λ§, μ€μ λ‘ μΈμ μ΄λ€ κ±Έ μ¬μ©νλ κ² ν¨μ¨μ μΈμ§ μμ§ κ°μ΄ λ μ¨λ€. μ¬κΈ°μ reduxκΉμ§ μκ°νλ©΄ κ°κ°μ μ©λμ μν κ·Έλ¦¬κ³ μ΄κ² μ λμλμ§ μ λν κ°λ μ μ 리ν΄λ νμκ° μμ κ² κ°λ€.
μμ κΈμ μ°Έκ³ ν΄μ μΈμ ν λ² λΉκ΅ μ 리λ₯Ό ν΄μΌκ² λ€.
π μμ½ λ° ν루 κ°λ¨ νκ³
λ°©νμ΄ μμλμλ€. λΉ λ₯΄κ² 리μ‘νΈλ₯Ό 볡μ΅(μ¬μ€ κ±°μ νμ΅β¦ vanilla JSλ₯Ό μ€λνλ μλ‘κ² λ³΄μ΄λ κ² λ§λ€.)νκ³ μλ€. μΌλ¨ λ무 μ¬λ―Έμλ€.γ γ γ γ γ λ€λ₯Έ μλ―Έλ‘ vanilla JSλ³΄λ€ λ³΅μ‘νκΈ°λ νμ§λ§, νμ€ν λΌμ΄λΈλ¬λ¦¬(μ¬μ€μ νλ μμν¬)λΌ κ·Έλ°κ° μνλ κ² λλ± λ§λ€μ΄μ§λ κΈ°λΆμ΄λΌ μ’λ€. κ±°κΈ°μ λ΄κ° μ¬λνλ tailwindCSSκ° CRA κΈ°λ³ΈμΌλ‘ μ€μΉλλ€λ γ γ κ°κ²©β¦ μ¬μ€ styled componentκ°μ CSS in JSλ₯Ό μ¬μ©ν΄λ΄€μ λ λΆνΈν μ μ΄ λ λ§λ€κ³ λκΌλλ°, λ§μΉ¨ μ±λ₯μμΌλ‘λ μ’μ§ μλ€κ³ νλ λμκ² μ€νλ € ν¬μμμ΄λ€. κ·Έλ λ€κ³ λ무 tailwindCSSμλ§ μμ‘΄νμ§ μκ³ Post CSSμ κ°μ μ’λ κΈ°λ³Έμ μΈ(?) css moduleλ μ¬μ©νλλ‘ νμ.
μ€λμ μν μ
- λΉ λ₯΄κ² μνλ μλ§νΌ 곡λΆν μ
- μ¬λ―Έμκ² μ¦κΈ°λ©΄μ 곡λΆνκ³ μλ μ
μ€λμ μμ¬μ΄ μ
- λ΄κ° κ³ννλ§νΌ λ€ κ³΅λΆνμ§ λͺ»ν μ (λ무 κ³νμ λ§μ΄ μ§°λβ¦?)