今日は、先月買って勉強した書籍、『気づけばプロ並みPHP~ショッピングカート作りにチャレンジ! 』谷藤賢一 (著)についてのレビュー・感想を書きたいと思います。
本を買った経緯
yossyは最近はこのブログのカスタマイズに時々WordPressを触るようになってはいたものの、WordPressの関数を使う事がほとんどで、プログラミング言語のPHPを直で触る機会がなくて、PHPをどんどん忘れてしまっていたわけでして。
そんな状況だったので、復習がてら久しぶりにPHPを触ってみようかなぁと思い立って購入したのが、この書籍『気づけばプロ並みPHP~ショッピングカート作りにチャレンジ! 』谷藤賢一 (著)でした。
Amazonをネットサーフィンしてたら、見つけました。
AmazonのWEB無料立ち読みでページを見る感じ、内容的に初心者すぎず上級者すぎない感じで、PHPの基本操作をちょっと復習したい今の自分にとってちょうど良い感じの本だなぁと思って購入する事にしました。Amazonでポチっとな。
本の内容・感想
やはりプログラミングの書籍なので、他の専門書と比べても一番頭使うので、実際に本を読み進めながらプログラムを書いていくのは、結構骨が折れたし疲れたけど、なんとか読破できましたよ(^_^.)
本のメインテーマとして『簡易な会員制のショッピングカートを制作しよう』というのがまずあって、それを実現するために本の各章ごとでショッピングカートの各機能を実装していき、最終的にそれらが1つのショッピングカートを作り上げていくという構成です。
もちろん、ショッピングカートなので、PHPだけでなくてMySQLのデータベースを使うし、システム自体はローカル環境で動かすので、XAMPPのインストール&初期セットアップを最初にやる必要はありましたけども。
実際、内容的にはかなり良くまとまっていて、PHPの復習にちょうど良い感じでした。
以下、yossy的にこの本の良かったと思う点を挙げたいと思います。
プログラミングで作る機能が実務に即している
本のテーマがショッピングカートシステムを作るというものだけあって、当然、ショッピングカートで必要になってくる機能をプログラミングする事になるんですね。
例えば、管理者が管理画面にログインできるようにするユーザ認証機能、商品を管理画面から追加・削除・修正するデータベースの基本操作、ユーザがショッピングカートで商品を購入する際にページ遷移でデータを保持するためのセッション関数の使い方・配列の使い方、ユーザが商品購入時にフォームメール送信機能の実装など、ショッピングカートシステムでなくても、いろいろな場面で使う可能性のある機能なので、応用性が高くてかなり実務に即していると思いました。
実務に即しているということは、無駄がないとも言えるんじゃないでしょうか。
この書籍のようにしっかりしたメインテーマがないプログラム解説書だと、一体全体この機能はこの解説本以外で使い用途はあるのか疑問だったりしますし、そんな実務に使えそうにない機能のプログラミングだと、自分自身のモチベーションも急低下してしまったりしがちだったりするわけです。
その点、この本はメインテーマがあった上で、そのテーマを実現するための各機能の実装、最終的に一つの大きなシステムを作り上げていくという流れなので、全てのプログラミングが実務に即していたので、効率よくモチベーション高く勉強できました。
プログラミングの解説が親切・丁寧
著者のプログラミングの解説がとても親切で分かりやすい印象ですね。
ここのプログラムの書き方はどういう意味なのかなというところに、必ず解説があるので、個人的には躓いたところはゼロでした。
解説の仕方が初心者でも分かりやすいような解説というか。池上あきらさん的な(笑)。
本を読破した後に巻末プロフィールを見たら、著者の谷藤さんは、2008年から株式会社C60を創業して、プログラム未経験者の方に日々プログラムのレッスン・授業を日々行って、IT企業への就職を支援する活動をされているお方なので、プログラミング初心者や未経験者の人にどうやって教えたらいいかというノウハウを既に持っている方が書いた本だから、解説が分かりやすくて・親切なんだなぁと後で思いました。
たまに別のプログラム書籍とかで、ここは肝だろうっていうプログラムの解説を省略してしまっていたり、超難解な表現を使っていたりするのを読むと、「あなたは知っているかもしれないけど、こっちは知らないんだから、その前提で書いて下さいよー」って思ったりしますけど、この本ではそういった事は皆無でしたね。ユーザーファーストならぬリーダーファーストって感じですね。
セキュリティに配慮したプログラミングが習得できる
ただプログラミングで動けばいい的なプログラミングではなくて、セキュリティに配慮したプログラミングを習得できます。
メインテーマがショッピングカートシステムなので、サイト管理者やサイト利用者が安全に使える必要が前提なわけです。
例えば、データベースが何らかの障害でデータベースへの書き込みができない場合を考慮して、try~catch文で例外処理できるようにしたり。同時書込みでデータベースのデータが破損しないようにデータベースにロックをかけたり。
ユーザのパスワードはMD5関数で暗号化したり。フォーム入力時に悪意あるユーザのシステムへの攻撃(クロスサイトスクリプティング)を防止するために、サニタイジングという処理を施したり、などなど。。
セキュリティに配慮したプログラミングの作法は実務でも使える部分が多いと思いますね。
まとめ
『気づけばプロ並みPHP~ショッピングカート作りにチャレンジ! 』谷藤賢一 (著)はプログラミング言語PHPを学ぶのに、とても分かりやすい解説書だと思います。この1冊読破すれば、PHP & MySQLで簡易な会員制のショッピングカートシステムを自力で作れるようになります。
初心者すぎず上級者すぎない内容なので、PHPの基本を身に付けた人が更なるレベルアップするのに最適なPHP解説書だと思いますよ。yossyにとっても良い復習になりました。
ただPHPの全くの初心者の人にはちょっと難しいので、PHP初心者の人には、この書籍の著者の谷藤さんの別書籍の『いきなりはじめるPHP~ワクワク・ドキドキの入門教室~』がおすすめ本ですね。