Автоматически генерировать документацию по функциям в Visual Studio - PullRequest
83 голосов
/ 09 января 2009

Мне было интересно, есть ли способ (надеюсь, комбинация клавиш) для автоматического создания заголовков функций в Visual Studio.

Пример:

Private Function Foo(ByVal param1 As String, ByVal param2 As Integer)

И это автоматически стало бы чем-то вроде этого ...


'---------------------------------- 
'Pre: 
'Post:
'Author: 
'Date: 
'Param1 (String): 
'Param2 (Integer): 
'Summary: 
Private Function Foo(ByVal param1 As String, ByVal param2 As Integer)

Ответы [ 8 ]

149 голосов
/ 10 января 2009

Сделать это "тремя одиночными маркерами комментариев"

В C # это ///

который по умолчанию выплевывает:

/// <summary>
/// 
/// </summary>
/// <returns></returns>

Вот несколько советов по редактированию шаблонов VS.

45 голосов
/ 10 января 2009

GhostDoc !

Щелкните правой кнопкой мыши по функции, выберите «Документировать это» и

private bool FindTheFoo(int numberOfFoos)

становится

/// <summary>
/// Finds the foo.
/// </summary>
/// <param name="numberOfFoos">The number of foos.</param>
/// <returns></returns>
private bool FindTheFoo(int numberOfFoos)

(да, все это автоматически генерируется).

Имеется поддержка C #, VB.NET и C / C ++. По умолчанию он сопоставляется с Ctrl + Shift + D .

Помните: вы должны добавить информацию помимо подписи метода в документацию. Не просто остановиться на сгенерированной документации. Значение такого инструмента заключается в том, что он автоматически генерирует документацию, которая может быть извлечена из сигнатуры метода, поэтому любая добавляемая вами информация должна быть новой информацией.

При этом, я лично предпочитаю, когда методы полностью самодокументируются, но иногда у вас будут стандарты кодирования, которые требуют внешней документации, а затем такой инструмент избавит вас от необходимости печатать мозги.

29 голосов
/ 10 мая 2016
///

является ярлыком для получения блока комментария «Описание метода». Но перед добавлением убедитесь, что вы написали имя функции и подпись. Сначала напишите имя и подпись функции.

Затем над именем функции просто наберите ///

и вы получите его автоматически

enter image description here

17 голосов
/ 01 мая 2009

Visual Assist также предлагает хорошее решение и обладает высокой стоимостью.

После настройки для генерирования комментариев в стиле doxygen эти два клика произведут -

/**
* Method:    FindTheFoo
* FullName:  FindTheFoo
* Access:    private 
* Qualifier:
* @param    int numberOfFoos
* @return   bool
*/
private bool FindTheFoo(int numberOfFoos)
{

}

(При настройках по умолчанию это немного отличается.)


Edit: Способ настройки текста «метод документа» находится в VassistX-> Параметры Visual Assist-> Предложения, выберите «Редактировать фрагменты VA», Язык: C ++, Тип: Рефакторинг, затем перейдите к «Метод документа» и настройте. Приведенный выше пример генерируется:

va_doxy

11 голосов
/ 04 января 2016

Обычно Visual Studio создает его автоматически, если вы добавляете три отдельных маркера комментария над тем, что вам нравится комментировать (метод, класс).

В C # это будет ///.

Если Visual Studio этого не делает, вы можете включить его в

Параметры-> Текстовый редактор-> C # -> Дополнительно

и отметьте

Создание комментариев к документации XML для ///

pictured description

3 голосов
/ 17 июля 2012

В Visual Basic, если вы сначала создаете свою функцию / подпрограмму, а затем в строке над ней, вы вводите три раза, и она автоматически генерирует соответствующий XML для документации. Это также отображается при наведении курсора мыши на intellisense и при использовании функции.

2 голосов
/ 09 января 2009

Вы можете использовать фрагменты кода для вставки любых строк.

Кроме того, если вы введете три одинарные кавычки ('' ') в строке над заголовком функции, он вставит шаблон заголовка XML, который вы затем сможете заполнить.

Эти XML-комментарии могут интерпретироваться программным обеспечением для документации, и они включаются в выходные данные сборки в виде файла assembly.xml. Если вы храните этот XML-файл вместе с DLL и ссылаетесь на эту DLL в другом проекте, эти комментарии становятся доступными в intellisense.

0 голосов
/ 21 апреля 2012

Я работаю над проектом с открытым исходным кодом под названием Todoc, который анализирует слова для автоматического вывода правильной документации при сохранении файла. Он уважает существующие комментарии и действительно быстр и плавен.

http://todoc.codeplex.com/

...