React ì í ì¶ì ì ëí ì¬ìžµ ë¶ì. ê°ë°ìê° ì¬ì©ì ìížìì©ì ì±ë¥ ë³ëª© íìì ì íí ì°Ÿì íŽê²°íì¬ ë ë¶ëëœê³ ë°ìì±ìŽ ë°ìŽë ì í늬ìŒìŽì ì ë§ë€ ì ìëë¡ ëìµëë€.
React ì í ì¶ì : ì¬ì©ì ìížìì© ì±ë¥ ìµì í
íë ì¹ ê°ë° ë¶ìŒìì ì¬ì©ì 겜íì ê°ì¥ ì€ìí©ëë€. ë¶ëëœê³ ë°ìì±ìŽ ë°ìŽë ìží°íìŽì€ë ì¬ì©ìì ë§ì¡±ëì ì°žì¬ì ìë¹í ìí¥ì ë¯žì¹ ì ììµëë€. ì¬ì©ì ìží°íìŽì€ 구ì¶ì ìí ìžêž° ìë JavaScript ëŒìŽëžë¬ëŠ¬ìž Reactë ëì ìŽê³ ìížìì©ì ìž ì¹ ì í늬ìŒìŽì ì ë§ëë ê°ë ¥í ë구륌 ì ê³µí©ëë€. ê·žë¬ë ë³µì¡í React ì í늬ìŒìŽì ì ëëë¡ ì±ë¥ 묞ì ë¡ ìŽë €ìì 겪ìŽ, ë²ë² 거늬ë ì ëë©ìŽì 곌 ë늰 ìížìì©ì ìŽëí ì ììµëë€. ë°ë¡ ìŽ ì§ì ìì React ì í ì¶ì (React Transition Tracing)ìŽ ìí ì í©ëë€. ìŽ ëžë¡ê·ž ê²ì묌ììë ì í ì¶ì ì ì¬ë ìê² íìíë©°, ì¬ì©ì ìížìì© ì±ë¥ ìµì í륌 ìí ê°ë , 구í ë° ì€ì ì ì© ì¬ë¡ë¥Œ ìëŽíŽ ë늜ëë€.
ì¬ì©ì ìížìì© ì±ë¥ì ì€ìì± ìŽíŽíêž°
êž°ì ì ìž ìžë¶ ì¬íì ë€ìŽê°êž° ì ì, ì¬ì©ì ìížìì© ì±ë¥ìŽ ì ê·ží ë¡ ì€ìíì§ ìŽíŽíŽ ëŽ ìë€. ì¹ì¬ìŽížì ë²íŒì íŽëŠíì ë ìì ìŽ ìíëêž°ê¹ì§ ëì ëë ì§ì°ì 겜ííë€ê³ ììíŽ ë³Žìžì. ìŽ ì§ì°ìŽ ëš ëª ë¶ì ìŒ ìŽì ë¶ê³ŒíëëŒë ì¢ì ê°ì ì€ ì ììŒë©° ì í늬ìŒìŽì ìŽ ë°ìíì§ ìë ê²ì²ëŒ ë껎ì§ê² í ì ììµëë€. ìŽë¬í ì§ì°ì ì¬ì©ì ì°žì¬ ê°ì, ìŽíë¥ ìŠê°, ê·žëŠ¬ê³ ê¶ê·¹ì ìŒë¡ë ì ë°ì ìž ì¬ì©ì 겜íì ë¶ì ì ìž ìí¥ì ë¯žì¹ ì ììµëë€.
ë®ì ìížìì© ì±ë¥ì ë€ì곌 ê°ì ë€ìí ììžìì ë¹ë¡¯ë ì ììµëë€:
- ë늰 ë ëë§: ë³µì¡í 컎í¬ëížì ë¹íšìšì ìž ë ëë§ ë¡ì§ì UI ì ë°ìŽíž ì§ì°ì ì ë°í ì ììµëë€.
- ìµì íëì§ ìì ìí ì ë°ìŽíž: ë¹ë²íê±°ë ë¶íìí ìí ì ë°ìŽížë 늬ë ëë§ì ì ë°íì¬ ì±ë¥ ë³ëª© íìì ìŽëí ì ììµëë€.
- ì¥êž° ì€í ìì : ë©ìž ì€ë ëìì ì€íëë ëêž° ìì ìŽë ê³ì°ëìŽ ë§ì ìì ì UI륌 ì°šëšíì¬ ë©ì¶ê² í ì ììµëë€.
- ë€ížìí¬ ì§ì°: ë°±ìë ìë²ë¡ì ìì²ì í¹í ë¹ë²í ë°ìŽí° ê°ì žì€êž°ì ì졎íë ì í늬ìŒìŽì ìì ì§ì°ì ì ë°í ì ììµëë€.
- ëžëŒì°ì ì í: ëžëŒì°ì ë³ ì íìŽë ë¹íšìšì ìž ëžëŒì°ì ëì ëí ì±ë¥ 묞ì ì ììžìŽ ë ì ììµëë€.
ì¬ì©ì ìížìì© ì±ë¥ì ìµì ííë €ë©Ž ìŽë¬í ë³ëª© íìì ìë³íê³ íŽê²°íŽìŒ í©ëë€. React ì í ì¶ì ì ì í늬ìŒìŽì ì ëŽë¶ ìëì ëí ê·ì€í íµì°°ë ¥ì ì ê³µíì¬ ì±ë¥ 묞ì ì 귌볞 ììžì ì íí ì°ŸìëŒ ì ìê² íŽì€ëë€.
React ì í ì¶ì ìŽë 묎ììžê°?
React ì í ì¶ì ì React DevTools ëŽì íë¡íìŒë§ ë구ë¡, í¹ì ì¬ì©ì ìížìì© ëì React 컎í¬ëížì ì€í 겜ë¡ë¥Œ ì¶ì í ì ìê² íŽì€ëë€. 볞ì§ì ìŒë¡ ì¬ì©ìê° ì í늬ìŒìŽì 곌 ìížìì©í ë Reactê° ìííë 몚ë ìì ì íìëŒìžì êž°ë¡íë©°, ë€ì곌 ê°ì ììž ì 볎륌 ì ê³µí©ëë€:
- 컎í¬ëíž ë ëë§ ìê°: ê° ì»Ží¬ëížë¥Œ ë ëë§íë ë° ììë ìê°.
- ìí ì ë°ìŽíž: ìí ì ë°ìŽížì ë¹ëì ë ëë§ ì±ë¥ì 믞ì¹ë ìí¥.
- Effect ì€í ìê°: ë¶ì íšê³Œ(ì: API ížì¶, DOM ì¡°ì)륌 ì€ííë ë° ê±žëŠ° ìê°.
- ê°ë¹ì§ 컬ë ì : ìížìì©ì ë°ìì±ì ìí¥ì ì€ ì ìë GC ìŽë²€íž.
- React ëŽë¶ ëì: ì¬ì¡°ì (reconciliation) ë° ì»€ë°(commit) ëšê³ì ê°ì Reactì ëŽë¶ ìì ì ëí íµì°°ë ¥.
ìŽ ë°ìŽí°ë¥Œ ë¶ìíšìŒë¡ìš ì±ë¥ ë³ëª© íìì ìë³íê³ ìœë륌 ìµì ííì¬ ë°ìì±ì ê°ì í ì ììµëë€. React ì í ì¶ì ì í¹í ì§ì°ì ììžì ì°ŸìëŽêž° ìŽë €ìŽ ë³µì¡í ìížìì©ìŽë ì ëë©ìŽì ì ë€ë£° ë ì ì©í©ëë€.
React ì í ì¶ì ì€ì íêž°
React ì í ì¶ì ì ì¬ì©íë €ë©Ž ëžëŒì°ì ì React DevTools íì¥ íë¡ê·žëšìŽ ì€ì¹ëìŽ ììŽìŒ í©ëë€. ìµìì 겜íì ìíŽ ìµì ë²ì ì ì¬ì©íê³ ìëì§ íìžíìžì. ììíë ë°©ë²ì ë€ì곌 ê°ìµëë€:
- React DevTools ì€ì¹: ì¬ì© ì€ìž ëžëŒì°ì (Chrome, Firefox, Edge)ì ë§ë React DevTools íì¥ íë¡ê·žëšì ì€ì¹í©ëë€.
- React DevTools ìŽêž°: ëžëŒì°ì ìì React ì í늬ìŒìŽì ì ìŽê³ ê°ë°ì ë구 íšëì ìœëë€. "React" íìŽ ë³ŽìŒ ê²ì ëë€.
- "Profiler" íìŒë¡ ìŽë: React DevTools ëŽìì "Profiler" íìŒë¡ ìŽëí©ëë€. ìŽê³³ìì ì í ì¶ì êž°ë¥ì ì°Ÿì ì ììµëë€.
- "íë¡íìŒë§ ì€ ê° ì»Ží¬ëížê° ë ëë§ë ìŽì êž°ë¡" íì±í: 컎í¬ëížê° ë ëë§ëë ìŽì ì ëí ììží ì 볎륌 ì»ìŒë €ë©Ž íë¡íìŒë¬ ì€ì ìì ê³ êž íë¡íìŒë§ ì€ì ì íì±ííŽìŒ í ì ììµëë€.
ì í ì¶ì ì ì¬ì©íì¬ ì¬ì©ì ìížìì© ë¶ìíêž°
React DevTools ì€ì ìŽ ìë£ë멎 ì¬ì©ì ìížìì© ì¶ì ì ììí ì ììµëë€. ìŒë°ì ìž ìì íëŠì ë€ì곌 ê°ìµëë€:
- ë ¹í ìì: Profiler íì "Record" ë²íŒì íŽëŠíì¬ ë ¹í륌 ììí©ëë€.
- ì¬ì©ì ìížìì© ìí: ì¬ì©ìê° íë ê²ì²ëŒ ì í늬ìŒìŽì 곌 ìížìì©í©ëë€. ë²íŒ íŽëŠ, ìì íë ì ë ¥, ì ëë©ìŽì ížëŠ¬ê±° ë± ë¶ìíë €ë ìì ì ìíí©ëë€.
- ë ¹í ì€ì§: "Stop" ë²íŒì íŽëŠíì¬ ë ¹í륌 ì€ì§í©ëë€.
- íìëŒìž ë¶ì: Profilerë ë ¹í ì€ì ìíë ìì ì íìëŒìžì íìí©ëë€.
íìëŒìž ë¶ìíêž°
íìëŒìžì ë ëë§ ê³Œì ì ìê°ì ííì ì ê³µí©ëë€. íìëŒìžì ê° ë§ëë 컎í¬ëíž ë ëë§ì ëíë ëë€. ë§ëì ëìŽë íŽë¹ 컎í¬ëížë¥Œ ë ëë§íë ë° ììë ìê°ì ëíë ëë€. íìëŒìžì íë ë° ì¶ìíì¬ í¹ì ìê° ë²ì륌 ë ììží ê²í í ì ììµëë€.
íìëŒìžì íìëë 죌ì ì 볎ë ë€ì곌 ê°ìµëë€:
- 컎í¬ëíž ë ëë§ ìê°: ê° ì»Ží¬ëížë¥Œ ë ëë§íë ë° ê±žëŠ° ìê°.
- ì»€ë° ìê°: ë³ê²œ ì¬íì DOMì 컀ë°íë ë° ê±žëŠ° ìê°.
- Fiber ID: ê° React 컎í¬ëíž ìžì€íŽì€ì ê³ ì ìë³ì.
- ë ëë§ ìŽì : props, state ëë contextì ë³ê²œê³Œ ê°ìŽ ì»Ží¬ëížê° 늬ë ëë§ë ìŽì .
íìëŒìžì ì ì€íê² ê²í íšìŒë¡ìš ë ëë§ì ì€ë ìê°ìŽ ê±žëŠ¬ê±°ë ë¶íìíê² ë ëë§ëë 컎í¬ëížë¥Œ ìë³í ì ììµëë€. ìŽ ì 볎ë ìµì í ìì ì ìëŽíë ë° ëììŽ ë ì ììµëë€.
ì»€ë° íìíêž°
íìëŒìžì 컀ë°ìŒë¡ ëë©ëë€. ê° ì»€ë°ì Reactì ìì í ë ëë§ ì£Œêž°ë¥Œ ëíë ëë€. í¹ì 컀ë°ì ì íí멎 íŽë¹ 죌Ʞ ëì DOMì ì ì©ë ë³ê²œ ì¬íì ëí ììží ì 볎륌 볌 ì ììµëë€.
ì»€ë° ìžë¶ ì 볎ìë ë€ììŽ í¬íšë©ëë€:
- ì ë°ìŽížë 컎í¬ëíž: ì»€ë° ì€ì ì ë°ìŽížë 컎í¬ëíž ëª©ë¡.
- DOM ë³ê²œ ì¬í: ìì ì¶ê°, ì ê±° ëë ìì 곌 ê°ì DOM ë³ê²œ ì¬í ììœ.
- ì±ë¥ ì§í: ë ëë§ ìê° ë° ì»€ë° ìê°ê³Œ ê°ì ì»€ë° ì±ë¥ êŽë š ì§í.
ì»€ë° ìžë¶ ì 볎륌 ë¶ìí멎 ì í늬ìŒìŽì ì stateë props ë³ê²œìŽ DOMì ìŽë€ ìí¥ì 믞ì¹ëì§ ìŽíŽíê³ ìµì íí ì ìë ì ì¬ì ììì ìë³íë ë° ëììŽ ë ì ììµëë€.
ì í ì¶ì ì€ì ì ì© ìì
ì í ì¶ì ì ì¬ì©íì¬ ì¬ì©ì ìížìì© ì±ë¥ì ìµì ííë ëª ê°ì§ ì€ì ìì륌 ìŽíŽë³Žê² ìµëë€.
ìì 1: ë늰 컎í¬ëíž ë ëë§ ìë³
ëëì ë°ìŽí°ë¥Œ íìíë ë³µì¡í ëª©ë¡ ì»Ží¬ëížê° ìë€ê³ ììíŽ ë³Žìžì. ì¬ì©ìê° ëª©ë¡ì ì€í¬ë¡€í ë ë ëë§ìŽ ëëŠ¬ê³ ëêž°ë ê²ì ë°ê²¬íìµëë€.
ì í ì¶ì ì ì¬ì©íì¬ ì€í¬ë¡€ ìížìì©ì êž°ë¡íê³ íìëŒìžì ë¶ìí ì ììµëë€. ëª©ë¡ ëŽì í¹ì 컎í¬ëíž íëê° ë€ë¥ž 컎í¬ëížë³Žë€ ë ëë§íë ë° íšì¬ ë ì€ë 걞늰ë€ë ê²ì ë°ê²¬í ì ììµëë€. ìŽë ë³µì¡í ê³ì°, ë¹íšìšì ìž ë ëë§ ë¡ì§ ëë ë¶íìí 늬ë ëë§ ëë¬žìŒ ì ììµëë€.
ë늰 컎í¬ëížë¥Œ ìë³í íìë íŽë¹ ìœë륌 ì¡°ì¬íì¬ ìµì íí ììì ì°Ÿì ì ììµëë€. ì륌 ë€ìŽ, ë€ìì ê³ ë €í ì ììµëë€:
- 컎í¬ëíž ë©ëªšìŽì ìŽì
: 컎í¬ëížì propsê° ë³ê²œëì§ ììì ë ë¶íìí 늬ë ëë§ì ë°©ì§íêž° ìíŽ
React.memo
ì¬ì©. - ë ëë§ ë¡ì§ ìµì í: ê³ì°ì ëšìííê±°ë ë íšìšì ìž ìê³ ëŠ¬ìŠ ì¬ì©.
- ëª©ë¡ ê°ìí: 목ë¡ìì 볎ìŽë íëª©ë§ ë ëë§íì¬ ì ë°ìŽížíŽìŒ íë 컎í¬ëíž ì륌 ì€ì.
ìŽë¬í 묞ì 륌 íŽê²°íšìŒë¡ìš ëª©ë¡ ì»Ží¬ëížì ë ëë§ ì±ë¥ì í¬ê² í¥ììí€ê³ ë ë¶ëë¬ìŽ ì€í¬ë¡€ 겜íì ë§ë€ ì ììµëë€.
ìì 2: ìí ì ë°ìŽíž ìµì í
ì¬ë¬ ì ë ¥ íëê° ìë ìììŽ ìë€ê³ ê°ì íŽ ëŽ ìë€. ì¬ì©ìê° íëì ì ë ¥í ëë§ë€ 컎í¬ëížì ìíê° ì ë°ìŽížëìŽ ëŠ¬ë ëë§ìŽ ë°ìí©ëë€. ìŽë í¹í ìììŽ ë³µì¡í ê²œì° ì±ë¥ 묞ì 륌 ìŒìŒí¬ ì ììµëë€.
ì í ì¶ì ì ì¬ì©íì¬ íìŽí ìížìì©ì êž°ë¡íê³ íìëŒìžì ë¶ìí ì ììµëë€. ì¬ì©ìê° ëš íëì ì ë ¥ íëë§ ë³ê²œíê³ ìììë ë¶êµ¬íê³ ì»Ží¬ëížê° 곌ëíê² ëŠ¬ë ëë§ëê³ ììì ë°ê²¬í ì ììµëë€.
ìŽ ìë늬ì€ë¥Œ ìµì ííêž° ìíŽ ë€ìì ê³ ë €í ì ììµëë€:
- ì
ë ¥ ë³ê²œ ëë°ìŽì± ëë ì€ë¡íë§:
debounce
ëëthrottle
íšì륌 ì¬ì©íì¬ ìí ì ë°ìŽíž ë¹ë륌 ì íí©ëë€. ìŽë 컎í¬ëížê° ë묎 ì죌 늬ë ëë§ëë ê²ì ë°©ì§í©ëë€. useReducer
ì¬ì©:useReducer
í ì ì¬ì©íì¬ ì¬ë¬ ìí ì ë°ìŽížë¥Œ ëšìŒ ì¡ì ìŒë¡ íµí©í©ëë€.- ììì ë ìì 컎í¬ëížë¡ ë¶í : ììì ë ìê³ êŽëЬíêž° ì¬ìŽ ì»Ží¬ëížë¡ ëëìŽ ê° ì»Ží¬ëížê° ììì í¹ì ë¶ë¶ì ëŽë¹íëë¡ í©ëë€. ìŽë 늬ë ëë§ì ë²ì륌 ì€ìŽê³ ì±ë¥ì í¥ììí¬ ì ììµëë€.
ìí ì ë°ìŽížë¥Œ ìµì ííšìŒë¡ìš 늬ë ëë§ íì륌 ì€ìŽê³ ë ë°ìì±ìŽ ì¢ì ììì ë§ë€ ì ììµëë€.
ìì 3: Effectì ì±ë¥ 묞ì ìë³
ëë¡ë ì±ë¥ ë³ëª© íììŽ effect(ì: useEffect
)ìì ë°ìí ì ììµëë€. ì륌 ë€ìŽ, effect ëŽì ë늰 API ížì¶ì UI ì€ë ë륌 ì°šëšíì¬ ì í늬ìŒìŽì
ìŽ ìëµíì§ ìê² ë§ë€ ì ììµëë€.
ì í ì¶ì ì ê° effectì ì€í ìê°ì 볎ì¬ì€ìŒë¡ìš ìŽë¬í 묞ì 륌 ìë³íë ë° ëììŽ ë ì ììµëë€. ì€ííë ë° ì€ë ìê°ìŽ ê±žëŠ¬ë effect륌 ë°ê²¬í멎 ì¶ê° ì¡°ì¬ë¥Œ í ì ììµëë€. ë€ìì ê³ ë €íŽ ë³Žìžì:
- API ížì¶ ìµì í: ê°ì žì€ë ë°ìŽí°ì ìì ì€ìŽê±°ë ë íšìšì ìž API ìëí¬ìžíž ì¬ì©.
- API ìëµ ìºì±: ë¶íìí ìì²ì íŒíêž° ìíŽ API ìëµì ìºì±.
- ì¥êž° ì€í ìì ì ì¹ ìì»€ë¡ ìŽë: ê³ì°ëìŽ ë§ì ìì ì ì¹ ìì»€ë¡ ì€íë¡ëíì¬ UI ì€ë ë륌 ì°šëšíì§ ìëë¡ íš.
ê³ êž ì í ì¶ì êž°ë²
Ʞ볞ì ìž ì¬ì©ë² ìžìë, ì í ì¶ì ì ì¬ìžµì ìž ì±ë¥ ë¶ìì ìí ì¬ë¬ ê³ êž êž°ë²ì ì ê³µí©ëë€.
ì»€ë° íí°ë§
ì ë°ìŽížë 컎í¬ëíž, ì ë°ìŽíž ìŽì ëë ë ëë§ì ììë ìê°ê³Œ ê°ì ë€ìí êž°ì€ì ë°ëŒ 컀ë°ì íí°ë§í ì ììµëë€. ìŽë¥Œ íµíŽ í¹ì êŽì¬ ììì ì§ì€íê³ êŽë š ìë ì 볎ë 묎ìí ì ììµëë€.
ë ìŽëžì ì¬ì©í ìížìì© íë¡íìŒë§
React.Profiler
API륌 ì¬ì©íì¬ ìœëì í¹ì ì¹ì
ì ë ìŽëžì ì§ì íê³ ì±ë¥ì ì¶ì í ì ììµëë€. ìŽë ë³µì¡í ìížìì©ìŽë ì ëë©ìŽì
ì ì±ë¥ì ìž¡ì íë ë° í¹í ì ì©í©ëë€.
ë€ë¥ž íë¡íìŒë§ ë구ìì íµí©
React ì í ì¶ì ì Chrome DevTools ì±ë¥ í곌 ê°ì ë€ë¥ž íë¡íìŒë§ ë구ì íšê» ì¬ì©íì¬ ì í늬ìŒìŽì ì±ë¥ì ëí ë í¬êŽì ìž ìŽíŽë¥Œ ì»ì ì ììµëë€.
Reactìì ì¬ì©ì ìížìì© ì±ë¥ ìµì í륌 ìí ëªšë² ì¬ë¡
Reactìì ì¬ì©ì ìížìì© ì±ë¥ì ìµì íí ë ëª ì¬íŽìŒ í ëª ê°ì§ ëªšë² ì¬ë¡ë ë€ì곌 ê°ìµëë€:
- 늬ë ëë§ ìµìí:
React.memo
,useMemo
,useCallback
ì ì¬ì©íì¬ ë¶íìí 늬ë ëë§ì íŒíìžì. - ìí ì
ë°ìŽíž ìµì í:
useReducer
륌 ì¬ì©íì¬ ìí ì ë°ìŽížë¥Œ ìŒêŽ ì²ëЬíê³ ìí륌 ë묎 ì죌 ì ë°ìŽížíì§ ë§ìžì. - ê°ìí ì¬ì©: í° ëª©ë¡ê³Œ í ìŽëžì ê°ìííì¬ ë ëë§íŽìŒ íë 컎í¬ëíž ì륌 ì€ìŽìžì.
- ì í늬ìŒìŽì ìœë ë¶í : ì í늬ìŒìŽì ì ë ìì ì²í¬ë¡ ë¶í íì¬ ìŽêž° ë¡ë© ìê°ì ê°ì íìžì.
- ìŽë¯žì§ ë° ìì° ìµì í: ìŽë¯žì§ ë° êž°í ìì°ì ìµì ííì¬ íìŒ í¬êž°ë¥Œ ì€ìŽìžì.
- ëžëŒì°ì ìºì± íì©: ëžëŒì°ì ìºì±ì ì¬ì©íì¬ ì ì ìì°ì ì ì¥íê³ ë€ížìí¬ ìì²ì ì€ìŽìžì.
- CDN ì¬ì©: ìœí ìž ì ì¡ ë€ížìí¬(CDN)륌 ì¬ì©íì¬ ì¬ì©ìì ì§ëЬì ìŒë¡ ê°ê¹ìŽ ìë²ìì ì ì ìì°ì ì ê³µíìžì.
- ì êž°ì ìž íë¡íìŒë§: ì í늬ìŒìŽì ì ì êž°ì ìŒë¡ íë¡íìŒë§íì¬ ì±ë¥ ë³ëª© íìì ìë³íê³ ìµì íê° íšê³Œì ìžì§ íìžíìžì.
- ë€ìí êž°êž°ìì í ì€íž: ë€ìí êž°êž°ì ëžëŒì°ì ìì ì í늬ìŒìŽì ì í ì€ížíì¬ êŽë²ìí í겜ìì ì ìëíëì§ íìžíìžì. BrowserStackìŽë Sauce Labsì ê°ì ë구 ì¬ì©ì ê³ ë €íŽ ë³Žìžì.
- íë¡ëì í겜ìì ì±ë¥ 몚ëí°ë§: ì±ë¥ 몚ëí°ë§ ë구륌 ì¬ì©íì¬ íë¡ëì í겜ìì ì í늬ìŒìŽì ì ì±ë¥ì ì¶ì íê³ ë°ìí ì ìë 몚ë 묞ì 륌 ìë³íìžì. New Relic, Datadog, Sentryë 몚ë í¬êŽì ìž ëªšëí°ë§ ì룚ì ì ì ê³µí©ëë€.
íŒíŽìŒ í ìŒë°ì ìž íšì
Reactë¡ ìì íê³ ì±ë¥ì ìµì íí ë 죌ìíŽìŒ í ëª ê°ì§ ìŒë°ì ìž íšì ìŽ ììµëë€:
- Context ê³Œë€ ì¬ì©: Contextë ë°ìŽí° ê³µì ì ì ì©í ì ìì§ë§, 곌ëíê² ì¬ì©í멎 ë¶íìí 늬ë ëë§ì ì ë°í ì ììµëë€. ì±ë¥ 묞ì ê° ë°ìí멎 prop drillingìŽë ìí êŽëЬ ëŒìŽëžë¬ëЬì ê°ì ëìì ê³ ë €íìžì.
- ìí ì§ì ë³ê²œ: Reactê° ë³ê²œ ì¬íì ê°ì§íê³ ëŠ¬ë ëë§ì ì¬ë°ë¥Žê² ížëŠ¬ê±°í ì ìëë¡ íì ë¶ë³ì±ì ì ì§íë©° ìí륌 ì ë°ìŽížíìžì.
- 목ë¡ìì key prop 묎ì: 목ë¡ì ê° í목ì ê³ ì í key propì ì ê³µíë ê²ì Reactê° DOMì íšìšì ìŒë¡ ì ë°ìŽížíë ë° ì€ìí©ëë€.
- ìžëŒìž ì€íìŒ ëë íšì ì¬ì©: ìžëŒìž ì€íìŒê³Œ íšìë ë ëë§ë ëë§ë€ ì¬ìì±ëìŽ ë¶íìí 늬ë ëë§ì ì ë°í ì ììµëë€. ëì CSS íŽëì€ë ë©ëªšìŽì ìŽì ë íšì륌 ì¬ì©íìžì.
- ìëíí° ëŒìŽëžë¬ëЬ ìµì ííì§ ìêž°: ì¬ì© ì€ìž ìëíí° ëŒìŽëžë¬ëŠ¬ê° ì±ë¥ì ìµì íëìŽ ìëì§ íìžíìžì. ëŒìŽëžë¬ëŠ¬ê° ì±ë¥ 묞ì 륌 ìŒìŒí€ë ê²œì° ëìì ê³ ë €íìžì.
React ì±ë¥ ìµì íì 믞ë
React íì ëŒìŽëžë¬ëЬì ì±ë¥ì ê°ì íêž° ìíŽ ì§ìì ìŒë¡ ë žë ¥íê³ ììµëë€. í¥í ê°ë°ìë ë€ììŽ í¬íšë ì ììµëë€:
- ëìì± ëªšëì ì¶ê° ê°ì : ëìì± ëªšëë Reactì ìë¡ìŽ êž°ë¥ ìžížë¡, Reactê° ë ëë§ ìì ì ì€ëš, ìŒì ì€ì§ ëë ì¬ê°í ì ìëë¡ íì¬ ì í늬ìŒìŽì ì ë°ìì±ì í¥ììí¬ ì ììµëë€.
- ìë ë©ëªšìŽì ìŽì
: Reactë ê²°êµ ìë ë©ëªšìŽì ìŽì
êž°ë¥ì ì ê³µíì¬
React.memo
륌 ì¬ì©í ìë ë©ëªšìŽì ìŽì ì íìì±ì ì€ìŒ ì ììµëë€. - 컎íìŒë¬ì ê³ êž ìµì í: React 컎íìŒë¬ë ë ëë§ ì±ë¥ì ê°ì íêž° ìíŽ ë ê³ êž ìµì í륌 ìíí ì ìê² ë ì ììµëë€.
ê²°ë¡
React ì í ì¶ì ì React ì í늬ìŒìŽì ìì ì¬ì©ì ìížìì© ì±ë¥ì ìµì ííêž° ìí ê°ë ¥í ë구ì ëë€. ê·ž ê°ë , 구í ë° ì€ì ì ì© ì¬ë¡ë¥Œ ìŽíŽíšìŒë¡ìš ì±ë¥ ë³ëª© íìì ìë³íê³ íŽê²°íì¬ ë ë¶ëëœê³ ë°ìì±ìŽ ë°ìŽë ì¬ì©ì 겜íì ìŽëìŽëŒ ì ììµëë€. ì êž°ì ìŒë¡ íë¡íìŒë§íê³ , ëªšë² ì¬ë¡ë¥Œ ë°ë¥Žë©°, React ì±ë¥ ìµì íì ìµì ê°ë° ëí¥ì íì íë ê²ì ìì§ ë§ìžì. ì±ë¥ì 죌ì륌 êž°ìžììŒë¡ìš êž°ë¥ì ìŒ ë¿ë§ ìëëŒ ì ìžê³ ì¬ì©ìê° ìŠê²ê² ì¬ì©í ì ìë ì¹ ì í늬ìŒìŽì ì ë§ë€ ì ììµëë€.
ê¶ê·¹ì ìŒë¡ ì¬ì©ì ìížìì© ì±ë¥ ìµì íë ì§ìì ìž ê³Œì ì ëë€. ì í늬ìŒìŽì ìŽ ë°ì íê³ ë ë³µì¡íŽì§ì ë°ëŒ ì±ë¥ì ì§ìì ìŒë¡ 몚ëí°ë§íê³ íìì ë°ëŒ ì¡°ì íë ê²ìŽ ì€ìí©ëë€. ì±ë¥ ì°ì ì¬ê³ ë°©ìì ì±ííšìŒë¡ìš React ì í늬ìŒìŽì ìŽ ìì¹ë êž°êž°ì êŽê³ììŽ ëªšë ì¬ëìê² íë¥í ì¬ì©ì 겜íì ì ê³µíëë¡ ë³Žì¥í ì ììµëë€.