В нашей компании мы пишем лишние комментарии Xml. Типичный метод должен быть задокументирован следующим образом:
/// <summary>
/// Determines whether this <see cref="IScheduler"/> contains a specific <see cref="ISchedule"/>.
/// </summary>
/// <param name="schedule">The <see cref="ISchedule"/> to locate in this <see cref="IScheduler"/>.</param>
/// <returns>
/// Returns <see langword="true"/> if <paramref name="schedule"/> is found in this <see cref="IScheduler"/>; otherwise, <see langword="false"/>.
/// </returns>
bool Contains(ISchedule schedule);
/// <summary>
/// Removes and <see cref="IDisposable.Dispose"/>s the first occurrence of a specific <see cref="ISchedule"/>
/// from this <see cref="IScheduler"/>.
/// </summary>
/// <param name="schedule">The <see cref="ISchedule"/> to remove from this <see cref="IScheduler"/>.</param>
/// <exception cref="System.ArgumentNullException">Is thrown when the parameter schedule is null.</exception>
/// <exception cref="System.ArgumentException">Is thrown when the <see cref="ISchedule"/> is not found in this <see cref="IScheduler"/> or was of the wrong type.</exception>
void Remove(ISchedule schedule);
Как видите, почти каждое существительное, на которое можно сослаться с помощью тега <see cref>
.
Я нахожу это слишком большим. Большинство наших файлов с кодом настолько раздуты такими комментариями. Делает раздел комментариев почти нечитаемым.
Что вы думаете? Вам нравится такая документация в коде или нет?
Как обычно, я думаю, что на такой вопрос нет черно-белого ответа, поэтому я сделал это вики.
РЕДАКТИРОВАТЬ:
Мой вопрос был не в том, полезны ли сами теги see-ref по умолчанию. Понятно, что сгенерированные ссылки в файле .chm (или любом другом сгенерированном документе) очень полезны. Мой вопрос заключался в том, действительно ли полезно помечать в комментариях каждое вхождение каждого «ссылаемого» существительного.
Мы используем Sandcastle для создания документа каждую ночь. К сожалению, он очень редко используется другими разработчиками, но это другой вопрос.