custom HOC 재사용 가능한 로직을 분리해서 컴포넌트 사이에서 공유한다. 불필요한 추상 레이어(컴포넌트 래퍼)를 생성한다. 클래스, 함수 컴포넌트 모두 사용 가능 커스텀 HOC를 작성할 때는 관례적으로 with 접두사로 이름이 시작되지만, 절대적 규칙은 아님 ex) React.memo(Component) custom Hook 재사용 가능한 로직을 분리해서 컴포넌트 사이에서 공유한다. 불필요한 추상 레이어(컴포넌트 래퍼)를 생성하지 않는다. 오직 함수 컴포넌트 모두 사용 가능 훅의 규칙을 반드시 따라야 함 (함수 컴포넌트 또는 커스텀 훅 안에서만 사용 가능) 커스텀 훅을 작성할 때는 반드시 use 접두사로 이름이 시작되어야 한다. ex) React.useMemo(() => ) 토글 상태 관리 커스텀 ..