我曾經負責維護一個大型的php項目,隨著項目規模的不斷擴大,代碼文檔的維護也變得越來越困難。每次添加新功能或修改現有代碼時,都需要花費大量時間更新文檔,這不僅效率低下,而且容易出錯,導致文檔與代碼不一致。為了解決這個問題,我嘗試過一些文檔生成工具,但要么過于復雜,要么功能不足,無法滿足我的需求。
直到我發現了klitsche/dog。它簡潔易用,功能強大,能夠自動分析代碼和phpdoc注釋,并生成高質量的Markdown格式文檔。這正是我夢寐以求的解決方案!
首先,我使用composer安裝klitsche/dog:
composer require --dev klitsche/dog
然后,在項目根目錄下創建.dog.yml配置文件。這個配置文件用于配置文檔生成的各種參數,例如輸出目錄、標題、自定義規則等等。一個簡單的配置文件示例如下:
title: 'My Awesome API'<br>srcPaths:<br> 'src':</p><pre class="brush:php;toolbar:false">'/.*.php$/': true
outputDir: ‘docs/api’
在這個例子中,title指定了文檔的標題,srcPaths指定了需要生成文檔的源代碼路徑(這里指定了src目錄下所有.php文件),outputDir指定了文檔的輸出目錄。
接下來,只需要運行以下命令即可生成文檔:
vendor/bin/dog
klitsche/dog會自動分析你的代碼和phpdoc注釋,并根據配置文件生成Markdown格式的文檔。你還可以使用–analyze選項只進行代碼分析,而不用生成文檔,這有助于在生成文檔之前發現潛在的文檔問題。 例如,你可以使用 vendor/bin/dog –analyze 來檢查你的代碼是否符合 PSR-19 規范。
klitsche/dog還支持自定義規則和擴展,這使得你可以根據自己的需求定制文檔生成過程。例如,你可以添加自定義規則來檢查代碼的風格和規范,或者添加自定義擴展來添加額外的信息到文檔中。 更高級的用法可以參考官方文檔:https://www.php.cn/link/39df222bffe39629d904e4883eabc654, 其中包含了更詳細的配置選項和使用方法。
使用klitsche/dog之后,我的代碼文檔維護工作效率得到了顯著提升。它不僅自動生成了高質量的文檔,而且還幫助我發現了一些代碼中的潛在問題,提高了代碼質量。 現在,我可以將更多的時間和精力投入到更重要的工作中,而不是在繁瑣的文檔編寫上浪費時間。 而且,由于文檔的自動生成,代碼和文檔始終保持一致,避免了文檔過時的問題。 這對于團隊協作和項目維護來說,都是非常重要的。 總之,klitsche/dog是一個值得推薦的PHP代碼文檔生成工具,它能極大地簡化你的工作流程,提高你的工作效率。