π React Architecture λ° ν¨ν΄κ³Ό κ΄λ ¨λ μν°ν΄
π 리μ‘νΈ μ€κ³ κ°μ΄λβ
리μ‘νΈ μ€κ³λ₯Ό νλ μμΉβ
- μ°λ¦¬λ νμ₯μ±μκ³ μ¬μ¬μ©μ± μλ μ½λλ₯Ό λ§λ€μ΄μΌ νλ€
- κ΄μ¬μ¬μ λ°λΌμ μ½λλ₯Ό λΆλ¦¬νκ³ λ¨μΌ μ± μμ κ°μ§λ μ»΄ν¬λνΈλ₯Ό λ§λ€μ΄μΌ νλ€
- μΈλΆμ μ μ΄λ₯Ό μμμμΌμΌ νλ€
μ»΄ν¬λνΈμ μ¬μ μ μ μμ λ°λ₯΄λ©΄ μ»΄ν¬λνΈλ μ¬μ¬μ©μ±κ³Ό λ²μ©μ±μ μν΄μ λ§λ€μ΄μ ΈμΌ νλ€.
리μ‘νΈ μ»΄ν¬λνΈλ₯Ό λ± νκ°μ§ μν λ§ μνμν€κΈ° μν΄ μ€κ³ νκΈ° μν΄μλ μμν¨μμ νΉμ±κ³Ό κ°μ΄ λμΌν propsλ₯Ό λ°μΌλ©΄ κ°μ JSX 리ν΄νλ μμν¨μλ‘ μ΄λ€μ ΈμΌ νλ€. μ 격리λκ³ μν μ΄ μ μ μν΄μ μ»΄ν¬λνΈλ₯Ό λ§λ€λ©΄ μ½λκ° λ무 κ΄λ²μν μν μ μννκ³ λ³΅μ‘ν΄μ§λ κ±Έ λ°©μ§ν΄ μ€λ€. λ¨μΌ μ± μμ κ°μ§λ μμ μ»΄ν¬λνΈλ€μ ν μ€νΈνκΈ° μ’κ³ κ°λ μ±λ μ’λ€.
μ μ΄λ₯Ό μΈλΆμ μμ ν μλ‘ μ»΄ν¬λνΈμ μ μ°μ±κ³Ό μ¬μ¬μ©μ±μ΄ λμμ§λ€. λ°λ©΄, μ μ΄λ₯Ό μμνλ©΄ ν μλ‘ μμν μ½λλ₯Ό μ¬μ© νλ μ½λμ λν μ΄ν΄ λμ΄λκ° λμ κ°κ³ , κ°λ μ±μ΄ λ¨μ΄μ§λ€λ λ¬Έμ λ μλ€. μμκ³Ό μ¬μ© μ©μ΄μ±μ μ€μ¬μ μ μ‘λκ² μ€μνλ€.
κ΄μ¬μ¬μ λ°λ₯Έ λΆλ¦¬μ μ¬μ¬μ©μ±μ νλλ₯Ό μν΄ μ μ΄ μμμ μ μ νκ² νκ³ λ, λ무 μ΄λ ΅μ§ μκ² μ¬μ©μ±λ λμ΄λ κ·Έ μ¬μ΄μ μ΅μ μ μ°Ύμλ΄λκ² κ°λ°μμ λͺ«μΈ κ² κ°λ€.
π μ μ©ν 리μ‘νΈ ν¨ν΄ 5κ°μ§β
μλ³Έ: 5 Advanced React Patterns
- μ΄λ»κ² ν λ©΄ μ¬μ¬μ©κ°λ₯ν μ»΄ν¬λνΈλ₯Ό κ°κ° λ€λ₯Έ use caseλ€μ λ§λλ‘ λ§λ€ μ μμκΉ?
- μ΄λ»κ² νλ©΄ μ»΄ν¬λνΈλ₯Ό κ°λ¨ν APIλ‘ μ°κΈ° μ½κ² λ§λ€ μ μμκΉ?
- μ΄λ»κ² νλ©΄ UIμ κΈ°λ₯μ±μ μΈ‘λ©΄μμ νμ₯ κ°λ₯ν μ»΄ν¬λνΈλ₯Ό λ§λ€ μ μμκΉ?
μ°λ¦¬κ° μ μ€κ³λ μ»΄ν¬λνΈλ₯Ό ꡬννκΈ° μν΄μ νν κ°μ²΄ μ§ν₯μμ μ΄μΌκΈ°νλ "μ€λ³΅νμ§λ§λΌ"λΌλ DRY μμΉμ λ°λΌμΌ νλλ°, κ·Έλ΄λ €λ©΄ μ¬μ¬μ©κ°λ₯ν μ»΄ν¬λνΈλ₯Ό λ§λ€μ΄μΌ λλ€. κ·Έ μ¬μ¬μ©κ°λ₯ν μ»΄ν¬λνΈλ₯Ό λ§λ€λ €λ©΄ μ°λ¦¬κ° κ°κ° λ€λ₯Έ use caseμ λ§κ² λ§λ€μ΄μΌ νκ³ κ·Έμ λ°λΌ μ»΄ν¬λνΈμ κ°λ¨ν API μ°κΈ° μ½κ² λ§λ€μ΄μΌ νλ€.
μ»΄ν¬λνΈλ₯Ό κ°λ¨ν APIλ‘ μ°κΈ° μ½κ² λ§λ€κΈ° μν΄μ μ’ λ μ μ°νκ³ μ΅ν΅μ±μλ μ»΄ν¬λνΈλ₯Ό λ§λ€μ΄μΌ νλλ° κ·Έλ¬ν κ΄λ ¨λ ν¨ν΄λ€λ κ΅μ₯ν λ§λ€. κ·Έ ν¨ν΄λ€μ κΈ°λ³Έμ μΈ κ°λ μ λ² μ΄μ€λ IoC(μ μ΄μ μμ )μ΄ λ°νμΌλ‘ λμ΄ μλλ°, ν΄λΉ μ»΄ν¬λνΈμκ² μ μ΄κΆμ λμ£Όκ³ νλ¦μ λ§κ² ν΅μ ? λλ ν΄λΉ λ‘μ§μ ꡬννκ³ μ΄ νλ¦μ λν νΈμΆμ μΈλΆ λΌμ΄λΈλ¬λ¦¬κ° ν΄μ£Όλ λ°©μμΌλ‘ κ°λ¨ν APIλ₯Ό λ§λ€ μ μμΌλ©° μ¬μ¬μ©κ°λ₯ν μ»΄ν¬λνΈλ₯Ό λ§λ€ μ μλ€.
νν λ§μ΄ μ¬μ©νκ³ μλ 컀μ€ν ν λ μλ₯Ό λ€μκ° μλλ° μ΄ μ»€μ€ν ν μ μμ±νμ¬ μ¬μ©νλ©΄ λ‘μ§μ λΆλ¦¬ν μ μμΌλ©° μ ν¬λ μ΄ ν μΌλ‘ μ»΄ν¬λνΈμ κ°μ Έλ€ ν΄λΉ μ»΄ν¬λνΈμ λ§κ² μ¬μ©ν μ μλ€. λ°λΌμ μ μ΄κΆμ μ»΄ν¬λνΈκ° κ°μ§κ³ μκ³ ν΄λΉ ν΅μ κΆ?μ λκ²¨μ£Όμ΄ ν΄λΉ μ»΄ν¬λνΈμμ νΈμΆνλ κ²μ΄ μλ ν΄λΉ μ»΄ν¬λνΈ λ°μμ νΈμΆνκ² νμ¬ κ΄μ¬μ¬λ₯Ό λΆλ¦¬ν¨μΌλ‘μ¨ μ»΄ν¬λνΈλ₯Ό μ¬μ¬μ©ν μ μλ€κ³ μκ°νλ€.