質問: phpについて質問です。 独学で覚えて、ウェブサービスを作るようになりました。 ただ「汚い」ので、キレイに書く&管理する方法を学びたいと思っています。 まずは浅く広くで良いので、おすすめの本やURLをお教えください。 以下、具体的にどう汚いかをご説明します。 継ぎ足し継ぎ足しでサービスを拡充した結果、 いろんなファイルやデータが散らかっています。 ファイルや変数の名前の付け方もディレクトリもルールが無く曖昧。 無駄な処理が多くて、スピードアップできる余地も多々あるはず。 でも、お客さんは結構来て、儲けも取れそうですので そろそろ、きちんとした開発をしようと考えました。 こんな状態で「キレイに整えて下さい」とプロのエンジニアに投げると 絶対嫌がられると思うので、まず事前に自分なりに整理してみようと思いました。 ファイル・変数名のつけ方や、ディレクトリのルールや オブジェクト指向?(よく分かってません)的な構成とか 複数人でプログラムを管理するためのコメントの付け方とか、 プログラム全体の構成図の書き方とか、 まずは浅く広くで良いので学べるサイトや本があればお教えください!
回答: まず「キレイなコードとはどんなコードか」のイメージが必要でしょう。既に挙がっていますが、マーチン・ファウラーの『リファクタリング』は必携書です。リファクタリングとは何か、整頓されたコードとはどんなコードかという所から始まり、「コードが汚い」状態に気づくためのコツを教えてくれます。 オブジェクト指向の考え方の次は、クラス同士をどう関係させるとスッキリするかの経験。これはフレームワークをちょっと使ってみるのが手っ取り早いと思います。面倒ならばマニュアルだけ斜め読みしても相当得るものがあるとは思いますが。個人的には必要最小限の機能でまとまってるCodeIgniterが好きですが、正直どれでも大差ないと思います。 この道を究めたいなら『エンタープライズ アプリケーションアーキテクチャパターン』(PoEAA)が最強の一冊です。凄すぎて理解不能ですが。 開発規模が大きくなるとソースコード管理が必須になってくるので、TortoiseSVNをインストールした方がよいと思います。複数人開発ならばサーバーを用意して運用するのですが、ひとりならばサーバーではなくローカルのファイルを使ってバージョン管理をすることも可能です。