検索
ホームページバックエンド開発PHPチュートリアル[オリジナル] doxygen を使用してプロジェクトのドキュメントやコメントを管理する、doxygen project_PHP チュートリアル

[オリジナル] doxygen を使用してプロジェクトのドキュメントやコメントを管理する、doxygen プロジェクト

1. Doxygen アプリケーションのシナリオ:

doxygen を使用すると、現在の主流のプログラミング言語でコメントを管理し、ドキュメント システムを形成できます。 (C、C++、C#、Objective-C、IDL、Java、VHDL、PHP、Python、Tcl、Fortran などが含まれます)。 Doxygen 公式 Web サイトのアドレス (http://www.doxygen.nl/) 最近、API インターフェイスのメンテナンスにほとんどの時間が費やされています。より重要な側面の 1 つは、作成したインターフェイスによって呼び出し元がどのように理解できるかということです。使い方が一目でわかります。それは社内の無線サーバーとクライアントの連携であっても、外部に公開されたAPIインターフェースであっても同様です。インターフェイスドキュメントを管理するために doxygen と svn フックを組み合わせて数日試してみたところ、これは非常に便利で実用的でした。 doxygen 公式 Web サイト自体は実際に doxygen を使用して実行しています。より具体的な効果を確認したい場合は、http://www.doxygen.nl/ を直接参照してください。

以下に私が作成したレンダリングの一部を掲載します。実際に使用するときは、会社の UI 部門に美化を依頼してください。私はこれを主にイントラネットで使用しています。 UI エクスペリエンスについてはあまりにも詳しくありません:

2. インストール:

doxygen は現在、Windows、Mac OX、Linux などの主流システムを完全にサポートしています。そしてそれは基本的に、現在主流のすべてのプログラミング言語で使用されています。ここでは、ubuntu システムでのソース コードのコンパイルとインストールのプロセスを簡単に紹介します。その他のインストール方法は公式サイトをご覧ください。

3. doxygen 設定ファイルを使用する設定:

doxygen の使用は、設定ファイルの設定であると言えます。つまり、必要なドキュメントを生成するには、設定ファイルを少し設定してからコマンド xxxx/doxygen xxxx.conf を実行するだけです。 (doxygen はここで提供します) 複数の形式のドキュメントの場合、私は主に HTML を使用するため、この HTML 上で Web サービスを構成し、Web 上でドキュメントを使用できます )、doxygen は構成を通じて 200 以上の構成アイテムを提供します。このファイルにはすでに豊富な機能が備わっています。一般的に使用される構成手順をいくつか示します。

  • コマンド xxx/doxygen -g を使用して、現在のディレクトリにデフォルト設定ファイル doxygen.conf を生成します。デフォルトの設定ファイルを開くと、その中の各設定項目が 設定名 設定値 🎜 というキーと値の形式になっていることがわかります。ある程度の英語の知識があれば、設定は基本的に問題ありません。
  • 詳しい構成手順については、http://www.stack.nl/~dimitri/doxygen/manual/config.htmlを参照してください。
  • ABBREVIATE_BRIEF SaliaSes // エイリアス
  • ALLEXTERNALS //すべての外部ドキュメント
  • ALPHABETICAL_INDEX //アルファベット順のインデックス
  • ALWAYS_DETAILED_SEC //詳細説明部分
  • BINARY_TOC
  • BRIEF_MEMBER_DESC //メンバーの短い説明
  • RCall_Graph //
  • を呼び出します
  • CASE_SENSE_NAMES //検出された例の名前
  • Lechm_file // chm形式ファイル
  • クラス図
  • CLASS_GRAPH
  • DOT_PATH _
  • dot_transparent//ドット変換設定
  • DOTFILE_DIRS
  • ENABLE_PREPROCESSING //「前処理」命令を許可します
  • ENUM_VALUES_PER_LINE //各行の列挙値
  • ENABLED_SECTIONS // 分割表示を許可する
  • EXAMPLE_PATH _Example_patterns // ファイル形式 (*.cpp、*.h、*.java など)
  • EXAMPLE_RECURSIVE OrCollaboration_Graph // 相互関係を呼び出します
  • COLS_IN_ALPHA_INDEX // アルファベット順のインデックスを列形式で表示します
  • COMPACT_LATES
  • compact_rtf
  • //圧縮rtfdocument
  • CREATE_SUBDIRS
  • //「サブディレクトリ」を作成します
  • DETAILS_AT_TOP
  • DIRECTORY_GRAPH
  • DISABLE_INDEX distribute_group_doc
  • DOT_IMAGE_FORMAT
  • DOT_MULTI_TARGETS
  • // 複数の DOT ターゲット
  • 除外
  • EXCLUDE_PATTERNS // 実行可能ファイル形式 (*.exe、*.dll など)
  • EXCLUDE_SYMLINKS // 実行可能SYMLINKS
  • EXPAND_AS_DEFINED expand_only_predef
  • EXTERNAL_GROUPS ​​​​
  • EXTRACT_ALL EXTRACT_LOCAL_CLASSES
  • //すべてのローカルクラスを抽出します
  • EXTRACT_LOCAL_METHODS
  • //すべてのローカルメソッドを抽出します
  • EXTRACT_PRIVATE
  • EXTRACT_STATIC
  • ファイルパターン FILE_VERSION_FILTER
  • // ファイルのバージョン管理
  • ​​​​ FILTER_SOURCE_FILES
  • // 元のファイルのバージョン管理
  • full_path_names
  • GENERATE_AUTOGEN_DEF
  • //自動定義ファイル形式を生成 generate_buglist generate_chi
  • GENERATE_DEPRECIATELIST //「評価」リストを生成します generate_html
  • GENERATE_HTMLHELP // HTMLHELP を生成します
  • generate_latex
  • generate_legend generate_man
  • GENERATE_PERLMOD // Perl スクリプトを生成します
  • generate_rtf
  • generate_tagfile
  • GENERATE_TESTLIST //テストリストを生成します
  • GENERATE_TODOLIST // TODOLIST を生成します
  • GENERATE_TREEVIEW // ツリービュー表示を生成します
  • generate_xml graphical_hierarchy
  • GROUP_GRAPHS
  • have_dot
  • HHC_LOCATION
  • HIDE_FRIEND_COMPOUNDS
  • //「複合」友達タイプを非表示
  • HIDE_IN_BODY_DOCS
  • //ドキュメントの本文を隠す hide_scope_names Nhide_undoc_classes // 全クラス
  • NHide_undoc_members // 「Unpayable Archive」のメンバー全員
  • HIDE_UNDOC_RELATIONS //「アーカイブされていない」関係を非表示
  • HTML_ALIGN_MEMBERS //HTML ドキュメント内のメンバーの配置 html_footer html_header
  • html_output
  • html_stylesheet ignore_prefix
  • PImage_path
  • // 画像のパス
  • lude_graph
  • Include_path DInherit_docs // ドキュメントの継承関係
  • line_info
  • INLINE_INHERITED_MEMB
  • //「継承」によって取得されたインラインメンバー ​​​​
  • 入力
  • INPUT_FILTER // 許容可能な入力ファイル拡張子の形式設定 (重要)
  • Internal_docs
  • JAVADOC_AUTOBRIEF // JAVADOC ツールによって生成されたドキュメントの「自動要約」
  • latex_batchmode
  • latex_cmd_name latex_header
  • latex_hide_indices
  • latex_output MACRO_EXPANSION
  • // マクロ展開設定 (重要)
  • MAKEINDEX_CMD_NAME
  • //MAKEINDEX コマンドインデックス
  • man_extension
  • man_links
  • man_output MAX_DOT_GRAPH_DEPTH
  • //DOT グラフの最大深さ
  • MAX_DOT_GRAPH_HEIGHT
  • //DOT グラフの最大の高さ
  • max_dot_graph_width
  • MAX_INITIALIZER_LINES //最大初期化行数
  • MULTILINE_CPP_IS_BRIEF // 複数の CPP ファイルの簡単な説明
  • MULTILINE_CPP_IS_BRIEF // 複数の CPP ファイルの簡単な説明
  • OPTIMIZE_OUTPUT_FOR_C //C の最適化設定
  • OPTIMIZE_OUTPUT_JAVA //JAVAの最適化設定
  • OUTPUT_DIRECTORY // 出力パスの設定(重要)
  • OUTPUT_LANGUAGE // 出力言語設定 (重要)
  • PAPER_TYPE _
  • PDF_HYPERLINKS // PDF 形式のハイパーリンク設定 (重要)
  • PERL_PATH PERLMOD_LATEX
  • //perlmod LATEX
  • perlmod_pretty
  • PERLMOD_MAKEVAR_PREFIX
  • //perlmod MAKE ファイルのバージョン PREFIX predefined
  • PROJECT_NAME PROJECT_NUMBER
  • // プロジェクトメンバー (重要)
  • 静かに
  • Recursive
  • REFERENCED_BY_RELATION //相互参照 (重要)
  • S References_relation // 相互参照間の関係 RRepeat_brief // 「簡単な説明」を再設定すると、状態が開きます
  • rtf_extensions_file
  • RTF_HYPERLINKS
  • RTF_OUTPUT
  • rtf_stylesheet_file
  • InSearch_includes // 何を含める必要がありますか (重要) searchengine AShort_names
  • //
  • SHOW_DIRECTORIES // ディレクトリを表示
  • SHOW_INCLUDE_FILES // 含まれているファイルを表示します (通常は NO、それ以外の場合は大きすぎます)
  • SShow_used_files
  • // ファイルを表示します (一般的に YES)
  • SKIP_FUNCTION_MACROS
  • sort_brief_docs
  • SORT_MEMBER_DOCS // メンバーの簡単な説明
  • SOURCE_BROWSER
  • STRIP_CODE_COMMENTS
  • //どのバーコードフォームのコメントを除外します(重要)
  • STRIP_FROM_INC_PATH
  • // コメントが含まれるヘッダー ファイルを除外します (重要)
  • STRIP_FROM_PATH
  • // どのバーコードパス設定が除外されます
  • サブグループ化
  • Ztab_sizea // タブ文字のSIZE設定(重要)
  • タグファイル
  • TEMPLATE_RELATIONS // テンプレートの関係設定 (重要)
  • TOC_EXPAND WTreeView_width
  • // 樹形図で表示される幅の設定(重要)
  • uml_look
  • USE_WINDOWS_ENCODING //Windowsシステムのエンコーディング形式を使用します(重要)
  • VERBATIM_HEADERS //VERBATIM ヘッダー (ヘッダー ファイル)
  • Mwarn_Formatar // 警告形式は (重要) を指定します
  • _Warn_if_doc_error //
  • WARN_IF_UNDOCUMENTED
  • //アーカイブされていないファイルの場合に警告を表示します
  • WARN_LOGFILE
  • WARN_NO_PARAMDOC // パラメータなしのドキュメント警告フォーム設定
  • warnings XML_DTD
  • XML_OUTPUT
  • XML_PROGRAMLISTING //XML プログラムリスト (重要)
  • 4. doxygenの設定が完了したらコメントを書く doxygen を設定した後は、基本的にコード内のコメントの作成と保守に時間を費やします。 doxygen を使ってドキュメントを管理したいと考えています。その場合、コードのコメントは厳密に必須である必要はありません。 リーリー
  • 仕様に従ってコメントを記述した後、ページドキュメントに表示される効果は次のとおりです:
  • 書き方のルールはプロジェクト内で事前に合意しておくことができ、後はそのルールに従って整備するだけで済みます。もちろん、結局のところ人間は人間なので、すべてのコードが期待されるアノテーション ルールに従って記述できることを保証することは不可能です。したがって、ログ ファイルへのパスは doxygen 設定ファイルで指定できます。このログ ファイルを有効に活用し、対応するスクリプト言語で小さなコードを記述してログ ファイルを分析し、人道的な方法で Web ページに表示することができます。指定管理者は注釈エラーログを定期的に確認し、誤った注釈内容を直ちに修正します。
  • 5. doxygen のよく使われる機能 doxygen の機能は上で紹介したものよりもはるかに豊富で、これを使用したい人は、doxygen の公式 Web サイトにアクセスして学ぶことができます。この記事の転載は自由ですが、必ず出典を明記してください。

    http://www.bkjia.com/PHPjc/922301.html
  • www.bkjia.com

  • tru​​e

