ViVa! Saborigineer.
eclox
最終更新:
saborigineer
-
view
Eclipseとdoxygenの連携
doxygenの設定はGUIでできるし、ボタン1つでドキュメントの生成もできるし。
何より、C/C++の開発環境がJAVAの開発環境にグッと近くなります。
何より、C/C++の開発環境がJAVAの開発環境にグッと近くなります。
こんなことを実現してくれるEclipseプラグインがあるんです。
…それは「eclox」。
…それは「eclox」。
これについては、日本語の説明サイトが見つからなかったのでちゃんと書きたいと思います。
Ecloxのインストール
インストールは簡単です。
ⅰ.Eclipseを起動する。
ⅱ.「ヘルプ」→「ソフトウェア更新」→「検索およびインストール」を選択
ⅲ.「インストールする新規フィーチャーを検索」を選び、「次へ」
ⅳ.「新規リモート・サイト」で、「http://download.gna.org/eclox/update」を登録。(名前は適当に)
ⅴ.「終了」で自動的にインストールがスタートします。
ⅱ.「ヘルプ」→「ソフトウェア更新」→「検索およびインストール」を選択
ⅲ.「インストールする新規フィーチャーを検索」を選び、「次へ」
ⅳ.「新規リモート・サイト」で、「http://download.gna.org/eclox/update」を登録。(名前は適当に)
ⅴ.「終了」で自動的にインストールがスタートします。
ecloxの公式サイトからファイルをダウンロードし、展開後、Eclipseの「plugin」ディレクトリにコピーしてもよいでしょう。
使い方
既にCDTを利用した環境があること&doxygenコメント付きのソースファイルがあることを前提とします。
doxygenの設定ファイルを作る
ⅰ.Eclipseのメニューの「ファイル」等から、「新規」→「その他」→「その他」→「Doxyfile」を選択。
ⅱ.ファイル名、配置場所等を記入すると、doxygenの設定ファイルが作成されます。
ⅲ.作成された設定ファイルをダブルクリックすると、(英語だけど)GUIによる編集でできます。
設定項目等については、こちらなどを参照してください。
ⅱ.ファイル名、配置場所等を記入すると、doxygenの設定ファイルが作成されます。
ⅲ.作成された設定ファイルをダブルクリックすると、(英語だけど)GUIによる編集でできます。
設定項目等については、こちらなどを参照してください。
doxygenでドキュメントを作成する
ⅰ.doxygenの設定ファイルを選択し、右クリック
ⅱ.「Build Documentation」をクリック。
ⅱ.「Build Documentation」をクリック。
以上でおしまいです。設定ファイルの内容に従い、結果が出力されているはず。
Eclipseのメニュー部分にある「@」アイコンを選択してもOKです。
Eclipseのメニュー部分にある「@」アイコンを選択してもOKです。
おまけ
doxygenはドキュメント用コメントのエラーも検出してくれる!
これは筆者も驚いたのですが、ecloxを使うことでコメントのエラー(正確にはワーニング)も検出されるようになるようです。
例えば、以下のように引数の部分に不整合がある場合、(ちっちゃい)「!」アイコンで知らせてくれます。
/** * ~処理関数 * @param なし */ void xxxxx(int a) { … }
所感
あくまで個人的感想ですが、doxygen自体、非常に有効なツールですが、
Eclipseと連携できることにより、さらに有効性が高くなるように思います。
Eclipseと連携できることにより、さらに有効性が高くなるように思います。
簡単にドキュメントが作成されることに加え、実際のソースコードとの整合もチェックしてくれるので、
結果として精度の高いドキュメントが作成できるのではないでしょうか。
結果として精度の高いドキュメントが作成できるのではないでしょうか。
ソースコードに修正が入った場合でも、コメントもあわせて修正しておけば関数仕様書は常に最新となるので、
このあたりもjavaでの開発の感覚と近いですよね。
(doxygenの設定ファイルをCVSで共有すればメンバーが多くても困りませんし)
このあたりもjavaでの開発の感覚と近いですよね。
(doxygenの設定ファイルをCVSで共有すればメンバーが多くても困りませんし)
あとはC/C++系でこういったドキュメントがどこまで理解されるかですね。
幸い、筆者の顧客や上司は理解してくれたのでよかったのですが、品質管理等の規則的には難しいところもあるでしょうね…。
幸い、筆者の顧客や上司は理解してくれたのでよかったのですが、品質管理等の規則的には難しいところもあるでしょうね…。