無限大な夢のあと

テニスとアニメが大好きな厨二病SEのブログ

【書評】【改訂新版】これからはじめるReact実践入門 コンポーネントの基本からNext.jsによるアプリ開発まで( @yyamada ) 

今回もWINGSプロジェクトの書籍レビュアーに応募し、献本してもらったので、書評を書きました。
WINGSプロジェクトの皆様、著者の山田様ありがとうございます。
今回は表題の書籍を献本していただきましたので、こちらのレビューをさせていただきます。

要約

  • 今までReact以外のJavaScriptフレームワークを使っていて、Reactを使うことになった人には必携の1冊。辞書的にも使えます。
  • 既にReactの経験がある方、あるいはプロジェクトで経験した特定の書き方しか知らない方にも書籍全体で見ると新しい気づきを得られる1冊となっています。
  • 改訂によりReact 19 /Next.js 15に対応していて、React19 の Server Components & Suspense 対応の考え方に合った形で内容が書き換えられております。
    • 2年前の改訂前の書籍ではReact 18 / Next.js 13 に対応

導入/私の前提知識

書評の書き手の技術レベルを読み手も把握できた方が良いと思うので簡単に記載します。端的にいうと、主戦場/強みはWebフロントではないが、フルスタックエンジニアとして開発には加わることができて、技術選定もできるかなのレベル感です。

ここは2年前の改訂前の書籍のレビュー時と現在の前提知識は近く、思い返すとちょうど2年前くらいからVPoEになったため、マネジメントポジションになったことやLLM時代到来の到来の時期だったのが、思い出されます。
大きな差分はLLMを当たり前に使うことになったくらいでしょうか。

改めて以下の前提知識感です。
dke-msy-node.hatenablog.com

私のJavaScript(TypeScriptの経験を含む)の直近5年の経験は以下になります。

React/TypeScriptを用いて、toC向けの画面/管理を作成して、実際のサービス運用。
GraphQLをプロジェクトで導入し、Apolloなどを実践投入。
他の書籍の書評を通して、個人開発でReact/Vue3/ReactNativeなどで簡単なアプリを作成。
私自身、実務でのReactでのプロジェクト経験は前職の1プロジェクトのみで、今の現場ではモバイルアプリとバックエンドを中心に開発しております。
その中で、社内ではReactで作るプロジェクトも増えており、以下の書籍を会社のメンバーで輪読を行なっておりました

書評

ここから書籍の具体的な内容の書評に入らせていただきます。
若干改訂前の書籍との比較も入ってくるため、そこはバイアスが入ってしまいますが、ご了承ください。

最近の傾向やライブラリの変更、React19で追加された機能がわかりやすく記載されている、LLM時代でも辞書としても、最初の書籍としても使えるものになっております。
私は最前線では終えてはいないものの、一定のトレンドは把握している想定です。

良いところ

例えば、網羅はできていないかもしれませんが、前回の書籍から以下の点は変更があったように読み取れました。

  • 環境の説明がCreateReactApp→Vite(前回のレビューで言及していただいた点を反映していただいて感謝)
  • モダンJavaScriptの説明に非同期処理/fetchが追加
  • PropTypesの削除(React19から無視される仕様)
  • userId関数の話
  • Styled JSX,Styled Component→CSS Modules
  • React19からのリソース,メタデータコンポーネント
  • React Query→SWR
  • useContext関数→use関数
  • Recoil→Jotai
  • useActionState関数,useOptimistic関数,useFormStatus関数
  • ルーティングの削除(React Router→ App Routerへの流れ)
  • Jest→Vitest

上記をぱっと見ても、巷にあるような「なんちゃって改訂」より、しっかり改訂されているように見えます。
例えば、RecoilのようにReact19 の新アーキテクチャと相性が悪い等から、実質開発停止になっている現状を鑑みると時勢をちゃんと掴んでいると言えます。
余談ですが、Jotaiは日本人コミッタがメインメンテナにいることは知っていますが、同じ系統で調べたらZustandもある中で、意図的に取り扱ったのかなとも思いました。
上記も踏まえて、全体的にReact19 の Server Components & Suspense 対応をされていると言えます。


悪いところ

前回のレビュー同様にTypeScript要素がより強いと良いと思いました。
私が静的型言語のキャリアを歩んでいることもあるからか、どう考えてもフロントエンドで開発する時は今の時代ならTypeScriptは必須と考えているので、若干バイアスはかかっている自覚はありますが、やっぱり盛り込んでほしいとは思いました。
※書籍の売上的には微妙かもしれませんが、fp-tsなどを使った関数型ライブラリもゴリゴリに活用した続編なども読んでみたいです笑

まとめ

よって、前回のレビューも含めて、タイトルにある通りこれからReactを始める人にとっても良いですし、痒いところにも手が届く書籍になっていると思います。
ただ、唯一TypeScriptに関しては、他の書籍で補完する必要はあると思いましたが、巷ではReact/TypeScirptのセットの書籍が多い中ではReactに特化したのは差別化を図れているとは思いました。


以上、簡単ではございますが書評のレビューとさせていただきます。

おまけ
TypeScript要素の補完のためにも参考になりそうな書籍は載せておきます。(自分が過去に読んだのはもう古いため、、、)