# العمل مع قواعد الكود الكبيرة (/ar/docs/verdent-for-vscode/common-workflows/large-codebases)

> استراتيجيات للتنقل والعمل مع قواعد الكود الكبيرة



يتطلب العمل مع قواعد الكود الكبيرة استراتيجيات محددة لإدارة قيود السياق والحفاظ على الإنتاجية. يقدم هذا الدليل سير عمل عملي للتنقل في المشاريع الكبيرة وفهمها وتعديلها بكفاءة باستخدام Verdent for VS Code.

***

## استخدام وكيل Explorer لاكتشاف قاعدة الكود [#استخدام-وكيل-explorer-لاكتشاف-قاعدة-الكود]

لنفترض أنك جديد على قاعدة كود كبيرة وتحتاج إلى إيجاد المكان الذي تم فيه تنفيذ وظيفة معينة.

<Steps>
  <Step title="اطرح أسئلة استكشاف عامة">
    ```
    Where is user authentication handled in this codebase?
    ```

    يفوّض Verdent المهمة تلقائيًا إلى وكيل Explorer، وهو متخصص فعّال من حيث استهلاك الرموز في عمليات البحث داخل قاعدة الكود.
  </Step>

  <Step title="يبحث Explorer بكفاءة">
    يقوم وكيل Explorer بما يلي:

    * البحث في أسماء الملفات والمسارات
    * فحص محتوى الكود بحثًا عن الكلمات المفتاحية
    * تحليل الأنماط المعمارية
    * إعادة النتائج مع مسارات الملفات ومقتطفات الكود
  </Step>

  <Step title="نقّح عملية البحث">
    ```
    Show me all files that import the authentication module
    ```

    يمكن لـ Explorer إجراء عمليات بحث تكميلية لتضييق نطاق النتائج.
  </Step>

  <Step title="نفّذ عمليات بحث معقدة بشكل متوازٍ">
    من أجل استكشاف شامل، يمكن لـ Verdent تشغيل عدة وكلاء Explorer بشكل متوازٍ:

    * Explorer 1: إيجاد منطق المصادقة (authentication)
    * Explorer 2: إيجاد منطق التفويض (authorization)
    * Explorer 3: إيجاد إدارة الجلسات

    تصل النتائج بشكل أسرع من خلال البحث المتوازي.
  </Step>
</Steps>

<Tip>
  **نصائح:**

  * يعمل وكيل Explorer بكفاءة في قواعد الكود الكبيرة دون استهلاك السياق الرئيسي
  * يمكن لعدة وكلاء Explorer البحث في جوانب مختلفة في الوقت نفسه
  * استخدم Explorer لمطابقة الأنماط والاستكشاف المعماري
  * تتضمن النتائج مسارات الملفات ومقتطفات الكود ذات الصلة للسياق
</Tip>

***

## تقسيم المهام إلى أجزاء قابلة للإدارة [#تقسيم-المهام-إلى-أجزاء-قابلة-للإدارة]

لنفترض أنك تعمل على قاعدة كود كبيرة وتحتاج إلى إضافة ميزة تمس ملفات كثيرة.

<Steps>
  <Step title="حدد الحدود الطبيعية للمهام">
    بدلًا من طلب كل شيء دفعة واحدة:

    ```
    Phase 1: Add the data models for the notification system
    ```

    ركّز أولًا على مكون واحد قائم بذاته.
  </Step>

  <Step title="أكمل المرحلة بالكامل">
    اعمل على المرحلة الأولى بالكامل، بما في ذلك الاختبار، قبل الانتقال إلى المرحلة الثانية. هذا ينشئ نقطة تحقق نظيفة.
  </Step>

  <Step title="احفظ تقدمك (Commit)">
    ```bash
    git add .
    git commit -m "feat: add notification data models"
    ```

    يوفر الـ commit نقطة تراجع آمنة.
  </Step>

  <Step title="أفرغ السياق للمرحلة التالية">
    بالنسبة للمهام المعقدة، أفرغ السياق قبل الانتقال إلى المرحلة التالية. هذا يضمن أن يتوفر لدى Verdent سعة سياق كافية للحفاظ على أعلى أداء.

    ```
    Phase 2: Build the notification API endpoints using the data models
    ```

    ابدأ جلسة جديدة بسياق نظيف يركّز فقط على المرحلة الثانية.
  </Step>
</Steps>

<Tip>
  **نصائح:**

  * نقاط التوقف الطبيعية تمنع استنفاد السياق
  * يجب أن تكون كل مرحلة قابلة للاختبار بشكل مستقل
  * حفظ التقدم بين المراحل يتيح التجريب الآمن
  * الجلسات الجديدة تحافظ على سياق نظيف ومركّز
</Tip>

***

## الاستفادة من Plan Mode للتغييرات واسعة النطاق [#الاستفادة-من-plan-mode-للتغييرات-واسعة-النطاق]

لنفترض أنك تحتاج إلى إعادة هيكلة ميزة موزعة على عشرات الملفات في قاعدة كود كبيرة.

<Steps>
  <Step title="ابدأ في Plan Mode">
    ```
    Switch to Plan Mode: Refactor the payment processing logic to use a new payment provider across all files
    ```

    يتيح Plan Mode تحليلًا للقراءة فقط دون استهلاك السياق في تعديل الملفات.
  </Step>

  <Step title="استخدم Explorer لإيجاد جميع الملفات المتأثرة">
    ```
    Use the Explorer agent to find all files that reference payment processing
    ```

    يضمن اكتشافك لكل موقع يحتاج إلى تحديث.
  </Step>

  <Step title="راجع الخطة الشاملة">
    يعرض Verdent خطة تُظهر:

    * جميع الملفات التي تتطلب تغييرات (تم تحديد 25 ملفًا)
    * الحد الأدنى من الملفات التي يجب تضمينها في السياق الرئيسي
    * ترتيب العمليات
    * التبعيات بين التغييرات

    راجع الخطة قبل الالتزام بالنهج.
  </Step>

  <Step title="اعتمد التنفيذ">
    بعد أن تكون راضيًا عن الخطة، اعتمد التنفيذ. يعمل Verdent على إجراء التغييرات بشكل منهجي.
  </Step>
