컴포넌트는 순수 함수처럼 작성
렌더링 중 부작용 금지 API 호출, DOM 직접 조작, 타이머 설정 등
부작용은 useEffect에 격리 데이터 페칭, 구독, DOM 업데이트 등
동일 입력 → 동일 출력 유지 예측 가능성 확보, 테스트 용이성