オラクルのアプローチ
Java API 仕様には、ソフトウェア品質保証が完全な Java Compatibility Kit (JCK) テストを記述できるようにするのに十分なアサーションが含まれている必要があります。
これは、doc コメントが SQA による適合性テストのニーズを満たさなければならないことを意味します。コメントは、バグや、現在仕様外の実装がどのように機能するかを文書化するべきではありません。
公式のJavaDocガイドラインから:
コードのバグは、API 仕様ではなく実装のバグです。コードのバグとその回避策は、多くの場合、バグ レポートで個別に配布されます。ただし、特定の実装のドキュメントを生成するために Javadoc ツールが使用されている場合は、この情報をドキュメント コメントに含めて、メモまたはカスタム タグ (@bug など) で適切に区切ると非常に便利です。
したがって、基本的には、ドキュメントとバグ報告を混在させないでください。コメントで特別なカスタム タグを使用して解析します。バグ レポートを成功させるために、それ以上のものは必要ありません。
また、Eclipse Jira Connect または同様のツールを使用する@bug
と、TODO
コメントをバグ/タスク チケットに自動的に変換できます。
アップデート
必要に応じて、いくつかのカスタム アノテーションを使用できます。ニーズに合わせて文書化し、チーム全体で実施します。詳しくはこちら。
@Target({ ElementType.TYPE })
@Retention(RetentionPolicy.CLASS)
// Unavailable through reflection.
public @interface classbug {}
// gives you the @classbug annotation.
@Target({ ElementType.METHOD })
@Retention(RetentionPolicy.CLASS)// Unavailable through reflection.
public @interface methodbug {}
// gives you the @methodbug annotation.