http://www.bkjia.com/PHPjc/922301.html

技術記事
  • [原文] doxygen を使用してプロジェクトのドキュメントまたはコメントを管理する、doxygen プロジェクト 1、doxygen アプリケーション シナリオ: doxygen を使用して、現在の主流のプログラミング言語でコメントを管理し、ドキュメント システムを形成できます...

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
誇大広告を超えて:今日のPHPの役割の評価誇大広告を超えて:今日のPHPの役割の評価Apr 12, 2025 am 12:17 AM

PHPは、特にWeb開発の分野で、最新のプログラミングで強力で広く使用されているツールのままです。 1)PHPは使いやすく、データベースとシームレスに統合されており、多くの開発者にとって最初の選択肢です。 2)動的コンテンツ生成とオブジェクト指向プログラミングをサポートし、Webサイトを迅速に作成および保守するのに適しています。 3)PHPのパフォーマンスは、データベースクエリをキャッシュおよび最適化することで改善でき、その広範なコミュニティと豊富なエコシステムにより、今日のテクノロジースタックでは依然として重要になります。

PHPの弱い参照は何ですか、そしていつ有用ですか?PHPの弱い参照は何ですか、そしていつ有用ですか?Apr 12, 2025 am 12:13 AM

PHPでは、弱い参照クラスを通じて弱い参照が実装され、ガベージコレクターがオブジェクトの回収を妨げません。弱い参照は、キャッシュシステムやイベントリスナーなどのシナリオに適しています。オブジェクトの生存を保証することはできず、ごみ収集が遅れる可能性があることに注意する必要があります。

