useMemo에 이어서 useCallback이라는 훅에 대해서 설명해보려고한다. 사실 컨셉은 useMemo랑 거의 비슷하다. 차이점은 이름 그대로 콜백함수를 메모리에 저장한다는 뜻이다. useMemo는 함수에서 리턴되는 값을 저장하는데 useCallback은 함수 자체를 저장한다. 그래서 useCallback을 통해 넘겨받은 함수에 인자를 넘겨주고 콜해서 리턴값을 받을 수 있다. useMemo때 썼던 앱을 그대로 활용해보자. 그러나 이번에는 컴포넌트에 함수를 넘겨주었다. 이때 App에 있는 button을 클릭하면 setDark가 실행되면서 리랜더링되고 그럼 getItems함수가 List컴포넌트에 넘어간다. 그리고 List컴포넌트에서는 useEffect에의해 useEffect 두번째 인자([dependencies])가 바뀔때만 getItems 함수가 새로 넘어간다. 근데 테마를 바꾸기만 해도 getItems함수가 새로 넘겨받은 것 처럼 인식하는 것이다. 그 이유는 역시