>RSS晴読雨読@エンジニアライフ「エンジニアの人生=エンジニアライフ」に役立つ本を紹介します。978-47741443753780円(税込)■「例えば、PHPを避ける」の衝撃Webプログラミングの分野で大きなシェアを持つスクリプト言語、PHP。プログラマのコミュニティ界隈では「PHPをdisる」ことが、風物詩のように行われている。原因の一端は、おそらくIPAの「セキュア・プログラミング講座」というコンテンツだろう。『より良いWebアプリケーション設計のヒント』というページには、公開当時『例えば、PHPを避ける』というかなりショッキングな記述がされていた(現在は修正されて『プログラマが脆弱性をつくり易い環境を避ける』という表現になっている)。当時の記述については、こちらのブログ記事が引用して紹介している。安全なプログラミングについての考察もされているので、PHPでプログラミングをしている人にはぜひ一読をお勧めしたい。■なぜPHPを避けるのかさまざまな理由と視点から、PHPはdisられ続けてきた。PHPをdisるブログエントリをまとめた記事を見つけたので、興味のある人は読んでみてほしい。私も理由を考えて(そして書いて)みたのだが、あまりにも多すぎて本題から逸脱しすぎたので、割愛することにした。101)なぜ1から始まるのかと。私が見聞きした中で一番腑に落ちたのが、「PHPはジャンクフード」という批判である。安価かつ短時間で手軽に空腹を満たせるが、将来に自分の健康へしっぺ返しがあるのは間違いない。■とはいっても、避けてばかりもいられないとはいえ、Web開発の現場でPHPが占めている割合を考えると、到底避けてばかりはいられない。SOFTWAREという会社が発表したプログラミング言語の人気ランキング(複数の検索エンジンの検索結果から算出したもの)で、PHPは2010年2月で3位、2011年2月で6位にランクインしている。検索エンジンから収集したデータなので明確な根拠にはならないが、このデータは「もはや無視できない量のPHPコードやプロダクトが、すでに存在している」ということを示唆している。■ジャンクフード・プログラミングから抜け出すPHPを使うと、手早く安価な「ジャンクフード的に」Webアプリケーションを構築すること“も”できる。将来の自分の健康を考えると、メンテナンスしやすく、堅牢で、きれいなコードで構築したほうがいいのは自明である。ジャンクフードを食べ過ぎて健康を損なうのは勝手だが、ジャンクフード・プログラミングで生み出された不健康なコードは、やがてチームに、会社に、そして社会にも大きな損失を与えてしまう......かもしれないのだ。ジャンクフード・プログラミングから抜け出し、プロフェッショナルなソフトウェア職人を目指すのであれば、本書のような「健康的なプログラミング」を教えてくる本を読む必要がある。■「パーフェクトなPHP」を目指せ本書『パーフェクトPHP』からは、「健康的なプログラミング」ができるプログラマを増やそう、という決意のようなものが伝わってくる。基本的な言語仕様や、PHPの主な用途であるWebアプリケーションの作成、よく遭遇する問題への実践的なレシピなど、初学者にも現場でバリバリコードを書いているプログラマにも役に立つ内容が、高い密度でまとめられている。それだけでも十分役に立つ本なのだが、さらに「決意を感じさせる」2つの特徴がある。1つは、Webアプリケーションのセキュリティへの言及だ。9章、10章を割いて、Webアプリケーションにはどのような攻撃が行われ、それにどう対処していくべきかが広く、そして深く解説している。健康的な(=脆弱性のない)Webアプリケーションを作り出すためには、必須の知識と言えるだろう。1つは、随所に挟まれる「コラム」である。現場の最前線でPHPを使っている著者陣によって、ジャンクではない“健康的な”プログラミングをするために必要な知識や心掛けが散りばめられている。知らなくても動くが、「健康的なプログラミングができるプログラマ」になるための重要な知識について触れられているので、これらのコラムにも注目しながら読み進めてほしい。■まとめ:健康を守って、PHPを書くPHPが好きであれば、健康的なコードを書くべきである。PHPが仕事の道具であるならば、やはり健康的なコードを書くべきである。ジャンクフード・プログラミングから脱却し、ちゃんとした「プロの仕事」をするために、本書は強力なガイドになるだろう。不摂生はいつか、手痛いしっぺ返しとなって戻ってくる。痛い目にあわないためにも、社会に迷惑をかけないためにも、PHPプログラマであるならば健康的なPHPプログラミング、つまり「パーフェクトPHP」を目指そう。ちなみに、本書で紹介されているCSRF対策には徳丸浩さんからツッコミが入っている。セキュリティの章を読み終えたら、併せて参照していただきたい。「エンジニアの人生=エンジニアライフ」に役立つ本を紹介します。本をお探しの方は、インデックスからどうぞ。あなたはどこ見ていますか?書籍「誰でも身につく!暗算力」を読んでみた。未成年者略取ムチャか?男気か?部下も立て続けに。利用規約ITmediaはアイティメディア株式会社の登録商標です。