PHPで__invoke Magicメソッドを説明してください。PHPで__invoke Magicメソッドを説明してください。Apr 12, 2025 am 12:07 AM

\ _ \ _ Invokeメソッドを使用すると、オブジェクトを関数のように呼び出すことができます。 1。オブジェクトを呼び出すことができるように\ _ \ _呼び出しメソッドを定義します。 2。$ obj(...)構文を使用すると、PHPは\ _ \ _ Invokeメソッドを実行します。 3。ロギングや計算機、コードの柔軟性の向上、読みやすさなどのシナリオに適しています。

同時性については、PHP 8.1の繊維を説明します。同時性については、PHP 8.1の繊維を説明します。Apr 12, 2025 am 12:05 AM

繊維はPhp8.1で導入され、同時処理機能が改善されました。 1)繊維は、コルーチンと同様の軽量の並行性モデルです。 2)開発者がタスクの実行フローを手動で制御できるようにし、I/O集約型タスクの処理に適しています。 3)繊維を使用すると、より効率的で応答性の高いコードを書き込むことができます。

PHPコミュニティ:リソース、サポート、開発PHPコミュニティ:リソース、サポート、開発Apr 12, 2025 am 12:04 AM

PHPコミュニティは、開発者の成長を支援するための豊富なリソースとサポートを提供します。 1)リソースには、公式のドキュメント、チュートリアル、ブログ、LaravelやSymfonyなどのオープンソースプロジェクトが含まれます。 2)StackOverFlow、Reddit、およびSlackチャネルを通じてサポートを取得できます。 3)開発動向は、RFCに従うことで学ぶことができます。 4)コミュニティへの統合は、積極的な参加、コード共有への貢献、および学習共有への貢献を通じて達成できます。

PHP対Python:違いを理解しますPHP対Python:違いを理解しますApr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHP:それは死にかけていますか、それとも単に適応していますか?PHP:それは死にかけていますか、それとも単に適応していますか?Apr 11, 2025 am 12:13 AM

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

PHPの未来:適応と革新PHPの未来:適応と革新Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません