📖

[読書感想]React.jsを深く学ぶために書籍を読んでじっくり学習した時の話

2024/11/19に公開

この記事を書くにあたって

タイトルの通りです。腰を据えてReact.jsを学びたかったため、書籍を一冊購入し一通り読んだ後にアウトプットとして自作サイトを作りました。その時に読んだ読書感想や学習の記録などを書き留めておきます。
 どんな内容の本なのか?難易度はどうだったか?良かった点などを挙げるので書籍選びの際の参考になれば幸いです。

本選びの際に気にした点

本を買う時はなるべく厚い本かつ新しい本を買うつもりでいました。自分は今までReactのスキルは簡単な修正が少しできる程度のものだったのでどうせ勉強するならネットやChatGPTから得る学習方法ではなく、体系的により深く学んでいきたいと思っていました。加えてフロントのスキルは移り変わりが多い印象もあったため、厚くかつ発行年月の新しい本を何か一冊購入して読むことにしました。

購入した本

大型書店まで出向き色々立ち読みして読み比べを行った結果、こちらの本を購入しました。
https://www.sbcr.jp/product/4815619480/

すごく厚いです(笑)
索引含めて約650ページあります。
家でパラパラめくっていて「ちょっと厚すぎたかな...」と一瞬思ったりもしましたが多くの内容を得られることに期待して読んでいくことにしました。

内容

実際に一通り読んでみたのでざっくりとした内容の紹介です。

〇導入編 (第1章~第3章 )

序盤は、JavaScriptとは、という話を皮切りにフロントエンド開発の来歴、Reactの特徴を解説して、学習のための環境を準備します。
また、初歩的なアプリを開発していく中で、Reactアプリを開発するうえで基礎となるコンポーネン ト、Props State などの基本概念を学びます。

読んでみて

よかったと思った箇所は、同じ動きでも何パターンかある実装方法をいくつか実演しているところと、イベントハンドラーの深い説明(オプションの設定方法やイベントの伝番の抑制方法など)があった事です。

〇基本編 (第4章~第7章 )

基本編では、アプリ開発でよく利用するフォーム開発、スタイル定義、組み込みコンポーネント、フックなど、個々のトピックについての内容でした。特にフックは、モダンなReact理解には欠かせない知識らしく、 第6章ではReactアプリ開発でよく利用する周辺ライブラリ についても紹介します。

読んでみて

ここで特によかったと思った箇所は、フックの活用のパートでRecoilを使ったストア(Atom)を学ぶことができRecoilを使ったTodoアプリのサンプルが載っていたこととです。ストア(Atom)とは何か?から記載があったのが個人的にうれしかったです。
 またStorybookと言うそれぞれのUIコンポーネントをブラウザで手軽にチェックする便利なライブラリの存在を知ることができたことです。

〇応用編 (第8章~第11章)

本格的なアプリ開発には欠かせないルーティングやテストのしくみを学びます。TypeScriptでReactアプリを開発する方法についても触れます。
そして、最終章ではReactベースのフレームワークNext.jsを使って、応用アプリを開発します。

読んでみて

ここで特によかったと思った箇所は、Next.jsとテストについて学ぶことができた点です。
書籍検索アプリの作成を通じてAppRouterを使ったNext.jsを学ぶことができた点と、
テストのパートではJestを使った単体テストCypressを使ったE2Eテストについて学べたのが自分にとって凄くうれしい点でした。

全体の感想

ES2015以降のJavaScriptの細かい文法の説明はあったもの、HTMLの説明は全くなかったので書籍の難易度は中と上の間で、WEBデザインについて全く理解のない人がいきなり読むのには若干向かない内容のように感じました。
 また、650ページある書籍だけありTypeScriptやNext.jsなどの内容も細かいものになっており、現実的なアプリ開発に必要な内容が余すことなく記載されているように感じました。中でもJestやE2Eのテストについてや、Next.jsやAppRouterついて学ぶことができたのが大きなメリットに感じました。
 自分は何か新しいスキルを身に着ける時には、書籍を買って一冊丸々読むことが多くアウトプットもあ合わせて作ることが多く「本を読む→パート毎のサンプルをデモする→何か自作アプリを作ってみる」という学習内容になることもあるのですが、そんな風に一か月丸々休んで腰を据えて学習したい方には間違いなくオススメの一冊になると思います。その反面日々の業務などでまとまった時間が確保できない方には向かないようにも感じました。
 こういう書籍は一度一通り読んでおくと、後々業務などで分からないコーディングやワードが出てきた時に利用する手引き書としても活用できると思っているので、そういう意味ではこの本は最強のReact辞典にもなりうるようにも感じました。自作アプリを作っている際も何度も読み返すことも多く大きな助けになりました。

Discussion