だから私たちはそのようなインターフェイスを持っています
/// <summary>
/// Interface for classes capable of creating foos
/// </summary>
public interface ICreatesFoo
{
/// <summary>
/// Creates foos
/// </summary>
void Create(Foo foo);
/// <summary>
/// Does Bar stuff
/// </summary>
void Bar();
}
最近、私たちは、上記のようなXML文書がたくさんあることを生成し、確認することを含む文書の話をしました。しかし、これはドキュメントの多くの重複を引き起こしました。実装例:
/// <summary>
/// A Foo Creator which is fast
/// </summary>
public class FastFooCreator : ICreatesFoo
{
/// <summary>
/// Creates foos
/// </summary>
public void Create(Foo foo)
{
//insert code here
}
/// <summary>
/// Does Bar stuff
/// </summary>
public void Bar()
{
//code here
}
}
あなたが見ることができるように、メソッドのドキュメントは、インターフェイスからまっすぐです。
大きな問題は、これは悪いことですか?私の腸は重複のために私にイエスと言っていますが、それから再びそうでないかもしれませんか?
また、override
関数とvirtual
関数を使用した他の同様のドキュメントの複製があります。
これは悪いですか、回避すべきですか?それはまったく価値がありますか?
Resharperを使用する場合、実装内でのみコメントを変更し、「メンバーをプル」を使用してインターフェイスを更新できます。
—
vortexwolf
私はこれを行いますが、おそらく外部ツールを使用するのが苦手なので、インターフェイスのヘッダーファイルに移動して、特定の種類のことで何ができるかを確認したいのです(これはCとC ++ソースファイルのヘッダーの概念)。それは少し繰り返しますが、メソッドをオーバーライドする具体的なクラスに関連するより具体的な詳細を追加する機会を見つけようとします。たとえば、私はそれが好きで、そうしないと重要なものを省略したように感じるOCDのものがありますヘッダーファイル内のすべての関数のコメントを参照してください。