كيفية كتابة وثائق تقنية مع أمثلة

Emmanuel Mumba

Emmanuel Mumba

9 يونيو 2025

كيفية كتابة وثائق تقنية مع أمثلة

فكر في الوثائق التقنية على أنها المصافحة بين الأشخاص الذين يبنون المنتج والأشخاص الذين يستخدمونه. سواء كنت تكتب أدلة واجهات برمجة التطبيقات (API)، أو أدلة المستخدم، أو تعليمات الإعداد للأعضاء الجدد في الفريق، فإن الحفاظ على الوضوح والبساطة يجعل الحياة أسهل بكثير لجميع المعنيين. لا أحد يريد البحث في وثائق مربكة أو غير كاملة عندما يريد فقط إنجاز الأمور. في هذه الأيام، لم تعد الوثائق الجيدة مجرد شيء لطيف وجوده - إنها أساسًا أمر لا بد منه إذا كنت تريد أن يتم استخدام منتجك وحبه بالفعل.

💡
نصيحة احترافية: قبل أن تبدأ في كتابة الوثائق يدويًا، جرب أدوات مثل Apidog. تقوم بإنشاء وثائق تفاعلية لواجهات برمجة التطبيقات (API) تلقائيًا من مواصفات OpenAPI/Swagger الخاصة بك، وتساعدك على محاكاة نقاط النهاية، وحتى التحقق من صحة استجابات واجهة برمجة التطبيقات الخاصة بك - مما يجعل الكتابة التقنية أسرع وأكثر ذكاءً.
زر

في هذا الدليل، سنغطي كل ما تحتاجه لكتابة وثائق تقنية ممتازة، حتى لو لم تكن كاتبًا محترفًا. سنعرض لك أيضًا أمثلة ونماذج لمساعدتك على البدء.


لماذا تعتبر الوثائق التقنية مهمة

تخدم الوثائق التقنية جمهورًا متعددًا - المطورين والمصممين والمختبرين والمستخدمين وأصحاب المصلحة - وتؤدي مجموعة من الوظائف:

المشروع الموثق جيدًا لا يساعد المستخدمين فحسب - بل يجذب المساهمين. في الواقع، تظهر بيانات GitHub أن المشاريع ذات الوثائق الواضحة والشاملة تتلقى تفاعلاً أكبر بكثير وطلبات سحب (pull requests) من مجتمع المطورين.

أنواع الوثائق التقنية

هناك أشكال مختلفة من الوثائق التقنية حسب الجمهور وحالة الاستخدام:

1. وثائق واجهة برمجة التطبيقات (API)

صورة توضيحية لوثائق واجهة برمجة التطبيقات (API)

يستخدمها المطورون لفهم كيفية التكامل والتفاعل مع واجهات برمجة التطبيقات. تتضمن هذه الوثائق نقاط النهاية، المعلمات، تنسيقات الاستجابة، رموز الحالة، الأمثلة، وملاحظات الاستخدام.

مثال: وثائق واجهة برمجة تطبيقات Stripe تعرض نقاط نهاية للمدفوعات، واستجابات مع أمثلة JSON، وعينات كود في الوقت الفعلي بلغات متعددة.

2. أدلة المستخدم

صورة توضيحية لدليل المستخدم

يستخدمها المستخدمون النهائيون لفهم كيفية تشغيل منتجات البرامج أو الأجهزة. قد تكون مطبوعة أو رقمية أو مدمجة في المنتج.

مثال: قد يتضمن تطبيق سطح المكتب دليل مساعدة مدمجًا للمستخدمين لأول مرة يشرح كيفية التنقل في الواجهة.

3. أدلة المطورين

صورة توضيحية لدليل المطورين

تشرح هذه الوثائق الإعداد والتكوين والهندسة لمساعدة المهندسين على فهم كيفية عمل النظام داخليًا.

مثال: وثائق الإعداد للمطورين الجدد التي تتضمن هيكل المستودع، عمليات CI/CD، وسير عمل التطوير الشائع.

4. وثائق هندسة النظام

صورة توضيحية لوثائق هندسة النظام

هذه وثائق داخلية تحدد كيفية تفاعل الأنظمة المختلفة. تتضمن الرسوم البيانية والبروتوكولات وتفاصيل خدمات الجهات الخارجية.

مثال: وثيقة توضح كيف تتواصل الخدمات المصغرة عبر Kafka والفريق الذي يمتلك كل جزء.

5. ملاحظات الإصدار وسجلات التغيير

وصف موجز للتحديثات والإصلاحات والميزات التي تم شحنها في كل إصدار. هذه ضرورية للمستخدمين وفرق ضمان الجودة الداخلية.

