Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

悪い習慣1 コードの可読性・拡張性を考慮してコーディングしていない
悪い習慣2  過去のバグを防止するためのコーディングルールを用意し、開発者にルール遵守を徹底させていない

を防止するために、バグ作り込みの防止や、ソースファイルの可読性向上を目的とした「コーディング規約」が存在します。
その中でも、ソフトウェア開発現場で利用されている「コーディング規約」で解析を行ってみましょう。

...

Anchor
_Toc14164521
_Toc14164521
コーディングルール自動チェックとは

ここで利用するC/C++test機能は、コーディングルールチェック機能になります。コーディングルールチェック機能は、4300種類以上のルールを搭載しており、
C/C++両言語を解析します。

図に記載されている一部のルールカテゴリは、コンプライアンスパック(別売り)のライセンスをアクティベートする必要があります。 下記に記載されているルールセットを使用したい場合は、
"コンプライアンスパック"をご検討ください

...

違反件数が多いルールは、「開発現場の方が守ろうと考えていなかったルール」です。その中で、過去のバグを防止できるコーディングルールが無いかを確認します。

確認ポイント1

違反が検出されたルールの内、違反件数が多いルールと少ないルールに分けます。

確認ポイント2

違反件数が少ないルールは、「開発現場の方が守ろうとして守りきれなかったルール」の可能性が高いと予測されます。

確認ポイント3

違反件数が多いルールは、「開発現場の方が守ろうと考えていなかったルール」です。その中で、過去のバグを防止できるコーディングルールが無いかを確認します。


コーディングルールチェック機能を開発現場で利用する初期段階では

...

一回目のコーディングルールチェック結果から、今の開発現場の方がどういう習慣や癖を持ってコーディングしているかを確認したら、開発現場に適した解析をするルールセットをチューニングする必要があります。
C/C++testでは全ての静的解析ルールを取捨選択可能です。
ここでは、2_コーディング規約チェック(チュートリアル)ルールセットの中から、「暗黙的にキャストしているコードを禁止する」ルールを抜き出して、別途ルールセットを作成する方法をご紹介します。

...

Anchor
_Toc14164526
_Toc14164526
開発現場の方々がコーディングルールを全て暗記できないことに備えて

C/C++testに搭載されている静的解析用の各ルールにはルールの説明ヘルプ画面が搭載されています。
静的解析での違反結果のレビュー時に、説明ヘルプ画面を表示することが可能であるため、開発現場の方々は都度ルールの内容を暗記する必要はありません。

...

Anchor
_Toc14164527
_Toc14164527
正当なレビュー結果から次回違反として検出しないために

C/C++testの静的解析で検出された違反は、レビュー後、次回違反として検出されないように「抑制」を設定することができます。

...