コードベースの品質を向上させるために、継続的インテグレーション サーバーにPHP CodeSnifferをセットアップするというアイデアに手を出しています。ドキュメントを読んだ後、コーディング標準を標準化して強制するというアイデアに非常に興奮しています。しかし、私たちの製品の実際の改善については疑問に思っています. スニファーが定義されたコーディング標準への違反のみを検出することはよく知っていますが、クリーンで一貫性のあるコードベースにはどのような利点がありますか? PEAR 標準に準拠するために 10 万行以上のコードを含むプロジェクトをリファクタリングするのに余分な作業をする価値はありますか?
PHP CodeSniffer や code-smell に慣れていない方のために、出力例を次に示します。
ファイル: /path/to/code/myfile.php
FOUND 5 ERROR(S) AFFECTING 2 LINE(S)
--
2 | エラー | ファイル ドキュメント コメントがありません
20 | エラー | PHP キーワードは小文字にする必要があります。"false" と予想されていましたが、"FALSE" が見つかりました
47 | エラー | 行が正しくインデントされていません。4 つのスペースが必要でしたが、1
51 |見つかりました。エラー | 関数ドキュメントのコメントがありません
88 | エラー | 行が正しくインデントされていません。9 個のスペースが必要でしたが、6 個見つかりました
厳密に言えば、ユーザー/クライアントは、標準に準拠するようにリファクタリングされた製品の違いに気付かないでしょうが、他に隠れた利点があるかどうか疑問に思っています
現在、私たちのコードは決してずさんではなく、Pear's Coding Standardsから派生した独自の基準に従うように努めていますが、訓練された目で違いを見つけることができます。
だから私の質問は、それらが製品の品質をどれだけ改善するかということです. それによってどのような潜在的な利益が生じましたか?
製品を一連の基準に近づけたいという欲求に、強迫観念を抱いているだけですか? それは価値があるでしょうか?もしそうなら、コードスニファーを実装し、検出されたその後の違反を修正するためにどのような戦略を使用しましたか?