مثال: "الإصدار 1.2.3 – تمت إضافة الوضع الداكن، تم إصلاح مشكلة تسجيل الدخول على Safari، وتم إهمال نقطة النهاية v1/login."


كيف تكتب وثائق تقنية رائعة

اتبع هذه الخطوات لضمان الوضوح وسهولة الاستخدام:

1. فهم الجمهور

صورة توضيحية لفهم الجمهور المستهدف

قبل كتابة أي شيء، حدد لمن تكتب. مطورين؟ مستخدمين نهائيين؟ أصحاب مصلحة غير تقنيين؟ تخصيص النبرة والهيكل للجمهور يزيد من الفعالية.

افعل:

لا تفعل:

2. تحديد النطاق والأهداف

صورة توضيحية لتحديد النطاق والأهداف

ماذا يجب أن يكون القارئ قادرًا على فعله بعد قراءة وثيقتك؟ هل تشرح ميزة أم تمر عبر عملية تكامل؟

مثال: "بنهاية هذا الدليل، ستعرف كيفية مصادقة المستخدمين باستخدام OAuth2."

3. وضع مخطط تفصيلي قبل الكتابة

صورة توضيحية لوضع مخطط تفصيلي للكتابة

ابدأ بمخطط تفصيلي بسيط. قم بتقسيمه إلى أقسام:

يساعدك هذا في الحفاظ على الهيكل وتجنب تكرار المحتوى.

4. اكتب بوضوح وإيجاز

صورة توضيحية للكتابة بوضوح وإيجاز

استخدم لغة بسيطة وموجزة. تجنب الفقرات الطويلة. قسّم الأفكار المعقدة إلى نقاط تعداد نقطي أو خطوات.

نصيحة: اكتب كما لو كنت تشرح الأمر لنفسك في المستقبل بعد 6 أشهر من الابتعاد عن المشروع.

5. إضافة أمثلة وحالات استخدام

لا تصف فقط - أظهر. أضف كودًا يمكن نسخه ولصقه، ولقطات شاشة، وسيناريوهات واقعية.

مثال:

curl -X POST <https://api.example.com/v1/user> \\
  -H 'Authorization: Bearer <token>' \\
  -d '{"name": "Jane Doe"}'

6. استخدام تنسيق متناسق

استخدم عناوين وخطوط وأنماط كتل الكود وسلوك روابط متناسق. يمكن أن تساعد في ذلك منصات Markdown أو منصات التوثيق مثل Mintlify أو ReadMe.

نصيحة حول الأداة: استخدم أدوات التحقق من الأنماط (linters) مثل Vale لفرض أدلة الأنماط.

7. اختبار كل شيء

اتبع وثائقك كما لو كنت مستخدمًا جديدًا. تأكد من أن الأوامر والروابط وعينات الكود تعمل بالفعل.

لا تفعل: النشر دون اختبار جميع الأوامر.

8. تضمين أقسام استكشاف الأخطاء وإصلاحها

ساعد القراء على حل المشكلات الشائعة دون الاتصال بالدعم.

مثال:

المشكلة: تلقي خطأ 401 Unauthorized.
الحلBearer

الأخطاء الشائعة في الوثائق التقنية (مع أمثلة)

محتوى قديم:

مثال:

# DON'T DO THIS: Old API endpoint
POST /v1/login

بدلاً من ذلك، قم بالتحديث إلى:

POST /v2/auth/login

كثرة المصطلحات الفنية:

بدلاً من:

"مصادقة المستخدمين عبر OAuth 2.0 باستخدام تدفق المنح الضمني."

اكتب:

"مصادقة المستخدمين عن طريق السماح لهم بتسجيل الدخول باستخدام حساباتهم الحالية (مثل Google أو Facebook). يستخدم هذا OAuth 2.0، وهي طريقة آمنة للسماح بالوصول دون مشاركة كلمات المرور."

لا توجد أمثلة:

تضمين مقتطفات الكود:

curl -X POST <https://api.example.com/login> \\
     -H "Content-Type: application/json" \\
     -d '{"email": "user@example.com", "password": "mypassword"}'

تنسيق فوضوي:

استخدم نقاط التعداد النقطي والعناوين وكتل الكود لتقسيم النص.

تجاهل ملاحظات المستخدمين:

أضف قسمًا أو رابطًا للملاحظات:

”هل وجدت خطأ مطبعيًا أو تريد اقتراح تحسين؟ أرسل ملاحظاتك هنا“

أفضل الممارسات للوثائق التقنية

اعرف أدواتك

استخدم منصات التوثيق التي تدعم تحديد الإصدار، والملاحظات، والمعاينات المباشرة. تشمل الخيارات الشائعة:

استخدام الرسوم البيانية والمرئيات

أحيانًا يشرح رسم بياني واحد أكثر من صفحة كاملة من النص.

