[Utility] Doxygen을 이용한 프로젝트 및 개발 코드 관리[Utility] Doxygen을 이용한 프로젝트 및 개발 코드 관리
Posted at 2020. 1. 3. 17:07 | Posted in Developer Tool참고 : https://www.slideshare.net/arload/doxygen-33932243
■ 독시젠(Doxygen)이란?
· 독시젠은 소프트웨어 레퍼런스 문서 생성기 이다.
· 독시젠 주석 문법을 사용함으로서 설명서 자체가 코드로 되어 있기에 문서와 코드를 상호 참조 할 수 있다.
처음 코딩을 시작할 때붜 독시젠을 사용함으로서 나중을 위한 주석 작성을 하게 되며,
이후 간단한 작업을 거쳐 손쉽게 레퍼런스 문서를 획득할 수 있다.
■ 윈도우즈(Windows)에서 독시젠 설치 하기
제일먼저 http://www.doxygen.nl/download.html 접속하여 윈도우용 독시젠을 다운로드 받는다.
Downloads 페이지에서 doxygen-버전NO-seup.exe 파일을 다운로드 받는다.
■ 독시젠 주석 작성법
#01. 메인 페이지 주석 예시
/** * @mainpage 메인페이지 제목 * @brief 간략한 설명 * @details 자세한 설명 */ |
#02. 파일 페이지 주석 예시
/** * @file 파일 클래스 이름 * @brief 간략한 설명 * @details 자세한 설명 */ |
#03. 패키지 주석 예시
/** * @namespace org.nhnnext * @brief 패키지 간략 설명 * @details 패지키 자세히 설명 */ package org.nhnnext; |
#04. 클래스 주석 예시
/** * @brief 클래스 간략 설명 * @details 클래스 자세히 설명 * @author 이름, 이메일 * @date YYYY-MM-DD * @version 0.0.1 */ class 클래스_이름 extends 자식_클래스_이름 { /* do nothing */ } |
#05. 메서드 주석 예시
/** * @brief 메서드 간략 설명 * @details 메서드 자세히 설명 * @param args 콘솔 파라미터 * @returnCnt 프로그램 상태 * * @bug 메모리 누수 있음 * @todo 버그 해결 해야함 * @Exception StringIndexOutOfRangeException * * @see NewClass * @see http://magic.wickedmiso.com/ */ public static int main(String[] args) { ... retrun( status ); } |
#06. 메타 데이터 주석 예시
/** * @mainpage 프로그램의 전체 개요 등을 설명한다. * @section 프로그램의 개요 별로 설명한다. * @versions 프로그램 버전을 설명한다. * @breif 간략한 설명을 쓸 때 사용한다. * @details 자세한 설명을 쓸 때 사용한다. * @files 파일 이름을 구별할 때 사용한다. * @author 작성자 이름을 나타낼 때 사용한다. * @date 작성날짜를 나타낼 때 사용한다. * @param 함수 파라미터를 설명한다. * @return 함수 리턴값을 설명한다. * @exeception 예외 처리를 설명한다. * @throws throw하는 객체나 변수 등을 설명한다. * @see 참고할 함수나 페이지를 지정한다. * @todo 해야할 일에 대해서 따로 리스트를 생성한다. * @bug 버그에 대해서 따 리스트를 생성한다. * @code 중요코드를 설명할때 시작 지점을 가리킨다. * @endcode 중요코드를 설명할때 종료 지점을 가리킨다. */ |
■ 독시젠 설정 및 사용방법
#01. Wizard > Project
① 프로젝트 루트 폴더를 지정한다.
② 프로젝트 이름과 버전을 지정한다.
③ 소스 파일이 있는 폴더를 지정한다.
④ 모든 하위 폴더를 재귀적으로 스캔한다.
⑤ 독시젠 문서를 생성할 폴더를 지정한다.
#02. Wizard > Mode
① 각 함수마다 사용한 함수로의 링크를 생성한다.
② 진행한 프로젝트의 개발 언어를 선택한다.
#03. Wizard > Output
① 문서 왼쪽에 탐색 트리를 보여준다.
#04. Wizard > Diagrams
① 소스간의 관계를 Graphviz로 표현해 준다.
#05. Expert > Project
① 출력 결과에 쓰여질 언어를 한국어-영어 같이 사용으로 선택한다.
② 항상 상세 정보를 보여준다.
③ 소멸자와 상속자를 제외한 상속된 모든 멤버를 보여준다.
#06. Expert > Build
① 소스코드의 모든 요소가 문서화 대상이 된다.
② 클래스 내의 모든 private 멤버가 문서화 대상이 된다.
③ 클래스 내의 모든 static 멤버가 문서화 대상이 된다.
#07. Expert > Source Browser
① 함수 설명시 함수 코드를 보여준다.
#08. Expert > Dot
① 클래스 상속구조 다이어그램을 그린다.
② 다이어 그램을 UML 형식으로 그린다.
#09. Expert > Dot
① dot_path의 지정 경로에 Graphviz 이미지가 생성된다.
#10. Run
① 독시젠을 가동시켜 문서를 생성한다.
② Show Html output 버튼이 활성화되면 독시젠 문서 생성이 완료되었다.
#11. Show Html Output
모든 작업이 완료되면 위와같이.
HTML 형태로 진행한 프로젝트의 문서화가 이루어 진다.
'Developer Tool' 카테고리의 다른 글
[DeveloperTool] Atom Edit에서 FTP 간편 접속하기 (0) | 2020.04.26 |
---|---|
[DeveloperTool] SSH, 터미널 접속시 유용한 Mobaxterm - FREE (0) | 2019.03.22 |
[Utility] 다양한 DBMS를 지원하는 DBeaver - FREE (0) | 2019.01.08 |