見出し画像

技術書典6(4/14)にてEffective React Hooksという同人誌を出せませんでした(追記) 【か76】

2019年4月14日(日曜日)にサンシャイン池袋で開催される技術書典6に、Effective React Hooksという本を出します。

追記 4/14: 結論として新刊は出せませんでした…。

2018年秋の技術書典5直後に発表され、今年2月正式リリースされたReact Hooksという、コンポーネントをシンプルかつわかりやすく作る新機能について、Firebaseで動くPWAなエディタを作りながら解説する本です。

サークル名は東京ラビットハウスで「か76」に配置されています。近くにはJSとか関連のサークルさんが多いです。

React Hooksって何よ?

Reactのコンポーネントの作り方をすごくシンプルにする機能です。これまで制約のあった関数型コンポーネントを、その良さを消さずに制約を取り払ってくれます。

ウェブ開発で定番となったReact.js / Vue.js / Angular.js はどれもコンポーネントというまとまった単位を作り、それを組み合わせて画面を設計します。

Reactのコンポーネントには2種類の作り方があります。

・ React.Componentを継承したクラスを定義する
・ 関数を定義する

数年前に書いたReact+Redux入門という記事では前者(クラスを使ったコンポーネント)で作っていましたが、クラス型コンポーネントには機能が密結合になりやすく、複雑で難しいものになりがちという弱点があります。

それに対して関数を定義するコンポーネントは、シンプルでわかりやすく疎結合にしやすいのですが、使えない機能があるという制約がありました。

制約をなんとか解除する為に、Recomposeなどといったものが流行ったりもしていましたが、作者さんがFacebook社に入り、サードパーティのライブラリではなく、React自体が進化した結果がReact Hooksです。

・ Reactのコンポーネントにはクラスと関数の2種類の作り方がある
・ クラス型コンポーネントは複雑化しやすいという弱点がある
・ これまでの関数型コンポーネントは機能に制約があった
・ React Hooksは関数型コンポーネントの制約を解除するもの

React HooksはReactの歴史を大きく転換するものです。今後もクラス型コンポーネントの互換性はなくなりませんが、React Hooksなら、コードが書きやすくDX(開発者体験/Developers eXperience)を高められます。

今すぐ採用をしなくてもかまいませんが、いずれ主流になるでしょう。

Firebase + PWA なサンプルアプリとは

筆者が別の目的で作っていたアプリで、オフラインでもオンラインでも動く個人向けのテキストエディタです。Dropbox Paperとか便利ですが、オフラインでは動作しないなどの問題があります。

そこでPWAによるオフラインでも動き、オンラインになればサーバー上にテキストを自動保存してくれる、使い勝手の良いエディタが欲しかったので作成しました。

単なるメモ帳が欲しかったので、Markdownを含めた書式は対応しておらず、素のテキスト(プレーンテキスト)を編集するだけのものです。

そのアプリがちょうど題材として良かったのでそのアプリをベースにしたのが、今回の本のサンプルアプリです。

React Hooks + Firebase をいい感じに書けるようにしています。

内容

詳しい目次は数日以内に出します。

・ React Hooksについて
・ React Hooksを始める(環境構築、各種フックの使い方)
・ カスタムフックについて
・ 実際にアプリを作ってみる

という内容になります。効果的な使い方、はまりどころの回避などを解説していきます。

予定価格は1000円で、予定ページ数は、おそらく60P〜80Pかなと思いますが、まだわかりません!

今回も前日ギリギリ入稿になりそうです。

表紙の狼は、SEKIRO(セキロ)が(難しすぎるけど)面白すぎるので、Pixabayのフリーな素材です。フック -> チェーンアクション -> SEKIROという連想です…。(海腹川背からの連想も考えました)

印刷数を絞る予定なので、気になる方はサークルチェックをお願いします。後日、サンプルPDFなどを出します!

この記事が気に入ったらサポートをしてみませんか?