PHPでAPIを扱いたい初心者にオススメ「たのしいPHP入門」レビュー

PHP初心者の2冊目にオススメしたい入門書です。

ウェブDIYで行こう! たのしいPHP入門

この書籍は、非常によく考えられて書かれた本です。

こういう解説書を著述をするとき、最も難しいのが読者の学びたいことと、教える内容にギャップがあるときです。「楽天アフィリって簡単にできないっすかぁ〜?」「出来るかっ!」・・・など覚えて欲しいことと、教わりたい側の実力にギャップがあること、ありますよね。

この書籍は、興味をそそるような作例で読者を惹き付けつつ、最低限に厳選した基本を丁寧に解説しています。そして、難易度を少しづつ丁寧に上げていき、最後にはSQLや楽天APIまで使えるようになってしまいます。うまく読者を導いているなぁと感心します。

「たのしいPHP入門」の目次

第1章 PHPとは何か 〜10P
第2章 開発ツールを揃えよう 〜26P
第3章 動きのあるページを作る 〜72
第4章 データをサーバーに保存する 〜136P
第5章 データベースを使って楽をする 〜172P
第6章 ゲームからマッシュアップまで 〜201P
更に学ぶために、クィックリファレンス等 〜208P
索引 〜214P

全体の章立てだけで本章を判断すると、本質を見誤ることがわかります。本書の真骨頂は3章以降のわかりやすい作例、そのコード中にもふんだんにコメントアウトがあり、とてもわかりやすく書かれています。

ですから、一番最初に書くコードもHelloWorld!ではありません。

<?PHP
echo rand(1,6);
?>

これほどまでに読者を喜ばせてくれるコードは無いでしょう。実行しロードする度に実行結果がかわります。

3章ではローカルで動く動きのあるページ作りやPHPの基本を解説しています。いわゆる基本書式や変数、配列、ループ、条件分岐など。そしてimgタグとの併用など実践的な作例も魅力です。

例えばこの章だけを見ても、この書籍の魅力が豊富な作例と、そのレベルの上げ方の丁寧さ、がわかります。そして4章以降、サーバーへのデータ保存>SQL>マッシュアップへ。それぞれの章でこのような実用的なサンプルと丁寧なレベル上げで、読者の向学心を刺激し続けていきます。

●3章 動きのあるページを作る
Project01 サイコロを作ろう
 基礎講座01 「キ」は基本のキ
Project02 訪問するたびに変わるメッセージボード
Project03 インチ→センチメートル変換器
Project04 関西弁ジェネレータ
 基礎講座02 文字コードの話
Project05 記念日まであと何日?

●4章 データをサーバーに保存する
Project06 訪問カウンター
 基礎講座03 プログラムの岐路とどうどう廻り
 基礎講座04 プログラムの巣わかれ
Project07 一行チャット
Project08 三者択一アンケート
Project09 掲示板システム
Project10 フォトアルバム
 ミニ知識01 Cookieでフォームの値を記憶する
 ミニ知識02 正規表現

●5章 データベースを使って楽をする
 基礎講座05 データベースとは?
 ミニ知識03 XAMPPでMySQL/SQLiteを使うには
 基礎講座06 オブジェクト指向早わかり
Project11 TODO管理ツール
 ミニ知識04 もっとSQL
Project12 TODO管理ツール別館−SQL文の高速化
Project13 郵便番号から住所を調べる(データベース作成編)
Project14 郵便番号から住所を調べる(検索編)

●6章 ゲームからマッシュアップまで
Project15 宝探しゲーム
 ミニ知識05 電子メールを送信するには
Project16 天気予報つきカレンダー
Project17 楽天ウェブサービスでアフィリエイト生活

●クイックリファレンス

一方でわかりにくいという意見もあるようですが

Amazonのレビューでは「わかりにくい」という声が見られます。しかし、よくみるとそれらは、極端に悪い人に引きづられる形で低めの評価なので大丈夫です。

ただたしかに、最初の配列や変数、書式など、いわゆるPHPの基本書籍では「イケナイ表記」「こういう標記もいいよ」「例えばこんな感じ」「例文1〜10」と、知識を広げ深めていく章や節がよく見られますが、本書ではそういった説明は省かれています。

しかし、私はforeach()をわかりやすいレベルで説明してくれている書籍を初めて見ました。このforeachはAPIを使うときに必ず目にする構文ですが、他の基本書籍ではなぜかあまり扱われないものです。それ以外にも、simplexml_load_filefile_get_contentsなど、非常に実用的なものを丁寧に解説してくれています。

他の書籍でこれらをこのわかりやすいレベルで解説したものは無いのです。それを「単にわかりにくい」と書くことは、ちょっと趣旨と違うのではないかと思うのです。ただ、たしかにゼロからの入門者にはハードルが高い、ということもあるかと思いますので、あえて私は2冊目に、と書いたわけです。最初に一冊には以前紹介したこちらがおすすめです。

みるみるPHPがわかる本

著者:クジラ飛行机さんとは

ソフト企画 くじらはんど
New Generation Chronicle:クジラ飛行机——「なでしこ」に込められた鷹の勇気と蛇の知恵 (1/6) – ITmedia エンタープライズ

クジラ飛行机さんは酒徳さんという方で、IPAのスーパークリエイターにも認定されるほどの実力者です。日本語プログラミング言語「なでしこ」をリリースするなど、プログラミングの楽しさを伝えることにご尽力されています。

私自身、教鞭をとっていますが、教える側にとって、教わる方のモチベーションをいかに維持するかを痛感します。そのためには、サンプルは動きのあるもので興味を持たれやすいもの、かつ、基本がマスターできるものという高いハードルを要求されます。

そういう点では著者が、このサンプルや構成、内容に、「厳選」をしたという思いを感じずにはいられません。本著のサンプルをとにかく実践して、「覚えるより慣れろ」を実践していただければ、仕組みを理解し、そしてプログラミングを楽しめる土壌が出来るのだと思います。

副題は「ウェブDIYで行こう!」なのは、きっとそういうことだと思うんですね。まずは楽しんでやろう、みたいな。

誰にオススメか

・入門書の次に何を読んだらいいか、という方。
・中学校、高校の情報の先生が教科書として。

XAMPPのインストールや基本書式なども盛り込まれていますが、後半のSQLやAPIの内容になりますと、かなり行が詰まって書かれていたり、インスタンス、セッション管理など、実装に重要な専門用語や概念理解も増えてきます。さすがに、全くの初心者にこれらを学んでもらうことは難しいかもしれません。しかし、聞ける人がすぐそばに居たり、入門を一通り理解した人がチャレンジとして臨むには、最適のハードルではないでしょうか。

そして、この書籍でPHPやAPIの楽しさをわかってもらえたならば、ぜひマッシュアップに挑戦しましょう。こんなコンテストもあります。世の中にあるいろいろなAPIを使ったWebサービスのコンテストです。読了後は実践あるのみ!がんばりましょう。

Mashup Awards 7 (#MA7)

何と言っても豊富なサンプルと、魅力的な実装が出来ることが本書の魅力です。ぜひ、多くのPHP学習者の方に読んで欲しいと思いました。
 

ウェブDIYで行こう! たのしいPHP入門
クジラ飛行机
インプレスジャパン
売り上げランキング: 324528