حافظ على تحديثها

الوثائق القديمة أسوأ من عدم وجود وثائق على الإطلاق. اجعل التحديثات جزءًا من دورة إصداراتك.

إصدار وثائقك

بالنسبة لواجهات برمجة التطبيقات أو الأنظمة التي تتغير، قم بتوثيق التغييرات حسب الإصدار. تساعد أدوات مثل Apidog أو Bump في أتمتة ذلك.

نصائح للتعاون وسير العمل في الوثائق (مع أمثلة)

التحكم في الإصدار:

استخدم GitHub للوثائق:

git clone <https://github.com/yourproject/docs.git>
git checkout -b feature/update-auth-docs
# Make edits, commit, and create a pull request for review

مراجعات الأقران:

تضمين قائمة مراجعة للمراجعين:

تحديثات منتظمة:

صورة توضيحية للتحديثات المنتظمة

أضف هذا التذكير في أداة إدارة مشروعك:

”تحديث الوثائق مستحق لإصدار v1.3.“

دمج الوثائق مع التطوير:

استخدم نماذج المشكلات التي تطالب بتحديثات الوثائق عند تغيير الكود:

### Does this PR require documentation updates?
- [ ] Yes
- [ ] No


المزيد من الأمثلة: رسائل الخطأ واستكشاف الأخطاء وإصلاحها

شرح الخطأ:

### Error: 401 Unauthorized
This error occurs when your API token is missing or invalid.

تقديم الحلول:

### Fix
1. Check if your API token is expired.
2. Include the token in your request headers as:
   `Authorization: Bearer YOUR_TOKEN_HERE`

دليل خطوة بخطوة:

### Troubleshooting 401 Error
1. Verify your token is correctly copied.
2. Confirm your token has not expired (tokens last 24 hours).
3. Ensure your request includes the header:
   `Authorization: Bearer YOUR_TOKEN`
4. Retry the request.

مثال واقعي: توثيق مواصفات OpenAPI

صورة توضيحية لمواصفات OpenAPI

لنفترض أنك قمت ببناء واجهة برمجة تطبيقات RESTful لنظام مصادقة أساسي بثلاث نقاط نهاية: /login و /register و /getUser. فيما يلي مقتطف موسع وصديق للمطورين يوضح كيف يمكن أن تبدو الوثائق الرائعة.


🔹 نقطة النهاية: POST /login

الوصف: يقوم بمصادقة مستخدم باستخدام البريد الإلكتروني وكلمة المرور. يعيد رمز JWT إذا كان ناجحًا.

رؤوس الطلب:

Content-Type: application/json

جسم الطلب:

{
  "email": "user@example.com",
  "password": "securePassword123"
}

استجابة النجاح:

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "expires_in": 3600
}

استجابات الخطأ:

مثال طلب cURL:

curl -X POST <https://api.example.com/login> \\
  -H "Content-Type: application/json" \\
  -d '{"email": "user@example.com", "password": "securePassword123"}'


🔹 نقطة النهاية: POST /register

الوصف: يسجل مستخدمًا جديدًا في النظام.

جسم الطلب:

{
  "email": "newuser@example.com",
  "password": "newUserPassword",
  "confirm_password": "newUserPassword"
}

الاستجابة:

{
  "message": "User registered successfully.",
  "user_id": "12345"
}

الأخطاء:

مثال طلب cURL:

curl -X POST <https://api.example.com/register> \\
  -H "Content-Type: application/json" \\
  -d '{"email": "newuser@example.com", "password": "newUserPassword", "confirm_password": "newUserPassword"}'


🔹 نقطة النهاية: GET /getUser

الوصف: يسترجع ملف تعريف المستخدم الحالي باستخدام رمز المصادقة.

الرؤوس:

Authorization: Bearer <your_token_here>

الاستجابة:

{
  "id": "12345",
  "email": "user@example.com",
  "created_at": "2025-06-01T12:34:56Z"
}

الأخطاء:

مثال طلب cURL:

curl -X GET <https://api.example.com/getUser> \\
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."


أدوات كتابة واستضافة الوثائق التقنية


الخلاصة

كتابة وثائق تقنية ممتازة هي فن وعلم في آن واحد. من خلال فهم جمهورك، واتباع عملية منظمة، واستخدام أمثلة واقعية، يمكنك إنشاء وثائق لا تدعم مستخدميك فحسب، بل تعزز منتجك أيضًا.

الوثائق الواضحة تقلل الاحتكاك، وتبني الثقة، وتحسن التعاون. سواء كنت مطورًا، أو مدير منتج، أو كاتبًا تقنيًا، فإن استثمار الوقت في كتابة الوثائق سيؤتي ثماره.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات