Atomic Design ~堅牢で使いやすいUIを効率良く設計する
著
ゴールデンウィーク中の個人的課題図書、2冊目の『Atomic Design ~堅牢で使いやすいUIを効率良く設計する』を読了。といっても、サンプルデータを実際にダウンロードして手を動かしたわけでもなく、また本文に出てくる結構な量のコードについては読んでいません。Atomic Designについて日本語で専門的に書かれた本というのは知る限り本書が初めてだと思ったので、あくまで興味本位で。
感想としては、期待したほどAtomic Designについて掘り下げられていたわけではなかったような(そこを期待するならFrost氏の書いた『Atomic Design』を読むしかないか)。それは店頭で立ち読みした際に承知のうえで購入してたんですけどね。勝手ながら自分が本書のタイトルをつけるなら、『コンポーネント・ベースのUI開発 〜ReactによるAtomic Designの実践』という感じかなぁ。何にせよ「Atomic Design」は副題に含めるのが妥当というか。その他、気づき事項など:
- p.20の
大規模化なアプリケーション
の「化」は不要そう。 - p.45の、UIを英文に見立ててコンポーネント・ベースの利点を説明するくだりは、喩えとしてわかりやすく勉強になりました。
- p.51の
単一責任の原則
と関心の分離
というのは、どうしても似た概念のように思えてしまって少し悩みました。あと後者についてはなんとなく、アドラー心理学の「課題の分離」ぽい響きがして格好いい(謎 - p.59でコンポーネントとモジュールの違いを補足されているのですが、
モジュールはシステムに依存した部品であるという意味合いが強い
というのは出典を知りたいなと思いました。 - p.110で
v3.3でAngularをサポートを
と「を」が続いているところは誤記っぽい。最初の「を」が「の」でしょうか。 - p.133でDeleteButtonコンポーネントbutton要素ではなくspan要素で作っているのは、アクセシビリティ的には避けるべきではなかったか、と思います。
- p.214あたりからJestが唐突に登場する印象。Jestについては補足があると良かったように思いました。
- p.245で
スプライトというのは、コンピューター上に画像や図形などを高速に表示する技術です。CSSスプライトなどで馴染みがあるでしょう。
とありますが、CSSスプライトの他にもスプライトと名のつく表示高速化手法ってありましたっけ、ってなりました。 - p.274で
「Perform an audio...」と書いたラベルのボタン
とありますが、audioはauditの誤記です。 - p.282で同僚の黒澤さんが書いた記事「KarmaとmochaとaXeでアクセシビリティチェックを行う」がコラムに取り上げられていました。大変ありがたいことです。
- p.294あたりからトップダウン/ボトムアップという風にデザインのアプローチを大別するくだりがあるのですけど、個人的には違和感。同じデザインをどの粒度から眺めるかっていう違いですから、イメージとしては伝わるものの、トップダウン/ボトムアップとはちょっと違うような感覚があります。ミクロ視点/マクロ視点とか?