[:==:] комментирование кода
От: uzhas Ниоткуда  
Дата: 10.07.11 12:31
Оценка:
каким образом вы создаете документацию к API ? какими средствами?
буду рад ссылке на подобное обсуждение\голосовалку
возможные варианты:
1) пишу комменты к публичному API в формате доксигена, далее (делаю, есть возможность и тд) создаем в формате html, pdf, doc документацию с помощью doxygen.exe
2) пишу комментарий в произвольном формате в коде. для документации использую отдельные ресурсы типа wiki, doc, jira, etc, сижу там клепаю красивую документацию с диаграммами, болдами, курсивами и тд


зы: не знаю в какой форум лучше запостить это обращение, но C++ первичен
документация кода
Re: [:==:] комментирование кода
От: TarasKo Голландия  
Дата: 10.07.11 12:44
Оценка:
1ое. Так проще и получается более менее удобная документация.
Re[2]: [:==:] комментирование кода
От: uzhas Ниоткуда  
Дата: 10.07.11 12:56
Оценка:
Здравствуйте, TarasKo, Вы писали:

TK>1ое.

ну если кроме доксигена что-то используете, то интересно услышать что именно
Re: [:==:] комментирование кода
От: Аноним  
Дата: 10.07.11 20:44
Оценка: +1 -3
Расскажите, в чем суть комментирования в коде? Он же засирается до невозможности, вроде функции на 5 строчек и описания в хтмл-формате на 50.
Re[2]: [:==:] комментирование кода
От: Abyx Россия  
Дата: 10.07.11 21:18
Оценка: -1
Здравствуйте, Аноним, Вы писали:

А>Расскажите, в чем суть комментирования в коде? Он же засирается до невозможности, вроде функции на 5 строчек и описания в хтмл-формате на 50.


ИДЕ должна уметь сворачивать документацию
In Zen We Trust
Re[3]: [:==:] комментирование кода
От: Vain Россия google.ru
Дата: 11.07.11 02:13
Оценка:
Здравствуйте, Abyx, Вы писали:

А>>Расскажите, в чем суть комментирования в коде? Он же засирается до невозможности, вроде функции на 5 строчек и описания в хтмл-формате на 50.

A>ИДЕ должна уметь сворачивать документацию
По мне так бесполезная фича.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
Re: [:==:] комментирование кода
От: Poirot Россия  
Дата: 11.07.11 05:06
Оценка:
Здравствуйте, uzhas, Вы писали:

U>каким образом вы создаете документацию к API ? какими средствами?

U>буду рад ссылке на подобное обсуждение\голосовалку
U>возможные варианты:
U>1) пишу комменты к публичному API в формате доксигена, далее (делаю, есть возможность и тд) создаем в формате html, pdf, doc документацию с помощью doxygen.exe
U>2) пишу комментарий в произвольном формате в коде. для документации использую отдельные ресурсы типа wiki, doc, jira, etc, сижу там клепаю красивую документацию с диаграммами, болдами, курсивами и тд


U>зы: не знаю в какой форум лучше запостить это обращение, но C++ первичен


Использую №1.

По догу службы учавствовал в одном проекте с полностью доксигеновской докой. Достаточно удобно, если подходить с умом.

Никто же не запрежает написать скрипты, чтобы генерировать разного рода диаграммы и затем вставлять их как картинки в конечный док. Да и сам доксиген позволяет встроить секвенс диаграммы и dot-диаграмма (используя внешние утилиты).

По поводу загажевания кода — никто не запрещает использовать для дока отдельные текстовые файл, в которых указывать элемент к которому относится комментарий — тут просто возникает неудобнство, что нужно отделать код от описания, что бывает сложно поддерживать при частом изменениии этого коска (переименование, переносы в другие неймспейсыф и прочее — т.е. то что влияет на полное име описываемго элемента).
Re: [:==:] комментирование кода
От: std.denis Россия  
Дата: 12.07.11 20:20
Оценка:
скажите, а что означает вот этот хлам в начале темы?
Re: [:==:] комментирование кода
От: MTimur  
Дата: 12.07.11 22:46
Оценка: 4 (1) +1
Здравствуйте, uzhas, Вы писали:

U>каким образом вы создаете документацию к API ? какими средствами?


