1.7 KiB
1.7 KiB
title, category, tags, created
| title | category | tags | created | ||||
|---|---|---|---|---|---|---|---|
| 리액트 훅(Hooks) 심층 분석 및 활용 | Software Architecture |
|
2026-04-20 |
React_Hooks_Deep_Dive (리액트 훅 심화)
📌 한 줄 통찰 (The Karpathy Summary)
훅은 단순히 함수를 재사용하는 것이 아니라, 컴포넌트의 생애 주기와 논리를 '선언적'으로 결합하는 고도의 동기화 기제다.
📖 구조화된 지식 (Synthesized Content)
- useEffect의 올바른 관점:
- "마운트될 때 실행"이라는 라이프사이클 사고방식에서 벗어나라.
useEffect는 의존성 배열의 값과 컴포넌트 외부 시스템(API, DOM 등)을 동기화하는 작업이다.
- "마운트될 때 실행"이라는 라이프사이클 사고방식에서 벗어나라.
- Custom Hooks (추상화의 꽃):
- 복잡한 비즈니스 로직(예: 데이터 페칭, 타이머 관리)을
useMyLogic처럼 따로 빼내어 컴포넌트는 오직 UI 선언에만 집중하게 만든다. 이것이 컴포넌트의 가독성을 폭발시키는 비결이다.
- 복잡한 비즈니스 로직(예: 데이터 페칭, 타이머 관리)을
- Rules of Hooks:
- 반드시 함수의 최상위에서만 호출되어야 한다. 그래야 리액트가 훅의 상태를 유한 상태 머신처럼 정확한 순서로 관리할 수 있다.
⚠️ 모순 및 업데이트 (RL Update)
useEffect내에서 무분별하게 상태를 업데이트하면 무한 루프나 성능 저하가 발생한다. 가능하면useMemo나useCallback으로 계산 결과를 캐싱하거나, 상태 업데이트 로직을useReducer로 위임하라.
🔗 지식 연결 (Graph)
- Related: React_Performance_Optimization , React_State_Management_Strategy
- Context: WebWorker_Performance