2012-10-17 16 views
32

Chcę wypróbować generatory dokumentacji dla nowego projektu w C++. Myślę, że moje opcje to Doxygen lub Sphinx. Ponieważ mam projekty w Pythonie, dla których chciałbym używać Sphinx, zastanawiam się, czy Sphinx jest właściwym wyborem dla C++. Strona internetowa Sphinx stwierdza, że ​​C++ jest obsługiwany, ale nie mogłem znaleźć dokumentu, który pozwoliłby mi rozpocząć pracę z dokumentacją C++.Czy Sphinx nadaje się już do dokumentacji C++?

Podobna kwestia została już discussed on Stackoverflow a głównym odpowiedź podsumowuje:

jeszcze nie w pełni użyteczny,
ale czuwają

Ponieważ dyskusja dobrze ponad rok stary Zastanawiam się, czy ten wniosek jest nadal ważny. Czy powinienem wybrać Doxygen over Sphinx dla mojej dokumentacji C++?

+3

Nie wiem o Sphinxie, ale myślę, że Doxygen jest naprawdę świetnym narzędziem! Jakie problemy można znaleźć w Doxygen? – lucasg

+3

@georgesl Jedynym problemem, jaki mam obecnie z Doxygenem, jest to, że zamierzam używać Sphinx do moich projektów w Pythonie i chcę uniknąć używania dwóch różnych systemów dokumentacji. Prawdopodobnie potrzeba trochę czasu, aby zacząć każdy z nich i przyzwyczaić się do składni. – clstaudt

+0

Na prawym pasku bocznym w ich witrynie znajduje się link do Grupy dyskusyjnej Google i uchwyt rozmowy FreeNode. Wypróbowałeś te? Niekoniecznie mówię, że to pytanie nie jest tutaj, tylko że sądzę, że bardziej prawdopodobne jest, że dostaniesz tam świadomą odpowiedź. –

Odpowiedz

18

Sfinks nie może wydobywać dokumentacji ze źródeł C++ w sobie. Istnieją jednak rozszerzenia, w szczególności Breathe, które wykorzystują Doxygen do wyodrębniania dokumentacji z C++. Nie testowałem żadnego z nich.

+0

Wygląda na to, że nadal potrzebuję używać dziwnej składni Doxgena, jeśli używam Breathe. : - / –

0

Dla C++ Doxygen jest bardzo dobry; Obsługa C++ w Sphinx odbywa się za pośrednictwem Doxygen (przy użyciu Breathe).

Chcesz mieć tylko jedno narzędzie dla obu języków, aby poprawić łatwość konserwacji. Doxygen can generate a documentation from Python code, więc radzę, aby użyć Doxygen dla obu źródeł, jeśli to możliwe. Here is a tutorial for Doxygen and Python.

+18

W ciągu lat programowania w Pythonie nigdy nie widziałem żadnego projektu Pythona z wykorzystaniem Doxygen. To absolutnie niestandardowe narzędzie w społeczności Pythona i nie jest tak, że znajdziesz dużo pomocy, jeśli kiedykolwiek będziesz miał problemy. – lunaryorn

+1

Twój argument jest następujący: "Doxygen jest szkodliwy dla Pythona, ponieważ nikt go nie używa"? Przepraszam, ale to nie jest prawda. Na przykład zobacz http://code.foosel.org/doxypy, http://www.stack.nl/~dimitri/doxygen/docblocks.html#pythonblocks, http://engtech.wordpress.com/2007/03/20/automatic_documentation_python_doxygen/(więc w Doxygen są osoby z Pythonem). – Synxis

+7

Niektóre wyniki Google nie pokonują mojego oświadczenia, że ​​jest to niestandardowe narzędzie w społeczności. Powszechne stosowanie Doxygen w ważnych projektach, ale nie ma. Żaden znaczący projekt Pythona nie używa Doxygen do dokumentacji lub zrobił to w przeszłości. Heck, nawet Zope nie ... – lunaryorn

Powiązane problemy