『Web 製作者のための CSS 設計の教科書』読んだ

CSS は一応書けるけど、我流でルールなんてものは無い。 デザインを実現することが最優先。 再利用性や保守性は皆無。 これではいけないよなぁと思って購入した。

CSS の再利用性や保守性は、 「CSS のルールセットを取り換えのきく部品=コンポーネントにする」ことで高めることができる。 本書では、コンポーネントを意識した CSS 設計の考え方を学べる。

コンポーネント設計のアイデアには

  • OOCSS
  • BEM
  • SMACSS
  • MCSS
  • FLOCSS

があり、中でも興味があったのは OOCSS と BEM。 BEM は Web 上の記事を読んでもイマイチ理解できなかったけど、 OOCSS と比べながら説明していてアッサリと理解できた。

コンポーネント設計の実践では、CSS フレームワークが提供するようなコンポーネントを題材にしている。 CSS をイチから記述する場合、丁度良いお手本になりそう。 まぁ、自分は CSS フレームワーク使うんだけど。

読み終えて CSSリファクタリングしたくなる衝動に駆られると思う。 でも、いきなりなんでもかんでもコンポーネント化しようとしてはいけない。 CSS でも YAGNI。そして Rule of three。 同じパターンに 3 回出くわしたら再利用できるようにするくらいで丁度いい。