mmochiです。
今更感もあるわけですが、あんどぷらすのPHP開発をより厳格にPSR-1/PSR-2 standards 準拠していこうと。
というのも、これまで開発は私一人で行ってきたのですがさすがにいつまでもそんなわけにもいかず、「開発スタッフを育てる」もしくは「開発スタッフを雇用する」必要に迫られています。
私一人で開発する際には私がPSR-1/PSR-2 standards 準拠に気をつけてコーディングすれば良かったわけですが、スタッフが増えるとそのばらつきも懸念せざるを得ない状況になります。
本来、コーディングルールへの準拠は開発の本質とはかけ離れていると考えます。
コードの整形に時間を割くのは本末転倒であるということです。
そのため、コードの整形は極力ツールに任せようという方針のもと、開発ツールの統一化、整形ツールの統一を進めていこうと思っています。
成果物の品質担保、メンテナンス性向上につながることを期待します。
#概要(とあるところからの抜粋翻訳)
- PSR-1に準拠。
- インデントには4つのスペースを使用し、タブは使用不可。
- 行の長さに対してのハードリミットはNG。ソフトリミットは120文字を上限とし、実際は80文字以内に抑えるべき。
- 名前空間定義のあとには空行が必須。use定義ブロックのあとにも空行必須。
- クラスの開き括弧は次の行に記述。閉じ括弧は本文最後の次の行に記述。
- メソッドの開き括弧は次の行に記述。閉じ括弧は本文最後の次の行に記述。
- アクセス修飾子は、全てのプロパティ、メソッドに定義。abstractとfinalはアクセス修飾子の前に定義、staticはアクセス修飾子の後に定義。
- 制御構造の開始時は、その後に1スペースを開ける。メソッドや関数の呼び出しはスペースを開けない。
- 制御構造の開き括弧は同じ行に記述。閉じ括弧は本文最後の次の行に記述。
- 制御構造の開始前のスペースはNG。閉じる際もその前のスペースはNG。
PHPのコーディング規則だけでなく、HTML、CSSのコーディングルール、各種命名規則も明確にしていこうと思っています。