最近Reactを始めた人向けのReact Hooks入門
useMemo
useMemoフックは単純に値を保存するためのフックです。useStateと違い、更新関数はありません。例えば「重い計算だけど、何回やっても結果は同じ」値などを保存する使い道が便利です。要はキャッシュですね。
useCallback
useCallbackは関数特化のuseMemoで、useMemo(() => func, [])と書かなければいけないところをuseCallback(func, [])まで省略できます。あとはuseMemoと同じです。
useEffect
コンポーネントのレンダリング後に実行されます。つまり簡単にいうとuseEffectは「関数の実行タイミングをReactのレンダリング後まで遅らせるフック」ということになります。
一般的に「DOMの操作」「ウェブAPIとの通信」などはuseEffect内で行います。Reactではこれらの操作のことを「作用」あるいは「副作用」と呼んでいます。