По долгу службы использую нечто между 1-м вариантом и ничем. Т.е. коменты пишутся чтобы были, документация генерится doxygen'ом. Комментировать результат, думаю, не стоит — и так все понятно.
Дома, для своих проектов, настроен маленький хоум-сервер. Svn + mantis + wiki. Так вот — сначала пишу в wiki, что я хочу сделать, архитектурное решение с детальным описанием насколько это возможно. Если требуется добавляю "картинки", разбавляю огрызками кода, которые найдены во время изучения "проблемы" и могут понадобится в качестве примера "как надо делать" или "как не надо делать". По мере написания, правлю статью, добавляю описание отдельных, более узких/частных моментов и наоборот более общих — от самых "верхних" интерфейсов до отдельных методов и свойств мелких вспомогательных классов, меняю первоначальную модель по мере изменяющихся требований (вернее по мере появления не замеченных сразу моментов, нюансов), ну и т.д... Все это перемешивается перекрестными ссылками на ревизии СВН и короткие заметки по реализации фич/исправлению багов в Мантис. В итоге, помимо зачастую бестолковых комментариев к методам, выстраивается достаточно четкое описание того, что сделано, зачем и почему так, а не иначе, описана архитектура, процесс формирования/жизни проекта. Получается очень удобно. Субъективно, но мне думается, что с такой документацией будет не сложно быстро разобраться в любом проекте человеку со стороны. А уж в своем коде с этими напоминалками — вообще красота.
Минусы
1) Время... хотя на раздумье его все равно тратить, а на бумаге (ну т.е. на экране) мысли, кажется, еще и быстрее выстраиваются (опять таки субъективно), если привыкнуть.
2) Приходится совмещать http-ссылки в коде с коментариями. Мелкие заметки по коду (вроде описания локальной переменной, когда их много) тащить в wiki нет смысла, да и неудобно это. А описание методов/интерфейсов/логики и т.д. написанные в wiki должно отражаться ссылкой в коде. Вот приходиться выбирать между "надо подробно"/"почти не надо".
3) Если для себя — будет работать. Если попросить кого то так писать, то вряд ли — получатся те же бестолковые заметки "чтобы было" и ни строчки "о главном" — лучше пускай пишет в исходниках на метод SetUserCount комментарий "Set user count".
Re: [:==:] комментирование кода
От: landerhigh Пират  
Дата: 13.07.11 01:36
Оценка:
Здравствуйте, uzhas, Вы писали:

U>возможные варианты:

U>1) пишу комменты к публичному API в формате доксигена, далее (делаю, есть возможность и тд) создаем в формате html, pdf, doc документацию с помощью doxygen.exe

Только этот способ. Отделение документации от кода гарантирует несоответствие первой последнему. Закон Мерфи.
Да и удобно. В доксиген можно еще и диаграммы включать, которые тоже генерируются из комментариев при помощи того же plantuml.
www.blinnov.com
Re: [:==:] комментирование кода
От: los puercos  
Дата: 13.07.11 15:05
Оценка: 4 (1) +1
Здравствуйте, uzhas, Вы писали:

Doxygen — для комментариев в коде.
Wiki — для описания более общих вещей (архитектуры, используемых технологий/паттернов и т.п.)
Re[2]: [:==:] комментирование кода
От: los puercos  
Дата: 13.07.11 15:08
Оценка: +1
Здравствуйте, Poirot, Вы писали:

P>По поводу загажевания кода — никто не запрещает использовать для дока отдельные текстовые файл, в которых указывать элемент к которому относится комментарий — тут просто возникает неудобнство, что нужно отделать код от описания, что бывает сложно поддерживать при частом изменениии этого коска (переименование, переносы в другие неймспейсыф и прочее — т.е. то что влияет на полное име описываемго элемента).


По поводу загаживания кода — это отмазы тех, кто ленится писать документацию.
Re[3]: [:==:] комментирование кода
От: uzhas Ниоткуда  
Дата: 13.07.11 17:35
Оценка:
Здравствуйте, los puercos, Вы писали:

LP>По поводу загаживания кода — это отмазы тех, кто ленится писать документацию.

а мне и отмазы не нужны, чтобы лениться писать документацию
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.