パーフェクト PHP 書評
[caption id="attachment_981" align="alignright" width="240" caption="パーフェクト PHP"][/caption]いきなり結論
少なくとも PHP 5.3 時代である現在、この本の登場をもって、これまでにあった有象無象の「PHP と MySQL でインタラクティブなホームページをつくろう !」的な本はその役割を終えました ... と言えるぐらい網羅されているので、買いましょう。
この書籍のターゲット
購入前のイメージでは中級者以上向けかと思っていましたが、手に取って読んでみると、初心者も対象に含まれているようで、 PHP のインストールや、文法の概要についてもカバーされていました。
ある程度 PHP を使いこなしている人であれば、読み飛ばす箇所も結構あると思いますが、言語仕様の細かい部分で「これは知らなかった」という部分にも出会えます。
例えば、リファレンスカウントによるガベージコレクションの仕組みや、コピーオンライトによる最適化については、知らない人も結構いると思います。 (少なくとも、私は PHP でコピーオンライトが使われていると意識したことはありませんでした)
個人的には、 みたいに、「これを読めば PHP ハッカーになれる !」みたいなのを期待していましたが、そういうのは想定されいないようです。
その分敷居はやや低めなので、 PHP 入門以前の方も安心して楽しめます。
書いてあること
- インストール方法
Linux, Mac のパッケージマネージャによるインストールと、 Windows では XAMPP によるインストール方法が紹介されています。 - 内部処理の概要
レキサー、パーサー、オペコードについての簡単な説明。 - 基本的な文法
既に PHP が書ける人であれば読み飛ばせる。 - PHP 5.3 以降の新しい機能
名前空間、無名関数、クロージャ、クラスのオートローディングなどについてもしっかり詳解されています。
業務ではまだ 5.2 以前の PHP を使っている、という人も覚えておきたい内容。 - Web アプリケーションの作成
フレームワークを作成して、それを基に Twitter ライクな Web アプリケーションを作成しています。
フレームワーク自体は割とミニマムにまとまっているので、いわゆるフレームワークが何をしてくれるのか、というのを雑観するのにもいいと思います。 - セキュリティ
XSS, CSRF, SQL インジェクションをはじめとして、具体的な攻撃手法とその対策が紹介されています。
全 PHP エンジニアが理解しておくべき内容。 - やや高度な機能
主に PHP5 以降のオブジェクト指向的な何かについて。
マジックメソッド、標準インターフェイス、SPL、PDO、DateTime、JSON 等。 - 雑多なテクニック
いわゆるレシピ。
書いてないこと
- 既存オープンソースフレームワーク解説
symfony のシの字も、 Ethna のエの字もありません。
著者の中にはそれらの関係者の方もいますが、意図的にトピックから外しているようです。 - テスト駆動開発
みたいに、そこまで触れるというのもありだとは思いました。
とはいえ、具体的なフレームワークの紹介は行わない方針のようなので、そういった意味でもしょうが無いですねこれは。 - PEAR/PECL パッケージの作り方
それぞれの概要については触れられるものの、パッケージの作り方については特に言及されていません。
Openpear についての宣伝があっても誰も怒らないとは思うのですが ... - オブジェクト指向それ自体の説明
「PHP におけるオブジェクト指向」には触れられていますが、それ以上については専門書を読みましょう。 - コーディング規約
個人的にはモダン PHP を語る上では、結構重要なトピックだと思っています。
結構斜め読みで読み終えているので、「これについてはちゃんと書かれていたよ !」というのがあればご指摘いただければ幸いです。
初心者にオススメしたい活用法
PHP 初心者、もしくはこれから入門、という方に「こういう勉強法はどうでしょう ?」ということでオススメします。
といっても私自信がこれを実践したわけではないので、あまり偉そうには言えませんが ...
あくまでも「いち提案」として。
- Part 1 を読みながら、ローカルに開発環境を構築する
- Part 3 の実践 Web アプリケーション開発をひたすら写経
Part 2 の言語仕様をいきなり読むのは大変なので、じっくり読むのは何となくで PHP が書けるようになってから - Part 4 の PHP セキュリティについての読書会を行う
業務で PHP を使っているのであれば、是非チームで共有しましょう - Part 5 のテクニカルな PHP の活用、 Part 6 の PHP レシピはすき間時間等に読んでおき、「こんなこともできるのかー」程度に頭にいれておく
Part 4 の読書会は、私も自社内でやってみたいところです。
その他に読んでおきたい PHP 本
パーフェクト PHP が登場してもなお、その存在価値を失わないと思われる PHP 本を紹介します。
個別のフレームワークの解説本等は外し、より多くの PHP エンジニアに読まれるべきものを選んでいます。
未だにお世話になっていますが、残念ながら絶版となってしまいました ...
その代わり、現在は Web 上で読むことができます。
>> 書籍「PHPによるデザインパターン入門」の原稿テキストを公開します
安くて、薄くて、すっきり読めて、ためになるのでオススメです。
パーフェクト PHP のセキュリティ関係のパートだけでも同じぐらいの量はありますが、こちらにしか書いていない内容もあります。
PHP のサンプル自体はややレガシーな感もありますが ...