- コード中のコメント・ドキュメントコメント(
///)・コミットメッセージなど、文章はすべて日本語で記載する。 - 識別子(クラス名・メソッド名・変数名など)は既存コードに合わせて英語で命名する。
- 日本語のメソッド名(テストの
Fact名など)は既存の慣習に従ってよい(例:ドメインは外側の層を知らない)。
- 1 クラスは 300 行以内を推奨する。 ただし、収めるのが困難な場合は 300 行を超えてもよい。 責務が肥大化している兆候であれば分割を検討するが、無理に分割して可読性を落とさない。
- 1 メソッドは 30 行以内を推奨する。 ただし、収めるのが困難な場合は 30 行を超えてもよい。
- Nullable 参照型は有効(
Nullable=enable)。null 許容の意図を型で明示する。 - 層の依存方向を破らない(内側の層から外側の層の型を参照しない)。迷ったら architecture.md のアーキテクチャ表を確認する。
- エンティティ(
ConnectionProfile・DatabaseUserDefinitionなど)は常に妥当な状態であることを前提とする。 編集中の値はConnectionDraft・DatabaseUserDraftのような Draft 型で保持し、 検証を通してからエンティティへ変換する。
テスト方針は testing.md を参照。