เบื่อกับการเขียนเอกสารประกอบโปรเจกต์ด้วยตัวเองใช่ไหม? มาทำความรู้จักกับ doxygen เครื่องมือโอเพนซอร์สที่สร้างเอกสารประกอบที่สวยงามได้โดยอัตโนมัติจากคอมเมนต์ในโค้ดของคุณอย่างรวดเร็ว ผมติดตั้งเสร็จใน 15 นาที และมันทำให้เอกสารประกอบโปรเจกต์ C++ ของผมดูเป็นมืออาชีพมาก! ในบทช่วยสอนนี้ ผมจะอธิบายว่า doxygen คืออะไร แสดงวิธีดาวน์โหลดและติดตั้ง และพาคุณสร้างเอกสารประกอบชุดแรก ไม่ว่าคุณจะเป็นนักพัฒนาหรือนักเรียน มาทำให้โค้ดของคุณเปล่งประกายด้วย doxygen กันเถอะ!
ต้องการแพลตฟอร์มแบบครบวงจรสำหรับทีมพัฒนาของคุณเพื่อทำงานร่วมกันด้วย ประสิทธิภาพสูงสุด ใช่ไหม?
Apidog ตอบสนองทุกความต้องการของคุณ และ แทนที่ Postman ได้ในราคาที่เข้าถึงง่ายกว่ามาก!
Doxygen คืออะไร? ฮีโร่เอกสารประกอบโค้ดของคุณ
Doxygen เป็นเครื่องมือฟรีและโอเพนซอร์สที่สร้างเอกสารประกอบจากซอร์สโค้ดที่มีคำอธิบายประกอบ มันจะสแกนคอมเมนต์ในโค้ดของคุณ (ในภาษาต่างๆ เช่น C++, C, Python, Java และอื่นๆ) และสร้างเอกสารในรูปแบบ HTML, PDF, หรือ LaTeX พร้อมไดอะแกรม การอ้างอิงโยง และดัชนี นี่คือเหตุผลที่ทำให้ doxygen เป็นสิ่งที่ต้องมี:
- รองรับหลายภาษา: ใช้งานได้กับ C++, C, Python, Java, PHP และอื่นๆ
- รูปแบบเอาต์พุตหลากหลาย: สร้างไฟล์ HTML, PDF, man pages หรือแม้แต่ LaTeX สำหรับการพิมพ์
- ภาพประกอบ: สร้าง call graphs และ class diagrams โดยอัตโนมัติ (ด้วย Graphviz)
- ปรับแต่งได้: ปรับแต่งเทมเพลตสำหรับเอกสารประกอบที่เป็นแบรนด์และดูเป็นมืออาชีพ
- โอเพนซอร์ส: ได้รับความไว้วางใจจากนักพัฒนา มีดาวใน GitHub มากกว่า 1.8K ดวง
ผู้ใช้เรียก doxygen ว่าเป็น “ตัวช่วยชีวิต” ในการรักษาเอกสารประกอบโปรเจกต์ให้เรียบร้อย พร้อมที่จะลองใช้หรือยัง? มาเริ่มกันเลย!
ทำไมต้องใช้ Doxygen?
Doxygen ช่วยประหยัดเวลาและจัดระเบียบเอกสารประกอบโค้ดของคุณให้เป็นระเบียบ ประโยชน์ที่ได้รับ ได้แก่:
- อัตโนมัติ: ไม่ต้องเขียนเอกสารด้วยตนเองอีกต่อไป—ดึงข้อมูลจากคอมเมนต์ในโค้ด
- เป็นมิตรกับทีม: ทำให้โค้ดเบสเข้าใจง่ายสำหรับผู้ทำงานร่วมกันหรือนักพัฒนาใหม่
- ปรับขนาดได้: จัดการได้ทั้งสคริปต์เล็กๆ หรือโปรเจกต์ขนาดใหญ่ได้อย่างง่ายดาย
- เป็นมืออาชีพ: เอกสารประกอบที่ดูดีสร้างความประทับใจให้กับลูกค้าหรืออาจารย์
ผมใช้ doxygen กับโปรเจกต์ Python และทีมของผมชอบเอกสาร HTML ที่สามารถคลิกได้มาก!
วิธีดาวน์โหลดและติดตั้ง Doxygen: คู่มือทีละขั้นตอน
มาเริ่มใช้งาน doxygen กันเถอะ ผมจะกล่าวถึง Windows, macOS และ Linux โดยได้ทดสอบบนแล็ปท็อป Windows ของผม ทำตามไปด้วยกันเลย!
1. ดาวน์โหลด Doxygen
- เยี่ยมชมเว็บไซต์อย่างเป็นทางการของ doxygen: doxygen.nl/download.html.
- เลือก OS ของคุณ:
- Windows: ดาวน์โหลดตัวติดตั้ง
.exe
(เช่นdoxygen-1.12.0.windows.x64.bin.zip
). - macOS: ดาวน์โหลดไฟล์
.dmg
หรือใช้ Homebrew (แนะนำ). - Linux: ใช้ตัวจัดการแพ็กเกจของคุณ หรือดาวน์โหลดไฟล์ไบนารี.
- สำหรับ Windows ผมดาวน์โหลดตัวติดตั้งระบบแบบ x64-bit (ประมาณ 55.1 MB ใช้เวลาไม่กี่วินาที).

