Doxygenμ μ°λ¦¬μ νν 'λ
μ£Όμ'μ΄λΌκ³ λ§νλ κ²μ
λλ€.κ°μλ§μΈμ§ λͺ°λ,,π€―
μ£Όμμ μ½λλ₯Ό μ΄ν΄νλλ° λμμ μ£Όκ³ , μ€μλμ λ°©μ§νμ¬ μμ μ μ½κ² νλλ‘ νλ μ€μν μν μ ν©λλ€. λ°λΌμ μ½λ© μ€νμΌ λΏλ§ μλλΌ μ£Όμ μμ κ·κ²©νλ μμ±λ°©λ²μ΄ νμν©λλ€.
Doxygenμ μμ±νλ λ§μ λΌμ΄λΈλ¬λ¦¬ μ€μμ JSDocμ μ¬μ©νκ² μ΅λλ€. JSDocμ μ΄μ©ν΄μ λ¬Έμ μ£Όμμ μ½λμ ν¨κ» μμ€μ½λμ μΆκ°ν μ μμ΅λλ€. λͺ¨λ, λ€μμ€νμ΄μ€, ν΄λμ€, λ©μλ, νλΌλ―Έν° λ±κ³Ό κ°μ νλͺ©μ λ¬Έμνν΄μ HTMLλ‘ λ§λ€ μ μμ΅λλ€.
GitHubλ₯Ό 보λ starκ° μ΄λ§μ΄λ§ν©λλ€.
Doxygenμ μμ±νλ©΄μ κ°μ₯ μ€μν κ²μ λλ€. /*, /*** μΌλ‘ μμλλ μ€λͺ μ JSDocνμκ° μΈμνμ§ λͺ»νκ³ λ¬΄μλ©λλ€.
@λ₯Ό ꡬλΆμλ‘ μ¬μ©ν΄μ μ£Όμμ μμ±ν©λλ€. λ§μ΄ μ¬μ©λλ μ£Όμλ€μ μλμ κ°μ΅λλ€. λ λ§μ μ¬μ©λ²μ 곡μλ¬Έμμ 'Block Tags'λ₯Ό μ°Έκ³ ν΄μ£ΌμΈμ.
μ¬μ© | λ΄μ© | λ¬Έλ² |
---|---|---|
@author | μμ±μλ₯Ό μλ³νλ€. μ΄λ©μΌμ μμ±ν κ²½μ° μ΄λ¦ λ€μ κΊ½μ κ΄νΈλ₯Ό μ¬μ©νλ€. | @author μμ±μμ΄λ¦ [< μ΄λ©μΌ >] |
@version | λ²μ λ΄μ©μ μμ±νλ€. | @version λ²μ μ 보 |
@copyright | νμΌ κ°μ λ° μ€λͺ μ λν μ μκΆμ μ€λͺ νλ€. | @copyright μ€λͺ λ΄μ© |
@file | νμΌμ λν μ 보λ₯Ό μμ±νλ€. | @file μ€λͺ λ΄μ© |
@licence | μννΈμ¨μ΄ λΌμ΄μΌμ€λ₯Ό μμ±νλ€. | @licence μλ³μ |
μ¬μ© | λ΄μ© | λ¬Έλ² |
---|---|---|
@this | ν΄λΉ ν¨μ λ΄λΆμμ thisκ° μ°Έμ‘°νλ κ²μ νμνλ€. | @this μ°Έμ‘°κ° |
@constant (@const) | μμλ₯Ό νμνλ€. | @constant [< νμ > < μ΄λ¦ >] |
@throws (@exception) | λ°μνλ μ€λ₯λ μμΈμ¬νμ μμ±νλ€. | @throws μμΈ |
@param (@arg, @argument) | νλΌλ―Έν°λ₯Ό μμ±νλ€. | @param νλΌλ―Έν° |
@requires | νμν λͺ¨λμ μμ±νλ€. | @requires λͺ¨λ |
@callback | μ½λ°±μΌλ‘ λ°μ μΈμ λ° λ°νκ°μ λν΄ μ€λͺ νλ€. | @callback μ€λͺ |
@return (@returns) | 리ν΄λλ κ°μ νμνλ€. | @return 리ν΄κ° |
@event | νΉμ μ΄λ²€νΈλ₯Ό μ μνλ€. | @event μ΄λ²€νΈμ΄λ¦ |
ν°λ―Έλμμ λͺ¨λμ μ€μΉν΄μ€λλ€.
npm install --save-dev jsdoc
μ€μΉκ° μλ£λλ©΄ package.jsonμμ μΆκ°λ κ²μ νμΈν μ μμ΅λλ€.
μμμ μ 리ν κ·μΉμ λ§κ² Doxygenμ μμ±νκ² μ΅λλ€. μμ λ‘ μμ±ν doxygenμ μλμ κ°μ΅λλ€.
/**
* Todoλ₯Ό λ°ννλ λ©μλ
* @param {object} children symbol()
* @returns {object} TodoTemplate κ°μ²΄
*/
const TodoTemplate = ({ children }) => {
return (
<div className="TodoTemplate">
<div className="app-title">μΌμ κ΄λ¦¬</div>
<div className="content">{children}</div>
</div>
)
}
μ Doxygenμ΄ μμ±λ νμΌμ ./src/components/TodoTemplate.jsμ λλ€.
ν°λ―Έλμμ μλμ κ°μ΄ νμΌμ μ§μ ν΄μ€λλ€.
./node_modules/.bin/jsdoc 'λμ JavaScriptFile.js'
'λμ JavaScriptFile.js'μ΄ μμμ doxygenμ΄ μμ±ν νμΌ(./src/components/TodoTemplate.js)μ
λλ€.
μμ λͺ
λ Ήμ΄κ° μ€νλλ©΄ out ν΄λκ° μκΈ΄κ²μ νμΈν μ μμ΅λλ€. μ΄ ν΄λκ° JSDocμ΄ λ§λλ Documentationμ
λλ€.
outν΄λμ index.htmlμ μ΄μ΄μ μμ±λ λ¬Έμλ₯Ό νμΈν μ μμ΅λλ€.
μκ°νλ κ³Όμ λ³΄λ€ λ무 κ°λ¨ν΄μ λλ μ¬μ©κΈ°μμ΅λλ€. νμ λ¬Έμλ₯Ό μμ±ν λ μ΄λ €μλ λ§μ΄ λκΌλλ°, λͺ¨λμ μ¬μ©νλ λ κΉλνκ³ νΈλ¦¬ν κ² κ°μ΅λλ€.
λ¬Όλ‘ μ΄ ν¬μ€ν
μμ λ€λ£¬ λ΄μ©μ 'JsDocμ μμνλ κ°λ¨ν μμ 'μ
λλ€. λ λ°μ μμΌμ ν
νλ¦Ώμ μ μ©μν€κ±°λ μλννλ λ°©λ²λ ꡬννκ³ κΈ°λ‘νκ² μ΅λλ€.π€
ν νλ¦Ώ μ μ© κΈ : https://velog.io/@eunjeong/React-JSDoc-template