</Steps>

<Tip>
  **نصائح:**

  * يساعد Plan Mode في تحديد الحد الأدنى من مجموعات الملفات قبل التنفيذ
  * يضمن Explorer عدم تفويت أي ملفات في عمليات إعادة الهيكلة واسعة النطاق
  * تُظهر الخطط النطاق بوضوح قبل استهلاك السياق
  * احفظ الخطط في ملفات للتوثيق ومراجعة الفريق
</Tip>

***

## إجراء تغييرات منسّقة عبر ملفات كثيرة [#إجراء-تغييرات-منسّقة-عبر-ملفات-كثيرة]

لنفترض أنك تحتاج إلى إعادة تسمية دالة مستخدَمة في أكثر من 50 ملفًا عبر قاعدة كود كبيرة.

<Steps>
  <Step title="استخدم Explorer لإيجاد جميع الاستخدامات">
    ```
    Use the Explorer agent to find all files that use the calculateTotal function
    ```

    يحدد كل ملف يحتاج إلى تحديث.
  </Step>

  <Step title="راجع النطاق في Plan Mode">
    ```
    In Plan Mode: Rename calculateTotal to computeFinalTotal across all files
    ```

    شاهد النطاق الكامل قبل إجراء التغييرات.
  </Step>

  <Step title="تحقق من عدم تفويت أي ملفات">
    يعرض Verdent جميع الـ52 ملفًا التي تتطلب تحديثًا. راجع القائمة للتأكد من الاكتمال.
  </Step>

  <Step title="نفّذ التغييرات المنسّقة">
    اعتمد الخطة. يقوم Verdent بتحديث جميع الملفات بشكل منهجي، مما يضمن إعادة تسمية متسقة في كل مكان.
  </Step>

  <Step title="شغّل الاختبارات للتحقق">
    ```
    Run the full test suite to verify all references were updated correctly
    ```

    تكشف الاختبارات أي مراجع تم تفويتها.
  </Step>
</Steps>

<Tip>
  **نصائح:**

  * يضمن Explorer عدم تفويت أي ملفات في التغييرات واسعة النطاق
  * يعرض Plan Mode النطاق الكامل قبل التنفيذ
  * التحديثات المنهجية تحافظ على الاتساق عبر جميع الملفات
  * اختبر بشكل شامل بعد إعادة الهيكلة واسعة النطاق
</Tip>

<Tip>
  تكون التغييرات المنسّقة عبر ملفات كثيرة أكثر أمانًا عند تنفيذها على مراحل: حدّث طبقة واحدة، تحقق منها، ثم انتقل إلى الطبقات التابعة لها.
</Tip>

***

## الأسئلة المتكررة [#الأسئلة-المتكررة]

<Accordion title="كيف أعرف أنني أقترب من حدود السياق؟">
  تشمل العلامات: تباطؤ زمن الاستجابة، أو استمرار الجلسات لعدة ساعات، أو تحميل عدد كبير من الملفات الكبيرة. راقب مدة جلستك وعدد الملفات. عندما تلاحظ تراجعًا في الأداء، أكمل مهمتك الحالية، واحفظ تقدمك، وابدأ جلسة جديدة بسياق نظيف.
</Accordion>

<Accordion title="هل من الآمن السماح لـ Verdent بتعديل عشرات الملفات في وقت واحد؟">
  نعم، عند الاستخدام الصحيح. استخدم دائمًا Plan Mode لمراجعة النطاق الكامل أولًا، وتأكد من امتلاكك تغطية اختبارية شاملة، واحفظ تقدمك بشكل متكرر بين المراحل. هذا يتيح لك التحقق من التغييرات تدريجيًا والتراجع بسهولة عند الحاجة.
</Accordion>

<Accordion title="متى يجب أن أستخدم وكيل Explorer مقابل تحميل الملفات مباشرة؟">
  استخدم وكيل Explorer لمهام الاكتشاف والبحث دون استهلاك السياق الرئيسي. حمّل الملفات مباشرة باستخدام الإشارات بعلامة @ فقط عندما تحتاج إلى تعديلها. Explorer مثالي لأسئلة مثل "أوجد كل الملفات التي..."، في حين أن الإشارات بعلامة @ مناسبة لمهام مثل "حدّث هذا الملف المحدد".
</Accordion>

<Accordion title="ما هو نمط النموذج (model preset) الأفضل للعمل على قواعد الكود الكبيرة؟">
  استخدم نمط Performance للعمليات المعقدة متعددة الملفات وإعادة الهيكلة. استخدم نمط Efficiency لعمليات البحث والاستكشاف البسيطة. يوفر Performance قدرة استدلال أكبر للتغييرات المنسّقة، بينما يتميز Efficiency بالسرعة وفعالية التكلفة في مهام الاستكشاف.
</Accordion>

***

## راجع أيضًا [#راجع-أيضًا]

<CardGroup cols="2">
  <Card title="أمثلة على المهام متعددة الخطوات" icon="list-check" href="/docs/verdent-for-vscode/common-workflows/multi-step-tasks">
    سير عمل معقد متعدد الخطوات وإدارة المهام
  </Card>

  <Card title="أفضل الممارسات" icon="star" href="/docs/verdent-for-vscode/best-practices/context">
    استراتيجيات إدارة السياق وتحسينه
  </Card>
</CardGroup>
