書籍 "React: Up & Running" を通じてReactの基礎やモダンなJSの開発環境を学ぶ

技術・テクノロジー

"React: Up & Running" を読み終えたので、忘れないうちに感想を書いておこうと思います。

対象読者

目次を見るとなんとなくどんなことが書いてあるかわかると思いますが、この本はだいたいこんな人に向いていると思います。

  • React のチュートリアルくらいはやったけど、次に何を勉強すればいいのか分からない
  • モダンな JS の開発環境やツールがあまりわからない
  • ES6 の記法をよく知らない

つまり、初心者向けの本です。自分は初心者なのでうってつけ、という感じでした。

本書ではだいたい以下の様なことについて触れます。

  • React のコンポーネントと UI の定義
  • JSX によるコンポーネントの構成
  • Flux によるデータの流れの整理
  • イミュータブルなデータについて
  • Babel
  • Flow
  • ESLint
  • Jest

個人的にこの構成は非常にありがたく、参考になる部分が多かったです。

最近は React も解説記事が増えてきたと思うのですが、様々なツールなどの知識があることが前提になっていることも多く、この本を通じて一度必要な知識を整理しておくのはいいことかな?と思います。

全体的な感想

本書は最初の方はいくつかのサンプルを通じた React の解説、後半は1つのアプリを通じた React の周辺技術の解説になっています。

自分は最初の方だと、React のライフサイクルの解説がとてもわかりやすく、印象的でした。昔、一人 React.js Advent Calendar 2014 - QiitaReact.js の Component Lifecycle - Qiitaで React のライフサイクルについては軽く読んだことはあったのですが、きちんと理解できていませんでした。

この本では実際にログをとってどういう流れで動いているのかが目に見える形で解説されているのが良かったです。

ただ、本書の説明だけでは多少わかりづらいなと感じるところに関しては、やはりReact.js の Component Lifecycle - Qiitaとかを見ながら補っていたので、一人 React.js Advent Calendar 2014 - Qiitaは常にブラウザに開いておくと何かと捗る印象でした。

後半はWhinepadというアプリの作成を通じて解説を進めていくのですが、この1つのアプリのコードを少しずつ変えながら話が進んでいくのが良かったです。やはり、実際に動くサンプルがある状態で解説があると、コードを見ながら理解ができるため理解がしやすかったです。

例えば、最初は PropTypes で型を持たせているのですが、それを Flow に書き換える解説があり、なんとなく難しそうだなと感じていた Flow の理解が進んだような気がしました(それでも理解できていない部分は多そうですが)。

ただ、Flux まわりはちょっと完全にコードからは理解できていないため、もう少しじっくり読みなおす必要があると感じました。概念は理解できていると思うのですが、独自に Flux っぽいものを実装している部分がきちんと理解できていないです。

さいごに

自分はこの本とLearning React Native [Book]を前々から購入しようと思っていたのですが、最近、2016 年 8 月 19 日までセールをやっていることに気がつき、うまくこのタイミングで買えたので満足しています。

個人的には、この中だとLearning React [Book]にも興味があるので、期間中に買っておきたいなと思います。

また、React: Up & Running に関しては、サンプルの pdfコードが Githubで見れるので、気になる方はここで一度確認してみるのがオススメです。

追記

もう日本語版でてます。O'Reilly Japan - React ビギナーズガイド