-
Notifications
You must be signed in to change notification settings - Fork 0
コーディング規約
mutotaka0426 edited this page Jul 3, 2021
·
9 revisions
プルリクエストを出す時とレビューをする時は,以下の項目を満たしていることを確認する.
- コンパイルは通っているか
- テストは通っているか
- プルリクエストはチケットと対応しているか(タイトルの先頭が「closed #[チケット番号]」となっているか)
- ファイルにドキュメントコメントを記述しているか(ファイル名,簡潔な説明,作成者を含むこと)
- ヘッダファイルの各関数に,ドキュメントコメントを記述しているか
- ヘッダファイル名は,「クラス名.h」になっているか
- ソースファイル名は,「クラス名.cpp」になっているか
- ヘッダファイルにインクルードガードを記述しているか(重複しないマクロ名になっているか)
- ソースファイルは,同クラスのヘッダファイルのみをインクルードしているか
- クラス名のスペルは正確か
- クラス名はアッパーキャメルケースになっているか(例:ClassName)
- クラス名は名詞になっているか
- メンバー変数のすべてがコンストラクタで初期化されているか
- メンバー変数の数は適切か(5個以下が望ましい)
- メンバ関数の数は適切か(1つのクラスに多くの機能を持たせていないか)
- publicを上側に,privateを下側に記述しているか
- publicとprivateのメンバーはそれぞれ,変数→コンストラクタ→関数の順に記述しているか
- 関数名のスペルは正確か
- 関数名はローワーキャメルケースになっているか(例:methodName)
- 関数名は動詞+名詞(名詞は省略可)の形になっているか(例:moveStraight,turn)
- 関数の行数は適切か(40行以内が望ましい)
- 構造体およびクラスを引数に取る関数は,参照型で受け取っているか
- コメントは,適切な箇所に記述されているか(意図が伝わらない処理はないか)
- ループする時は,10mm秒
sleep()
を挟んでいるか
- 変数名のスペルは正確か
- 変数名は,ローワーキャメルケースになっているか(例:variableName)
- 定数名のスペルは正確か
- 定数名は,アッパースネークケースになっているか(例:CONSTANT_NAME)
- 各public関数に対応したテストコードはあるか
- テストコードは適切な数あるか(カバレッジ80%以上が望ましい)
- テスト関数名は,(テスト対象の関数名)+Testになっているか(例:addTest)