[[TableOfContents]] ¹®¼­È­ µµ±¸ÀÎ Doxygen ¿¡ ´ëÇÑ ÀڷḦ ¼öÁý, Á¤¸®ÇÑ´Ù. ±âº»ÀûÀ¸·Î C/C++ , java µîÀ» Áö¿øÇÑ´Ù. PHP , C# µîµµ Áö¿øÇϴµí(È®ÀÎÇÊ¿ä) == °ü·Ã »çÀÌÆ® == * http://www.doxygen.org/ : °ø½Ä »çÀÌÆ® o http://www.stack.nl/~dimitri/doxygen/ : µ¿ÀÏÇÑ »çÀÌÆ® + http://www.stack.nl/~dimitri/doxygen//results.html : example == ÀÎÅÍ³Ý ¹®¼­ == ±×¿ÜÀÇ ¾ð¾î º° Ư»öÀ» Á¤¸®ÇÏ´Â °ÍÀÌ ÁÁÀ» µí === C/C++ °ü·Ã === * http://www.doxygen.org/doxbar/ : VC add-in * http://www.gpgstudy.com/gpgiki/DoxyGen * http://www.gpgstudy.com/gpgiki/DoxygenTutorial * http://www.gpgstudy.com/doxygen_example/ : »ùÇà * http://www.pie.pe.kr/moniwiki/wiki.php/Doxygen * http://www.pie.pe.kr/moniwiki/wiki.php/graphviz * http://www.pie.pe.kr/moniwiki/wiki.php/Doxygen/CSS * http://woohaha.egloos.com/260149 : DoxygenÀ¸·Î ÇÁ·ÎÁ§Æ® ¹®¼­È­Çϱâ === È°¿ë === * http://www.redwiki.net/wiki/wiki.php/doxygen/¼Ò½ºÁÖ¼®ºÙÀ̱â * http://openlook.org/blog/2003/Sep/05 : DoxygenÀ¸·Î ¸¸µç PDF == ¿¹Á¦¹®¼­ == ½ÇÁ¦ È°¿ëÇÏ¿© Á¦ÀÛµÈ ¹®¼­µéÀ» Á¤¸®ÇÑ´Ù.(¾ð¾îº°·Î ºÐ·ùÇϴ°ÍÀÌ ÁÁÀº°¡?) === C === {{{#!vim c /** @file telnet.c * @brief Telnet main ÇÔ¼ö * * ±ä ¼³¸íÀº ÇÑÁÙÀ» ³Ñ±ä´ÙÀ½ ³Ö¾îÁØ´Ù. \n * ÇϳªµÑ. ¼Â.. ³Ý.. * ´Ù¼¸.. ¿©¼¸.. \n * http://doxygen.org/ */ #include "telnet.h" #define MAX_WRITE_BUF (PIPE_BUF * 2) /**< ÃÖ´ë Write buffer size */ #define MAX_READ_BUF PIPE_BUF /**< ÃÖ´ë read buffer size */ int do_debug = 1; /**< Debug ÇÒ °ÍÀΰ¡ ¾Æ´Ñ°¡ */ char hostname[MAXHOSTNAMELEN]; /**< hostname */ short port; /**< Telnet port number */ int sock; /**< sock fd */ /** @brief buffer structor Telnet¿¡¼­ Àü¼ÛµÇ´Â µ¥ÀÌÅÍ¿¡ ´ëÇØ ÇÁ·ÎÅäÄÝÀ» ó¸®ÇØ¾ß Çϱâ À§ÇÏ¿©, È¿À²ÀûÀ¸·Î µ¥ÀÌÅ͸¦ Àü¼ÛÇØ¾ß ÇÒ ÀÔÃâ·Â ¹öÆÛ structor */ struct buffer { char *buf; /**< µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ÁÖ¼Ò°ø°£ */ int size; /**< buf¿¡ ÇÒ´çµÈ ¸Þ¸ð¸® Å©±â */ int head; /**< buf¿¡ ÀúÀåµÈ µ¥ÀÌÅÍÀÇ Ã³À½ Index */ int tail; /**< buf¿¡ ÀúÀåµÈ µ¥ÀÌÅÍÀÇ ¸¶Áö¸· index */ int count; /**< buf¿¡ ÀúÀåµÈ µ¥ÀÌÅÍÀÇ byte ¼ö */ }; struct buffer write_buf; /**< Write buffer structor */ struct buffer read_buf; /**< Read buffer structor */ /** @brief Main ÇÔ¼ö @return ¼º°ø¿©ºÎ */ int main( int argc, /**< ÀÎÀÚ °³¼ö */ char *argv[] /**< ÀÎÀÚ */ ) { printf("hello world\n"); return 0; } /** @mainpage ùÆäÀÌÁö @section intro ¼Ò°³ ÀÌ ÇÁ·ÎÁ§Æ®´Â telnet ÇÁ·Î±×·¥ÀÌ´Ù. @section developer °³¹ßÀÚ fehead (fehead@gelug.pe.kr) @section history ¿ª»ç ÀÌ ÇÁ·Î±×·¥´Â 2004³â 11¿ù ¸»Âë¿¡ ½ÃÀÛ Çß´Ù. - 2004³â 11¿ù ¸» ½ÃÀÛ - 2004³â 12¿ù 13ÀÏ ÃÖÁ¾ ¼öÁ¤ */ }}} === C++ === {{{#!vim c /// @file ConvertDB.h /// @brief DB classs ¼±¾ð Headerfile. /// @author infiniterun /// @date 2004-12-09 /// @brief DBº¯È¯ classs class CConvertDB { public: bool Run(); CConvertDB(const string strProgramFiles); virtual ~CConvertDB(); private: void DeleteAll(); bool CopyData(); bool OpenDB(string strData1, string strData2); int GetCurrentVersion() const; CIFMemInfo *m_pOldMemInfo; ///< Ver1¿ë DB Data CIFMemInfo *m_pNewMemInfo; ///< »õ ¹öÀü¿ë DB Data string m_strProgramFiles; ///< Program Files Directory }; /// @brief DB¸¦ ¿¬´Ù. /// @return ¼º°ø¿©ºÎ bool CConvertDB::OpenDB( string strData1, ///< ver1¿ë DBConnector string strData2 ///< »õ¹öÀü¿ë DBConnector ) { bool ret = true; try { if(m_pOldMemInfo->Open(strData1) == false) throw false; if(m_pNewMemInfo->Open(strData2) == false) throw false; } catch(const bool bError) { ret = bError; } return ret; } }}} === Java === === ±×¿Ü === == °­Á == === infiniterun °­Á === * [Doxygen/°­ÁÂ01] : ¹«ÀÛÁ¤ ½ÃÀÛÇϱâ * [Doxygen/°­ÁÂ02] : hello.c ÆÄÀÏ ºÐ¼®Çϱâ * [Doxygen/°­ÁÂ03] : Main Page, struct, enum, ±ä¼³¸í ¹®¼­È­Çϱâ. == Áú¹®°ú´ë´ä == * Q : ¾î¶² ¾ð¾îµéÀ» Áö¿øÇϳª¿ä? * A : ±âº»À¸·Î C/C++ , Java ¸¦ Áö¿øÇÕ´Ï´Ù. PHP , C# µîµµ »ç¿ë°¡´ÉÇÕ´Ï´Ù.