CakePHP2実践入門はCakePHPを実践的に使うための入門書だと思う

CakePHP2 実践入門 (WEB+DB PRESS plus)

CakePHP2 実践入門 (WEB+DB PRESS plus)


CakePHP2実践入門、やっと読了しました!発売前からいただいていたのに関わらず、
いろいろ予定が重なりまくって、休日は一切使えず、平日の夜に少しづつ読ませてもらいました!


というわけで、感想ですが、この「CakePHP2実践入門」、本当に「実践的」な「入門」と言えると思います
CakePHPを学ぶにあたって必携となるのではないでしょうか。


以下、だらだらと書きますが、「実践的」「入門」の2つの視点で感想を書きたいと思います。

さも当然かのように実践的

CakePHPをただ使うのであれば、本家のBlogチュートリアルでいいでしょう。
それ以上の機能を知りたい、使いたいだけなら本家のドキュメントは本当に網羅的です。


ただ、「実践的に」業務などでCakePHPを使うのであれば、もう1歩進んだ使い方が必要になることがあります。
そして、それをさも当然かのように「入門」として学べたら本当にいいですよね。


自分が所属している会社のPHPの主力フレームワークCakePHPです。
1.1から実際に業務に投入し、さらに現在は2.2系を既に使っています。

その資産は、単なるライブラリからTipsまで様々です。
そうすると、後から入社した人がCakePHPを覚える時の使いこなし具合も、試行錯誤していた昔と比べて段違いの向上度です。
こういう風に、近くにCakePHPを使いこなす人がいれば、「実践的に」CakePHPを学ぶことができるでしょう。
ただ、そういう環境でないときは特に、本書は本当に最適だと思います。


本書は、一からCakePHPを紹介しながら、ところどころ「さも当然のように」実践的なTipsを混ぜてきます。

本当に「さも当然かのように」です。これがミソです。

当然のごとく覚えたら、その後覚えなおすことはないですし、より良いコードが書けます。選択肢も自然と増えています。

第1章で書かれているように、フレームワークを使うとより良いコードが書けるとありますが、
「CakePHP2実践入門」でCakePHPを覚えた人がいたとしたら、さらに良いコードを書くのではないでしょうか?
デジタルネイティブ」という言葉がありますが、ああいったイメージです。


例えば、CakePHPを書き始めたばかりのときに、
ついつい勘違いしてしまうことに「1テーブルに1モデル/1コントローラなんだ」と思ってしまうことがあります。
CakePHPを簡単に使う上では定石なのですが、ちょっと規模が大きくなるとこの勘違いのまま進むとあとあと面倒なことになったりします。

こういったものにもp278のコラム「アクションごとにモデルを作る」でさりげなく解法の1つを紹介していたりします。
さらに言うと、このTips、CakePHPの勉強会で実際に発表され、その当時自分も含めた会場の参加者がいたく感心した実践的な方法だったりします。


自分はたまたま執筆した人たちを、わずかながら知っているのですが、その誰もが第一線でコードを触っている人たちばかりです。

  • 定常的に業務でCakePHPを触っている人
  • 他の言語、フレームワークを触りつつ、その良さをCakePHPに取り込む
  • どのようにCakePHPを教えると良いか」を実際に教えながら試行錯誤する人
  • ある特定の分野にものすごく強い

そういった意味でも、ものすごく実践的な部分を集約した内容だと断言できると思います。

網羅的に入門して、実践につなげる

CakePHPは本当に簡単に使えるフレームワークです。あまりに簡単すぎて、「CakePHPでWebアプリは書けるけどPHPでは書けない」という人がでてくるくらい簡単です。
ただそれは、大抵簡単なCRUDなWebアプリケーションを作るところまでだったりします。
それ以上を実践的に作っていくためには、CakePHPが持っている機能を網羅的に知っている必要があります。


じゃあ、どういった「網羅」かというと、機能の一覧だけでは足りません。
コアライブラリの簡単な使い方や、よく使うメソッドやプロパティの知識が欲しいところです。できれば注意点なんかも。
入門書だとすると、「一覧」だけあってもしょうがないので、
あわよくば本家のブログチュートリアルのちょっと先のチュートリアルっぽいものなんかがあるとうれしいです。


とまあ、簡単に書きましたが、ようは本書にはその全てがあります。
というよりも、実際に読んでみて「あー、確かにこういうのが最初からあったら知っていくのに楽だろうな」と思ったのですが(笑


あくまで書籍を買う側の意見ですが、
入門書は「初心者が導入しやすいようにいろいろ省いて」書かれがちですし省くことも重要なのですが、その「省く塩梅」というのが難しそうです。
ちなみに、自分はあまりに省かれていそうな入門書は買いません。なぜなら「1回しか役にたたない」からです。
そういった意味で「1回読んでだいたい使えるようになって、もう一度見返しても役立つ情報が得られる」のが理想です。
「言うはやすし」過ぎますが。
読んだ限り、「CakePHP2実践入門」は、入門してきた人を実践できる1歩手前まで引き上げてくれそう、実践しているときにも役だってくれそうです。


自分も一応CakePHPを実践していると自負している身ですが、個人的にすごくうれしかったものがあります。
それは各章の随所にある「一覧」です。メソッド一覧だったりプロパティ一覧だったり、ちょっと見ただけでも「知識として抜けているもの」が多くありました。
「知識として抜けている」と人に教えてもらわないと一生使わないですからね。
自分は既に入門は終えていますが、「CakePHP2実践入門」、実践的に使えます。

最後に

CakePHP入門者の方へ

主観ですが、CakePHPは8章以降に書かれていることを使えるようになると、とたんにコーティングが楽しくなると思います。
7章までで「Webアプリがうごく楽しみ」を知って、そうそうに8章以降を使いこなして「作り込む楽しみ」を知ってください。

お勧めの章

個人的にお勧めの章は、9章「CakeEmailクラスを使ったメール送信」と、13章「セキュリティ」です。
理由は「ここらへんをスラスラと人に説明できたらかっこよさそうだから」です。
綺麗にまとめられているので頭に叩き込みたいです。

本当に最後に

id:cakephper さんを通じて献本いただきありがとうございました。

今後の用途としては「チェックリスト代わり」「社内のボトムアップ用」として活用させてもらいます。

というわけで「CakePHP2実践入門」おすすめです!