PHPで仕事をするときの注意
メモ。いま仕事でPHPを書くことはないけれど、そのうち役に立つだろう。たぶん。
- コーディング規約を守る。組織にコーディング規約がないなら、Zend Framework PHP標準コーディング規約を使う。オレ流コーディングスタイルは禁止。
- 内部コードにはEUC-JPかUTF-8を使う。入出力もできるだけShift JISを避ける。Shift JISを使う場合には2byte目に0x5Cを含む文字の動作を忘れずに確認する。
- 開発環境の警告レベルをE_STRICTにする。本番環境ではdisplay_errorsをオフにする。
- register_globals、magic_quotesはオフにする。
- type hintingを積極的に使う。
- スコープの長い配列をクラスでラップする。
- プレゼンテーションとロジックを分割すること。プレゼンテーションには変数または関数の出力とループ以外のロジックを残さないこと。ロジックの中で直接出力をしないこと。ロジックはSimpleTestを使って単体テストすること。
- SQL文に変数を埋め込むときにはプレースホルダを使う(PDOのprepareとbindParams)。
- リクエストから取得したパラメータを出力するときはhtmlspecialcharsを使う。
- 関数が長くなったら分割する(composite methodパターンを使おう)。
- グローバル変数を使うのは避ける。
- 変数を定数として使わない。定数はdefineで定義するか、const宣言する。
- 常に最新バージョンでテストできる環境を作り、サービスイン後もバージョンアップに対応するための予算をとっておく(サービスイン後にお金をかけたくないなら、PHPは避けるべき)。
- 継承を使うなら、クラス図くらいは書いておく(単にコードを再利用したいだけなら、移譲を検討すること)。
- 各URLにおけるパラメータとその閾値を文書化すること。パラメータの閾値の境界線についてソースレビューし、テストすること。
- 既存のフレームワークを学習することに投資すること(学習コストを嫌って自己流のフレームワークを作ることは、バグを作りこむことになるのでかえってコスト高になる)。
- PHPしか使えない作業者の成果物はこまめにレビューすること。
- 設計を重視すること。
- コピー&ペーストプログラミングの匂いを発見したら、そのコードを書いた人にプログラミングの基礎を教えること。
- リファクタリングの時間をスケジュールに入れること。
- require/includeを条件文や関数宣言の中に記述しないこと。
引用元は下記。
posted by nac | permalink | comments (0) | trackbacks (0)








コメント