モチベーション
これを解消したくて「現代Webフロントエンドデザインパターン」書いているけど、とてもSPA/SSRまではたどりつかない。(それ以前の部分で、僕の書く同人誌としては、十分のボリュームになっている。) https://t.co/BSMQwPRxfP
— ぎゃばん@技術書典4 か-20 (@ledsun) 2018年4月16日
Webフロントエンドの技術は、なかなか必要な状況や解決したい問題が明確にされないまま「流行っているからこの技術が良い」みたいな選択されることが大いように思っています。 もちろん、「新しくてかっこいい技術を使いたい」というモチベーションで新しい技術に取り組むのは良いのです。
それはそうとして、うまくマッチしない問題に適用してみて「イマイチな技術だ」っていう感想を抱いたり、 あれもこれも流行っているのに「どれにも自分は手を出せてないからイケてないエンジニアだ」って劣等感を抱いたり、 自分の環境ではレガシーな事ばかりやっていて、もう世間の流れについていけないと悲壮感を感じたりするのは、あまりハッピーではないと思います。
それもこれも、それぞれの技術がどういう状況のどういう問題を解決するのかが、上手く整理されていないからだと思います。最近、流行っていないみたいなのですが、そういうのを整理するのに最適なテクニックを僕は知っています。そうです、パターンランゲージです。
だから、デザインパターンの文法に則ってWebフロントエンドの技術や考え方を解体しました。
形態
- A5
- 68ページ (自己最長)
- 700円(前作「受託開発インアクション 〜顧客の期待をコントロールする〜」と合わせてぴったり1000円)
内容
扱っているパターンは14種類。
- タスクパターン
- ポリフィルパターン
- トランスパイラーパターン
- タスクランナーパターン
- モジュールバンドラーパターン
- パッケージマネージャーパターン
- ユニバーサルモジュールパターン
- 実装パターン
- オブザーバーパターン
- イベントデリゲーションパターン
- テンプレートエンジンパターン
- プレゼンテーションモデルパターン
- 単方向データフローパターン
- オニオンアーキテクチャパターン
- 抽象インタフェースパターン
- フレームワークパターン
ざっくりタスク系と実装系に分けました。 SPA/SSRみたいな、今ホットなところは扱っていません。 2010年頃からSPAに至るまでの、Webフロントエンド界隈で工夫されてきたテクニックを振り返る本です。
実装パターンに関してはソースコードを使った説明が多いです。 ライブラリに依存していない、現代的なWebブラウザ向けJavaScriptで書きました。 それぞれのパターンについて、理解するためのなるべく小さなサンプルのソースコードを用意しました。
それぞれのパターンについて、こんなに簡潔に説明している文章はなかなか読んだことがありません。自分で書いててなかなか良い本が書けたと思います。
Webフロントエンドの開発に従事している方、これから従事する方、外から見ていてどういうことなんだろかと疑問を抱いている方、ぜひ読んでみてください!