React 앱을 개발하다 보면 컴포넌트가 불필요하게 렌더링되는 상황을 마주하게 됩니다. 이런 경우 useMemo와 useCallback 훅을 사용해 성능을 최적화할 수 있습니다.1. useMemo란?useMemo는 계산 비용이 높은 값을 메모이제이션하여, 의존성이 변경될 때만 다시 계산하도록 도와줍니다.import { useMemo } from 'react';const expensiveValue = useMemo(() => { return computeHeavyTask(input);}, [input]);위 코드에서 computeHeavyTask는 input이 바뀔 때만 실행되고, 그 외에는 캐시된 결과를 반환합니다.2. useCallback이란?useCallback은 함수를 메모이제이션하는 데 사용됩니..