ตัวเลือกเสริม: ติดตั้ง Graphviz สำหรับไดอะแกรม
- Doxygen ใช้ Graphviz สำหรับ call graphs และ class diagrams.
- ดาวน์โหลดได้ที่ graphviz.org/download หรือติดตั้งผ่าน:
- Windows: ตัวติดตั้ง
.exe
. - macOS:
brew install graphviz
. - Linux:
sudo apt-get install graphviz
(Ubuntu/Debian) หรือคำสั่งที่เทียบเท่า. - ผมติดตั้ง Graphviz เพื่อให้เอกสารดูสวยงามขึ้น—คุ้มค่าครับ!

2. ติดตั้ง Doxygen
Windows:
i. ติดตั้งโดยใช้ไฟล์ Zip x64:
- แตกไฟล์ Zip ที่ดาวน์โหลดมา.
- รัน
doxygen.exe
(ไม่ต้องติดตั้ง) หรือเพิ่มไปยัง PATH ของคุณ: - คัดลอก
doxygen.exe
ไปที่C:\Program Files\Doxygen
. - เพิ่ม
C:\Program Files\Doxygen
ไปยัง System Environment Variables > Path.
ii. ติดตั้งโดยใช้ตัวติดตั้งระบบแบบ x64:
- รันไฟล์ setup.exe ที่คุณดาวน์โหลดมา และทำตามขั้นตอนการติดตั้งง่ายๆ.
เพื่อตรวจสอบ ให้เปิด command prompt แล้วพิมพ์: doxygen --version
.

macOS (Homebrew):
brew install doxygen
ตรวจสอบ: doxygen --version
.
Linux (Ubuntu/Debian):
sudo apt-get update
sudo apt-get install doxygen
ตรวจสอบ: doxygen --version
.
3. สร้างโปรเจกต์ตัวอย่าง
มาทดสอบ doxygen ด้วยโปรเจกต์ C++ ง่ายๆ (ใช้ได้กับ Python, Java ฯลฯ ด้วยเช่นกัน).
- สร้างโฟลเดอร์:
mkdir my-doxy-project && cd my-doxy-project
. - เพิ่มไฟล์
main.cpp
:
/**
* @file main.cpp
* @brief A sample program to demonstrate Doxygen.
* @author Your Name
*/
#include <iostream>
/**
* @brief Prints a greeting message.
* @param name The name to greet.
* @return void
*/
void sayHello(const std::string& name) {
std::cout << "Hello, " << name << "!" << std::endl;
}
/**
* @brief Main function.
* @return 0 on success.
*/
int main() {
sayHello("Doxygen User");
return 0;
}
- คอมเมนต์
/** */
เหล่านี้เป็นรูปแบบที่ doxygen รองรับ พร้อมแท็กต่างๆ เช่น@brief
,@param
.
4. สร้างไฟล์กำหนดค่า Doxygen
- ในโฟลเดอร์โปรเจกต์ของคุณ ให้รันคำสั่ง:
doxygen -g Doxyfile
- คำสั่งนี้จะสร้างไฟล์
Doxyfile
พร้อมการตั้งค่าเริ่มต้น (ประมาณ 800 บรรทัด!). - แก้ไขไฟล์
Doxyfile
(ใช้โปรแกรมแก้ไขข้อความใดก็ได้) เพื่อปรับแต่ง: - ตั้งค่า
PROJECT_NAME = "My Doxy Project"
. - ตั้งค่า
OUTPUT_DIRECTORY = docs
(จะสร้างโฟลเดอร์docs
). - เปิดใช้งานไดอะแกรม (หากติดตั้ง Graphviz แล้ว):
HAVE_DOT = YES
,CALL_GRAPH = YES
. - ผมตั้งค่า
OUTPUT_DIRECTORY
เพื่อจัดระเบียบเอกสารของผมให้เรียบร้อย.
5. รัน Doxygen
- สร้างเอกสารประกอบ:
doxygen Doxyfile
- Doxygen จะสแกนไฟล์
main.cpp
และสร้างโฟลเดอร์docs
พร้อมเอาต์พุต HTML. - เปิดไฟล์
docs/html/index.html
ในเบราว์เซอร์ของคุณ คุณจะเห็นหน้าแรกที่ดูดีพร้อมชื่อโปรเจกต์ รายชื่อไฟล์ และเอกสารประกอบฟังก์ชันsayHello
ผมตื่นเต้นมากที่เห็น call graph!

