『詳解 WordPress』を読んでより確かな開発品質を目指す
今年のゴールデンウィークは12連休だった kagata です。こんなに長い有給休暇は社会人になって初めてのような気がします。かといって遠出をするでもなく、連休の半分は自宅の本の整理に明け暮れ、残りの半分も自宅から電車で1時間以内の範囲で安静に過ごしました。
さて今回は、そんなゴールデンウィークに読んだ本の中から自分の中で話題の新刊『詳解 WordPress』をご紹介します。かなりエッジの利いた本です。もしかすると、読み手を選ぶかもしれません。
『詳解 WordPress』に書いてあること
最初にこの本を手にとったときに感じたのは「何これ薄い!」という驚きでした。「詳解」というからには当然、WordPress のことなら何から何まで書いてあって、そうすると電話帳くらいの厚みはあるんだろうと思い込んでいたもので…。
その薄さからもわかるとおり、WordPress の本当にすべてを網羅しているわけではありません。この本が「詳解」しているのは WordPress コアの構造や機能です。下に挙げた全6章のうち、2章3章が本題と思うとしっくりきました。
1章 WordPress の概要
若干の前置きのあと、おもむろにフロント側 Web サイトと管理画面それぞれの HTTP リクエストとレスポンスを見てみるという話になります。ちょっとした先制パンチを浴びた気分になります。
2章 WordPress の構造
WordPress のファイル構成、プラグイン機構、テーマ、データベースの構造などなど、まさに WordPress コアの構造についての章です。
2章が飛びぬけて長く、1章と2章でこの本が半分終わります。
3章 WordPress の実行プロセス
クエリとリライトルール、およびコアの実行手順について。2章が(静的な)構造についての章なら、3章は WordPress が実行時にどのような動きをするかという時間軸に沿った振る舞いの話になります。
4章 プラグイン開発とテーマ開発
表題どおり。よくある WordPress の解説書なら「テーマ開発」だけでページ数の8割くらいを使ってしまいそうですが、この本ではわずか20ページほどでさらっと通過してしまいます。
5章 セキュリティ
WordPress 本体のセキュリティ機能について。認証機構、nonce による CSRF 対策、エスケープ関連の WordPress 関数、wpdb
クラスが提供する動的プレースホルダなど。
6章 スケーラビリティとパフォーマンス
WordPress のスケールアウト、パフォーマンス向上の施策やツールなど。
『詳解 WordPress』に書いていない(と思ったほうがいい)こと
先にも書いたとおり、この本は WordPress コアがどうなっているかを「詳解」しています。
一方、ほかの WordPress 解説書ならだいたいていねいに説明してくれている次のようなことが、大胆に省略されています。
- WordPress のインストール
- WordPress の機能(管理画面の使い方とか)
- テーマの作り方(WordPress ループ、条件分岐タグ、テンプレート関数など)
このあたりは、自分が WordPress のカスタマイズを始めたころにいちばん知りたかった内容でした。これらが削られているというのは、それだけ WordPress 経験者向けに特化した本なんだなと感じます。
誰にどう役立つ本なのか考える
ここまで見てきたとおり、『詳解 WordPress』は WordPress コアのしくみを学ぶのに適した本です。コアのしくみを学ぶことで、ひとことでいえば「開発品質のさらなる向上」を目指せます。
単に WordPress で Web サイトを構築するだけなら、必ずしもコアのしくみまで踏み込んで学ぶ必要はありません。ネットに散らばるカスタマイズのレシピを集めたり、配布されているプラグインを導入したりするだけで、コアがどうなっているか知らずともかなりのことが実現できます。
でも、見た目は要望どおりのサイトに見えても、それ以外のところで問題を抱えることがままあります。導入したプラグインが脆弱だった、なんだか表示が遅くてしょうがない、自分の書いたコードが汚くてあとから手を入れられない…などなど。
それらセキュリティやパフォーマンス、メンテナンスなど、非機能要件的な要素まで含めて品質の高いシステムを開発するためには、最終的には WordPress コアまで踏み込んでベストプラクティスを模索する必要があるんだな、とこの本を読んで思いました。
「コアのしくみ」を主題と考えると3章までがこの本のメインのように思えて、5章や6章がどうしてこの本にあるのか最初は少し疑問でした。が、非機能要件まで品質を保つということを念頭に置くと、これらの章のありかたも腑に落ちます(けど、6章はもっと詳しい話が読みたかったかな)。
ということで、『詳解 WordPress』は WordPress のかんたんなテーマやプラグインを作れるようになった人が、「とりあえず作れる」ではなくより確かな品質を目指すために読む本としておすすめです!
余談:『詳解 WordPress』に書いてあると思ってたこと(?)
あとはまあほんとに余談なんですけど、WordPress コアのしくみに集中する本なら『詳解 WordPress』よりも『詳解 WordPress コア』とか『WordPress ソースコードリーディング』とか、そういうタイトルのほうがしっくりくるかなあと思っています。
わたしが『詳解 WordPress』というタイトルを最初に目にしたときに、こんなことがのってたらいいなあと夢想したことを列挙しておきます。
- ありとあらゆる WordPress API を網羅する充実のリファレンス
- WordPress のスケールアウト(この本にも少しのってますけど)
- WordPress のデプロイ
- 近ごろ花盛りの WordPress の開発支援ツールいろいろ。VCCW とか Wocker とか WP-CLI とか WordMove とか wp-deploy とか PhpStorm の WordPress 対応機能 とか…
- WordPress Trac の使い方とかコア開発へ参加する方法とか
- WordPress の文化の話。『たのしい開発 スタートアップ Ruby』みたいなノリで。WordPress なら、GPL とか WordCamp とかの話?
ほんとに全部のせたら、かなりの鈍器ができあがりそうですね。次は『パーフェクト WordPress』なんて、出ないかしらん…?