この文書で記述された議論から、javadocにはいくつかのタグがさらに必要であることが明かになった。javadocをシンプルに保つことが重要であることには同意するが、同時に手に抱えている作業に十分である必要もある。結果として、以下の新しいタグを今後のバージョンのjavadocがサポートするように提案したい。
| 提案タグ | 使用対象 | 目的 |
|---|---|---|
| @bug 記述 | クラス、メソッド | クラスやメソッドの既知のバグを記述する。バグ毎に1つのタグを使用する。 |
| @concurrency 記述 | クラス、メソッド、フィールド | クラス/メソッド/フィールドが持つ並行戦略/アプローチを記述する。メソッドが実行されるコンテクストはここで記述される。 |
| @copyright 年 記述 | クラス | クラスの著作権を示し、著作権発生年と著作権を保持する個人/組織名といった情報を記述する。 |
| @example 記述 | クラス、メソッド、フィールド | クラス、メソッド、フィールドの使い方を1つ以上例示する。開発者がクラスの使い方を素早く理解するのに役立つ。 |
| @fyi 記述 | クラス、インタフェース、メソッド、フィールド | 設計上の決定やコードの断片を知るのによい情報を提供する。 |
| @history 記述 | クラス、メソッド | クラス/メソッドが過去に変更されてきたことを記述する。変更毎に変更者、変更時期、変更内容、変更理由、変更要求とあればユーザ要求への参照を記述する。 |
| @modifies no | メソッド | メソッドがオブジェクトを変更しないことを示す。 |
| @modifies yes 記述 | メソッド | メソッドがオブジェクトを変更し、どのように変更されるかを示す。 |
| @postcondition 記述 | メソッド | メソッドが起動された後で真となる事後条件を記述する。事後条件毎に1つのタグを使用する。 |
| @precondition 記述 | メソッド | メソッドが起動される前に真となっていなければならない事前条件を記述する。事前条件毎に1つのタグを使用する。 |
| @reference 記述 | クラス、インタフェース、メソッド、フィールド | 関係のあるビジネスルールやソースコードに関連した情報を持つ外部文書へのリファレンスを記述する。 |
| @values | フィールド | 範囲や特定の値を含むフィールドが取り得る値を記述する。 |
私が最初にこの節を書いてから後に、Sunはjavadocを拡張する(すなわち新しいタグを追加する)ことができる"doclets"と呼ばれる機構を導入した。docletsに関する詳しい情報と提案されている新しいタグについては、http://java.sun.comサイトのjavadocについて記載されている情報を参照されたい。