2008.04.26 Saturday23:58
文系素人ですがPHP勉強始めました。
実は三週間ほど前からPHPの勉強をはじめました。以前からこういうWEBサービスあったら便利だろうな、あーいうのあったら面白いだろうなぁ、あるいは咄嗟に思いついたものを形に出来たらいいなぁ、など思うことは多々あり、何度か勉強してみようとしたのですが、そのたびに挫折してきました。
しかし、インターネット歴10年を超えて、最近ブログに文章を書くだけでは物足りない。頭の中に次々と思いついては消えていく何かを形にしたいという欲求にもう耐えられなくなってきました。そこでとりあえずPHPを始めようと思い、色々調べて手ごろな入門書を購入、毎日がっつりと勉強しているところです。よくプログラミングの勉強はネットで検索して、と言われている訳ですが、僕はネットにつなぐとついつい遊んじゃうので、スタバやドトールにノートパソコン持ってネットから遮断した環境にして集中するようにしてます。そういう勉強スタイルなので手元に置いて色々参照できる参考書が重要です。

独習PHP
山田 祥寛
まずは手ごろな入門書をと思い、「全ての文系ブロガーはPHPをやるべき - phaのニート日記」の記事とamazonの書評などを参考に、これが良さそうだなぁと思って購入。「第一章イントロダクション」、「第二章基本構文」、「第三章オブジェクト指向構文」、「第四章関数」、「第五章データベース連携」と、「第七章テンプレートエンジンSmarty」の修飾子まで一通り目を通して、「第六章PHPで利用可能なライブラリ」は紹介されているPEARを一通りインストールしたところです。説明がとてもわかりやすくて、練習問題が豊富なので基本的な事柄がよくわかりました。

PHPによるWebアプリケーションスーパーサンプル 第2版
西沢 直木
「独習PHP」をやっていて、基本的な考え方や命令、関数などはどういうものがあるかわかったけど、それらがどう具体的に使われているかを知りたいと思いました。色々なソースコードに当たっていかないと実際どうしていくかがイマイチ把握出来ないなぁと言う感覚を覚えたので、サンプル集が一冊欲しいと思い購入。chapter1〜chapter16まで、基本構文、フォーム、変数/定数、文字列など一通り網羅されていて、具体的なイメージが大分つかめました。

Pocket詳解 PHP辞典 (Pocket詳解)
山田 祥寛
「PHPによるWebアプリケーションスーパーサンプル第二版」は充実のサンプル集ですが、サンプル集だけに「独習PHP」ほど丁寧な解説がある訳ではないので、やはりリファレンスが欲しいところと思い、これを購入。「独習PHP」と同じ著者でとても見やすいです。買ってそんなに日数経ってないですが、しょっちゅうこれを引いています。
と、ここまでやってみて自分で作りたいものをいくつか形にしようとコードを書き始めた訳なんですが、何かしら途中で行き詰ってしまうんですよね。何がわからないのかわからないけど、思うように動いてくれない、あるいはやりたいことと、ここまで目を通した様々な命令や関数などがどうつなげればいいのかわからない、と思うようになりました。

ノン・プログラマのためのPHP入門 10日間コース
アシアル株式会社,海原 才人,笹亀 弘
そこで、実際に一から完成物を作る過程を体験出来るテキストが無いだろうか、と思って買ったのがこれ。00章PHPを始める前のインストールから始まって10章まで10日でアンケートフォームを作り上げながらPHPを学ぶというもの。昨日第二章まで終えたところですが、すごくいい。特に丁度先日終えた第二章が「PHPでWebアプリケーション作成時の注意事項と確認手順」ということで、まずは素数を求めるスクリプトのアルゴリズムやボーリング自動特定計算プログラムのアルゴリズムを考え、それを元にコードを書くといった仕様、アルゴリズム、画面遷移などコードを書く前段階についてわざわざ一章割いていて、ここを一通りやりおえたら、今まで勉強したことが少し道筋だってきた感じがしました。ただ、この本、入門とは書いていますが、10日でと銘打っている様にかなりはしょっているので、一通りの基礎知識が無いと相当苦しい気がします。最初がこれだったら多分挫折していたかも。
ということで、この本の第二章を読むまでは「漠然とした作りたいもの」と「言語」とを繋ぐことが上手く出来なかったのですが、今日になってそれが繋がってきた感じで、行き詰っていたのが案外サクサクっと出来るようになったのでおお!っというプチ喜びを感じているところ。でも、また行き詰ったんですけど(笑)
他、買った本
![基礎からのMySQL [基礎からのシリーズ] (プログラマの種シリーズ)](http://ecx.images-amazon.com/images/I/31RoYxVBGGL._SL160_.jpg)
基礎からのMySQL [基礎からのシリーズ] (プログラマの種シリーズ)
西沢 夢路

PHPによるWebアプリケーションスーパーサンプル 活用編
KJ,田中 ナルミ
このようにテキストにそこそこお金を使い、一通り勉強してみて思ったことについて。確かに一般的に言われている通りググれば色々勉強出来るのですが、全くの素人はググれない、というか、何をググればいいのかわからないんですよね。
初心者による初心者のためのプログラム勉強法 : ロケスタ社長日記
「何がダメだったの?」と聞くと「足し算やループばっかりでこれがどう使えるかがさっぱりイメージがわかなくてつらい」とのことでした。
これ、僕もよくわかります。というかその真っ只中です(笑)
ですので、
1)最低限抑えておくべき重要な命令や関数などを全般的に知ること
2)サンプルなど、辞書やネットなどを使って調べて具体例を把握。
3)その上で、漠然と思っている作りたいモノをどう実際のコードに落とし込むかという方法
という流れで知りたいし、知ると結構身につくんじゃないかなぁと、ここ三週間ほど勉強してみて思いました。まぁ、こんなに本買う必要は無かったかもしれなくて、何か良いネットを活用する方法が一般的には知られていて、実は効率的に勉強進められたのかも?なんて思うんですけど(笑)
また、勉強始めてみて実感したのは、プログラミング出来る人たちは文系な我々とは見えている世界違うんだねぇ、ということですね。みなさんもしかして違う世界観で生きてるんでしょうか。
ということで、今後、「独習PHP」でPEARと「基礎からのMySQL」でMySQLの勉強を始めつつ、「ノン・プログラマのためのPHP入門」を先に進めたいです。で、今三つぐらい同時進行で作っているのですが、それをなんとか完成させたいと思います。そこに至るまでにはまだまだ大きな障害が沢山ありそう。あと作りたいなぁというネタはくだらないふとした思いつきなものばかりですが20個ぐらいある感じ。やってみると結構楽しいのでいまのところは挫折したくはないなぁと思います。
って、まぁ、このブログを見ていただいている方には、「突然お前はどこに行くんだ」的内容なんですが、すいません、僕はよく思いもしない明後日の方向に行くので温い目で見てもらえると助かります。(笑)
関連エントリー
・Kousyoublog | PHPの勉強、最初の関門は「演算子」でした
・Kousyoublog | PHP入門書「独習PHP」のPEARインストールについて
・Kousyoublog | PHPとHTMLの組み合わせが難しい














