「エンジニアの人生=エンジニアライフ」に役立つ本を紹介します。

『効率的なWebアプリケーションの作り方』――PHPerよ立て、立てよPHPer

»
Manual_2 効率的なWebアプリケーションの作り方 ~PHPによるモダン開発入門

小川雄大(著)
技術評論社
2012年5月

ISBN-10:4774150827
ISBN-13: 978-4774150826
2919円(税込)

■中身が素晴らしいので、外見をdisる

 最初に言っておこう。本書は、PHPでWebアプリケーションを開発する人間にとって、とても大きな価値を持つ本である。

 今はただの「PHPer(ぺちぱー)」であっても、この本を読んで「Programmer」にステップアップする可能性は十分にある。だからこそ思う、もっと適切なタイトルがあったのではと。

■大事なのは「効率」ではなく「モダン」

 本書は、PHPによるWeb開発を仕事にしていて、なおかつ

  • MVCに沿ったクリーンなコード
  • フレームワークを活用した開発スタイル
  • オブジェクト指向の基本と応用
  • Gitによるバージョン管理

といったトピックを完ぺきに実践できていない「PHPer」のための本である。サブタイトルである「モダン開発」にも入門できるし、「プロの現場」で起きていることも体験できるし、「最新PHPプログラミング」の動向も知ることができる。

 だからこそ、だからこそ! 「効率的な」ではなく、サブタイトルの「モダン開発」の方を、強くアピールしてほしかった。

 いわゆる「PHPer」に必要なのは「効率」ではなく「モダンな開発スタイルの知識と実践」なのだから。

■ところで、ぺちぱーとは

 さっきから書いている「PHPer」という言葉は、PHPをメインに書いているプログラマのことである。類義語として、Rubyなら「Rubyist(ルビイスト)」、Pythonなら「Pythonista(パイソニスタ)」がある。

 しかし、「PHPer」にはやや侮蔑的なニュアンスが混じっているようにも思える。PHPばかりを好み、他のプログラミング言語やアーキテクチャ、モダンな開発スタイルに興味を持たないPHPプログラマを「PHPer」と呼んでいる場面が多い。

 私が最初に体験したWeb開発の現場でも、「クラスってよく分からないから使いたくないんだよね」というPHPerが、業界第3位(当時)のサービスの大部分を開発していた。ご想像のとおり、そびえ立つレガシーコードの山であった……。

 本書が書かれた真の目的は、この文脈での「PHPer」たちが、職業人としての「Programmer」にステップアップする手助けをするためであろう。

■PHPerよ立て、立てよPHPer

 本書は大きく「前半」と「後半」に分割できる。両者にはまったく違った価値があるので、別々に紹介していく。

●後半は「実践編」

 いきなり、後半から紹介する。後半はSymfonyというPHP製Webアプリケーションフレームワークを使い、実際に稼働するWebアプリケーションを開発する、という紙上ハンズオンになっている。フレームワーク上で開発をした経験がない人、それぞれの会社で使われている「オレオレフレームワーク」でしか開発していない人には有益なカリキュラムだ。プロの現場での開発、現場におけるフレームワークの使われ方を体験できる。

 特に「オレオレフレームワーク」上で生活している人は、ぜひ読むだけでなく手を動かしてみていただきたい。OSSとして世界中のユーザーに使われているフレームワークがどんな思想で作られ、どんな機能やポリシーを提供しているのか。「オレオレフレームワーク」しか知らない人には、貴重かつ重要な体験となるはずだ。

●前半は「理論編」

 対する前半は、理論に関する内容が中心。PHPerには不足しがちな「モダン開発」に必要な知識を紹介している。そしてこの「理論編」にこそ、著者からPHPerに向けられた強いメッセージが込められている。

 各章の見出しを見てみよう。

  • Part1 MVC開発の基礎知識
    • 1章 MVC開発の概要
    • 2章 オブジェクト指向
  • Part2 フレームワークを利用する利点
    • 3章 レガシーコードの欠点
    • 4章 リファクタリング・デザインパターン実践
    • 5章 フレームワークを活用する

 これだけの内容を、わずか100ページ弱に詰め込むなんて「無茶しやがって……」としか言えないのだが、典型的なPHPerでは、これらの概念に触れることすらないまま、仕事としてWebアプリケーションを作り続け、レガシーコードの山を高くし続けている事例が多く見られる。

 そんな状況を打破し、1人でも多くのPHPerを一人前に育てよう、という意気込み。これこそが著者からPHPerへのメッセージなのだ。

■「パーフェクト」の血筋

 本書の著者は小川雄大(@fivestr)氏。先日書評した『パーフェクトPHP』の著者の1人である。なるほど、「パーフェクトPHP」を読んで感じた「決意」のようなものが、本書からも感じ取れた。

 先日開催された「Symfony勉強会 #6」では、小川氏のセッションがあったようだ。スライドが公開されていたので、こちらも一読をお勧めしたい。本書が書かれた理由が語られている。ご自身の苦労や失敗、そして学びの経緯は、まさに「PHPer」が「Programmer」になる過程そのものだった。

■「PHPer」がdisられないために

 冒頭でちょっと触れた、「PHPer」という言葉のちょっとネガティブなニュアンスは、本書から学ぶことで打ち消していけるかもしれない。パーフェクトなPHPを書き、モダンな開発手法を身に付けた、disられないPHPerが増えることを願っている。

 そして、主に他のプログラミング言語を使っているプログラマ諸君にも、特に前半「理論編」は一読をお勧めしたい。ちゃんとできてるか? 大丈夫か?

『Wife Hacks ~仕事と家族とコミュニティと~』
コラムニスト kwappa)

Comment(0)