6. สำรวจและปรับแต่งเอาต์พุต
- เอกสาร HTML: เมนูที่คลิกได้ รายละเอียดฟังก์ชัน และ (หากเปิด Graphviz) ไดอะแกรม.
- เอาต์พุต PDF: ในไฟล์
Doxyfile
ให้ตั้งค่าGENERATE_LATEX = YES
แล้วรันคำสั่ง:
cd docs/latex
make
คำสั่งนี้จะสร้างไฟล์ refman.pdf
คุณสามารถเปิดโฟลเดอร์ latex ในโปรแกรมแก้ไขเทมเพลต latex และดูผลลัพธ์ได้! ผมลองใช้ Overleaf ซึ่งเป็นโปรแกรมแก้ไข LaTex ออนไลน์ โดยเพียงแค่ลากและวางไฟล์สองสามไฟล์เข้าไป แล้วรันโปรเจกต์เพื่อดูเอาต์พุต ง่ายมาก!

- ปรับแต่ง: แก้ไขไฟล์
Doxyfile
สำหรับใส่โลโก้, ธีม, หรือตัวกรอง (เช่นHTML_HEADER
สำหรับ CSS ที่กำหนดเอง). - คุณสามารถเพิ่มโลโก้ลงในเอกสาร HTML ของคุณเพื่อให้ดูเป็นมืออาชีพสุดๆ ได้!

การแก้ไขปัญหา Doxygen
- ไม่มีเอาต์พุต? ตรวจสอบ
INPUT
ในไฟล์Doxyfile
(ควรมีโฟลเดอร์โค้ดของคุณ) และรันdoxygen Doxyfile
อีกครั้ง. - ไดอะแกรม Graphviz หายไป? ตรวจสอบให้แน่ใจว่าติดตั้ง Graphviz แล้ว และตั้งค่า
HAVE_DOT = YES
ในไฟล์Doxyfile
. - ไม่พบคำสั่ง? เพิ่ม doxygen ไปยัง PATH ของคุณ หรือติดตั้งใหม่.
- ต้องการความช่วยเหลือ? ตรวจสอบที่ doxygen.nl/manual หรือ Stack Overflow.
การปรับแต่งและขยายขีดความสามารถของ Doxygen
ยกระดับการใช้งาน doxygen ของคุณ:
- แท็กที่กำหนดเอง: ใช้
@note
,@warning
หรือชื่อแทน (aliases) ที่กำหนดเองในคอมเมนต์. - รองรับ Markdown: เขียนคอมเมนต์ในรูปแบบ Markdown เพื่อการจัดรูปแบบที่หลากหลายยิ่งขึ้น.
- ตัวกรอง (Filters): สร้างเอกสารประกอบสำหรับภาษาที่ไม่รองรับ (เช่น สคริปต์เชลล์) ด้วยตัวกรองที่กำหนดเอง.
- การเชื่อมต่อกับ CI: เพิ่ม doxygen ไปยัง GitHub Actions เพื่อสร้างเอกสารประกอบโดยอัตโนมัติ.
ผมเพิ่มคอมเมนต์แบบ Markdown ในโปรเจกต์ Python ของผม—เอกสารประกอบออกมาดูเรียบร้อยมาก!
ข้อคิดสุดท้าย: ทำไม Doxygen ถึงเป็นสิ่งที่ต้องมีสำหรับการทำเอกสารประกอบ
Doxygen เป็นเครื่องมือที่ทรงพลังสำหรับการทำเอกสารประกอบโค้ด ช่วยทำงานที่น่าเบื่อให้เป็นอัตโนมัติอย่างมีสไตล์ การรองรับหลายภาษาและเอาต์พุตที่หลากหลายนั้นดีกว่าการเขียนเอกสารด้วยตนเองอย่างแน่นอน ใช่ ไฟล์ Doxyfile
อาจดูซับซ้อน แต่ คู่มือ doxygen ก็เป็นตัวช่วยชีวิต เมื่อเทียบกับเครื่องมืออย่าง Sphinx แล้ว doxygen โดดเด่นเป็นพิเศษสำหรับโปรเจกต์ C/C++ ที่มีกราฟแสดงภาพ.
พร้อมที่จะทำเอกสารประกอบแบบมืออาชีพหรือยัง? ติดตั้ง doxygen สร้างเอกสารเหล่านั้น แล้วแชร์การตั้งค่าของคุณให้ดูด้วย—ผมตื่นเต้นที่จะได้เห็นผลลัพธ์ของคุณ!
ต้องการแพลตฟอร์มแบบครบวงจรสำหรับทีมพัฒนาของคุณเพื่อทำงานร่วมกันด้วย ประสิทธิภาพสูงสุด ใช่ไหม?
Apidog ตอบสนองทุกความต้องการของคุณ และ แทนที่ Postman ได้ในราคาที่เข้าถึงง่ายกว่ามาก!