Итак, у нас есть такой интерфейс
/// <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
функциями.
Это плохо и его следует избегать или нет? Это вообще стоит даже?
Ответы:
В целом, я бы добавил новую документацию к методам реализации только в том случае, если в этой реализации есть что-то конкретное , что необходимо упомянуть.
В javadoc вы можете ссылаться на другие методы, которые позволят вам просто создать ссылку в реализации на документацию метода в интерфейсе. Я думаю, что именно так это и должно быть сделано в .Net (основываясь на моем чтении онлайн-документации, а не на моем собственном опыте):
Документация для
<see/>
элемента: http://msdn.microsoft.com/en-us/library/acd0tfbe.aspxисточник
Collection<T>
и хочу переопределить егоCount
свойства XML-документов.