今年1月から企画が始まり、いくつかのハードルを超えながら執筆したCakePHPの本が、いよいよ刊行できる運びとなりました!
前回執筆の「PHPで作る携帯サイト デベロッパーズガイド」は、どちらかというとCakePHPの解説というよりはCakePHPを用いたサイト開発手法をメインに書かせていただきましたが、今回は純粋にCakePHPの内部を徹底的に解説した、「CakePHPを使いこなすため」のリファレンスマニュアル本として書かせていただきました。
|
【書名】 Pocket詳解CakePHP辞典【出版社名】 秀和システム【著者名】 滝下 真玄 【価格】 【ページ数】 【ISBN】 【発売日】 |
前書では600ページ弱もの大作を書いてしまい「もう厚いのは辛いのでやめよう」と思っていましたし、出版社の担当様も相当苦労されていたので、企画時にも「辞書にするのはやめましょうね!」という紳士協定(?)で始めました。しかし、いざ書いているうちにページ数はどんどん増え、気がついてみれば本のみで自立してしまう厚さに(汗)。「Pocket詳解」シリーズに加えていただける事になったのはそれから後の話なのですが、文字通りの辞典になってしまいました(笑)。
この厚さになってしまった最大の理由は「向こう3年間はいつも手元に置いていただける本」というコンセプトがあったためです。CakePHPの関連書籍は幸いな事に他のフレームワーク本と比べてかなりの数があるのですが、ほとんどが初級者向けの本であり、実用的な情報がメインとは言えない状況です。またリファレンス本は1冊存在していますが、1.1~1.2ベータ版だった頃に書かれていた本のため大変に情報が古く、またページ数も抑えられていて主要なものの一部しか解説されていないため、かゆいところに手が届かない感じです。つまり開発現場などで要求に応えられるような本が無い状況であり、この辺を何とかしたいなと思っていました。
私自身も日頃開発をしていく上で「あれっ、あのメソッド何だっけ?」とソースコードを調べ、引数やオプション値を調べて実装する事が多いのですが、この手順が大変に時間を使っていたりしまして、本を開くだけでこれらの値の意味がすぐに分かるような本を熱望していました。Cake本に限らず、ネットの情報、ましてやCookbookやAPIでもオプション値については十分な情報が載っていないため、いつも結局行き着くところはソースコードになってしまうのです。なので「とりあえず全ての引数やオプションの意味が分かるような本があれば便利だよな」と日頃思っていました。
こんな事情もあったため、まず第一にやりたかった事は「オプション値の全てが分かる」事でした。「オプション値を連想配列で渡す」というのがCake流だと思いますが、その肝心のオプションについてよく分からない…そんな事もあるかと思います。一応ソースコード内に記載されているドキュメントでも若干分かるのですが、間違いも多くかなり不正確のため、本書では執筆時に一度ソースを解析してから列挙をしました。
それから「今まであまり知られていない便利な機能の発掘」です。例えばその代表例が「Setクラス」「ClassRegistryクラス」ではないでしょうか。知らない、便利そうなんだけどよく分からないので使わない…みたいになっていませんか? 何を隠そう自分もその一人です(笑)。それだけではありません。日頃モデル・コントローラあるいはコンポーネント・ヘルパー等を作成する際に親クラスでextendsしていると思いますが、その親クラスに有用なメソッドが存在している事をご存じでしょうか。単純にextendsしているだけの方が多いのではないでしょうか? 本書ではその部分についてももれなく解説し、より便利にCakeを使ってもらいたいと考えています。
そして忘れてはならないのが「新機能の解説・従来との比較」です。もちろん本書は「1.2/1.3両対応」です! 紙面の都合上全てを十分に行う事はできませんでしたが、例えば今まで暗闇に閉ざされていた「Jsヘルパー」や「(新)prefixルーティング」「カスタムルーティング」についても理解していただけるかと思います。また、両バージョンそれぞれ固有の指定方法についてもカバーされていますので、1.3へのアップグレードにも役立つかと思います。
紙面の都合上どうしても掲載できなかった情報はやはりあります。
例えばページ数の節約のためにサンプルソースコードはかなり削ってしまいました。このため最初のとっかかりとして買う1冊としてはふさわしくないかもしれません(最低限の記述方法は各章冒頭に一応載っています)。この辺はむしろ初級者向けの本の役割ですので、本書と両方購入していただき、初級本を勉強していく上で分からない引数やオプション値について本書でひいていただくような使い方がベストだと思います。英語の学習に、英語教本と一緒に英和辞典を買うように、本書は辞書として購入していただけると間違いないです。
他にも上級者向けの機能(例えばDataSource等)、使用頻度がかなり低そうな機能などについても割愛させていただきました。この辺については別の機会・形で実現できればよいと思いますが。
限られた中でギリギリまで情報を詰め込んだ価値のある1冊になったと思います。Cakeの内側についてここまで解説した本はおそらく今までなく、「世界一CakePHPのことが分かる本!」と自負しています(笑)。カバーの色も大変わかりやすいと思いますので、店頭で見かけましたら是非手にとっていただき、そしてそのままレジに直行していただけますと幸いです(笑)。
※09/21時点ではまだAmazon等で予約等はできないのですが、発売情報については後日追記させていただきます
【追記】(2010/09/23)
Amazonに書籍が掲載されました。
下記よりお求めが可能です(是非このページからお願いします(^^;)
【追記2】(2010/09/25)
見本誌が届きましたので写真を何枚か掲載します。



情報を待っていたのですが、こんなに早い発売とは。
絶対に買います!
ありがとうございます!
是非よろしくお願いします。
買わせて頂きます。
が、欲を言えば できれば発売日は木曜日か金曜日にして欲しかったです^^;
その方が土日に家で見ながら勉強して、月曜日から実践?できるので・・・^^;;
ところで。 一度テクニカルライターさんに聞きたかったのですが、これくらいの厚み?の本書くのって、何日(何時間)くらいかかるのでしょうか? またOSSって日進月歩なんでいつの時点のものを載せるか?というので凄く悩まれると思うんですが、判断はどのようにされているのでしょうか。
また苦労話とかあれば、おいおい時間あるときにブログに書いてもらえると勉強の合間の一服になります^^;
頑張って下さいね。
ありがとうございます!
私は本職のライターではないのでPPPさんの疑問にお答えできるかは分かりませんが、本業の仕事をやりながらの執筆だったのと、今回はCakeの安定版になってから短期間で合計4バージョン上がってしまいチェックなどで相当時間を取られました。本来は1.3.0リリースと合わせたタイミングで、5~6月くらいに出したかったのですが、こんな時期になってしまいました。まあその間に仕様の変わったところもあるので、結果としては良いものを残せたと思います。
おめでとうございます!
twitterで、色々執筆の段階は知っていたのですが、こんなに、早く出版されるとは。
刊行記念に、京都はどうですか?
ではでは
ありがとうございます!
京都とか旅行したいのは山々なのですが、今取り組んでいる仕事の方がとても忙しいので、当分旅行などは後回しになりそうです(^^;
It’s really cool BooK I want it too
I never see befor.
Thank you! I wish it will be popularized to the world. 😀
Hi.Man I have saw in your blog big book for Cake.
If is England version that book give me website where I can find it.
Thank you in any case.
Thanks!
I wish the book translated to English will be released, too.