# البرمجة

> اطلب من Dvina كتابة الشيفرة في مشروع على جهازك، وراجع كل تغيير، ثم ثبّت التغييرات وافتح طلب السحب من المحادثة.

يكتب Dvina الشيفرة في مشروعك على جهازك، مع إبقاء الملاحظات والمحادثات والأسباب في الحسبان. صِف ما تريده، وراجع ما غيّره، ثم أطلقه، كل ذلك في التطبيق نفسه الذي تستخدمه لبقية أعمالك.

## قبل أن تبدأ

البرمجة جزء من تطبيق Dvina لسطح المكتب على Mac وWindows وLinux. لا تحتاج إلى تثبيت أي شيء إضافي. يجب أن يكون Dvina موجودًا على جهاز كمبيوتر واحد على الأقل؛ ويمكنك بدء العمل ومتابعته من أي جهاز آخر.

للحصول على تطبيق سطح المكتب، راجع [تنزيل Dvina وتثبيته](/docs/use-dvina/get-started/install).

## فتح مشروع

المشروع هو مجلد على جهازك: إما مستودع شيفرة أو مجلد عادي.

1. في تطبيق سطح المكتب، افتح Dock واختر صف المشاريع (**المشاريع**).
2. اختر **فتح…** لتحديد مجلد أو مستودع شيفرة، أو **مشروع جديد…** لإنشاء مجلد جديد على هذا الكمبيوتر.

عند إنشاء مشروع جديد، فعّل **إنشاء مستودع Git** للاحتفاظ بسجل لكل تغيير، حتى تتمكن من التراجع عن تعديلات Dvina.

تعمل المحادثة ضمن المشروع الذي تختاره. وإذا كان مشروع شيفرة، يعرض Dock فرعه أيضًا.

## طلب العمل

صِف ما تريده، مثل "اجعل تصدير CSV يستخدم التواريخ الصحيحة". ينفّذ Dvina طلبك كمهمة على جهازك، ويمكنك مواصلة المحادثة أو بدء مهام أخرى. يمكن لعدة مهام العمل على مستودع واحد والتنسيق فيما بينها لتحديد أيّها يثبّت التغييرات أولًا.

قبل الكتابة، يقرأ Dvina المشروع وما يرتبط به: يبحث في محادثاتك وملفاتك السابقة ليأخذ الأسباب في الحسبان. ويتّبع أيضًا تعليمات AGENTS.md أو CLAUDE.md في مشروعك.

## مراجعة التغييرات

يأتي الرد على كل مهمة مع تغييراتها، في بطاقة تحمل اسم المهمة وتعرض عبارة **جاهزة للمراجعة**.

- **الاطّلاع على التغييرات:** اختر **التغييرات** لعرض تغييرات كل ملف في اللوحة الجانبية. ويتيح لك **الملفات** تصفّح المشروع.
- **التراجع عن جولة:** أسفل ردّ غيّر ملفات، اختر السطر الذي يعرض عدد الملفات التي تغيّرت، ثم **تراجع**، وأكّد باختيار **هل تريد التراجع عن هذه الجولة؟**. تعود الملفات إلى حالتها قبل تلك الجولة، وتبقى التغييرات التي أُجريت بعدها.

## تثبيت التغييرات وفتح طلب سحب

1. في بطاقة المهمة، اختر **تثبيت التغييرات**.
2. تعرض نافذة **تثبيت التغييرات** الملفات التي ستُثبَّت في فرعك، مع **عنوان** و**رسالة** مقترحين. اختر **تثبيت التغييرات**. لا تُدفع أي تغييرات إلى المستودع البعيد.
3. لفتح طلب سحب، اختر **دفع التغييرات وإنشاء طلب سحب**. يدفع Dvina الفرع الحالي أولًا، ثم يفتح طلب السحب. لا تُضمَّن الملفات التي لم تُثبَّت تغييراتها.

يُفتح طلب السحب باستخدام تسجيل دخولك إلى Git. يفتحه Dvina على GitHub أو GitLab؛ أما أي خدمة استضافة أخرى، فتفتح صفحتها الخاصة لإنشاء طلب سحب جديد في متصفحك. عند الانتهاء، اختر **عرض طلب السحب**.

## الموافقات

تُشغَّل عمليات البناء والاختبارات مباشرةً. أما حذف الملفات، ودفع التغييرات، وتعديل قواعد البيانات، والنشر، وأي إجراء يتعامل مع الأسرار، فتنتظر موافقتك. توضّح البطاقة السبب، مثل **هل تريد تشغيل هذا الأمر؟** مع **يحذف ملفات** أو **يعدّل قاعدة بيانات**، وتختار **السماح** أو **الرفض**. يمكن للمسؤول تحديد العمليات التي تتطلب موافقتك في كل مرة.

> [!IMPORTANT]
> لا تُدفع أي تغييرات إلا بموافقتك. مشروعك عبارة عن مجلد على جهاز الكمبيوتر، وباستخدام Git يمكنك التراجع عن كل تعديل يجريه Dvina.

## الاختبار على جهاز محاكاة

في تطبيق سطح المكتب، يمكن لـ Dvina تجربة تطبيقك على هذا الكمبيوتر بالطريقة التي سيستخدمه بها مستخدموك: في متصفح، أو في iOS Simulator على Mac، أو في Android Emulator على Mac أو Windows أو Linux.

1. افتح Dock واختر الصف المسمّى **الجهاز**.
2. ضمن **هذا الجهاز**، اختر **المتصفح** أو **iOS Simulator** أو **Android Emulator**.

تُفتح اللوحة في الشريط الجانبي. إذا كان جهاز المحاكاة متوقفًا، فسيبدأ تشغيله عند فتحه. لاستخدام جهاز آخر، اختر **اختيار جهاز** أعلى اللوحة؛ يعرض كل جهاز نظامه وما إذا كان **قيد التشغيل** أو **متوقفًا**.

لإظهار المتصفح أو إخفائه، اضغط على <kbd>⌘</kbd> <kbd>⇧</kbd> <kbd>B</kbd> على Mac أو <kbd>Ctrl</kbd> <kbd>Shift</kbd> <kbd>B</kbd> على Windows وLinux. عندما يعمل Dvina في لوحة لا تشاهدها، تظهر نقطة في صف **الجهاز**.

### السماح لـ Dvina باستخدام جهاز

في المرة الأولى التي يستخدم فيها Dvina جهاز محاكاة، يطلب الإذن، مثل **هل تسمح لـ Dvina باستخدام iPhone 17 Pro؟**، لأنه يستطيع رؤية شاشة الجهاز، لذا لا تسجّل الدخول إلى حساباتك الحقيقية عليه. اختر **السماح** أو **الرفض**. يحتفظ الجهاز باختيارك، فلا يُطلب منك الإذن مجددًا في محادثة أخرى. وحتى تسمح بذلك، تعرض اللوحة خيار **السماح لـ Dvina باستخدامه**.

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

لاستخدام الجهاز بنفسك، اختر **تولّي التحكم**. تُرسَل نقراتك وضغطات المفاتيح إلى الجهاز، ويمكنك الضغط على **الشاشة الرئيسية**، وعلى Android أيضًا **رجوع** و**التطبيقات الأخيرة**. عند الانتهاء، اختر **إعادة التحكم** ليواصل Dvina العمل.

### إعداد iOS Simulator

إذا لم يكن iOS Simulator مُعدًّا، يفتح صفه قائمة تحقق بعنوان **إعداد iOS Simulator**. تُعلَّم كل خطوة تلقائيًا عند اكتمالها، حتى لو أنجزتها في مكان آخر.

1. **تثبيت Xcode:** اختر **فتح App Store**. Xcode مجاني وحجمه نحو 7 GB؛ افتحه مرة واحدة بعد اكتمال التثبيت.
2. **تحديد Xcode:** اختر **نسخ الأمر** وشغّله في Terminal. يطلب الأمر كلمة مرورك، لذا لا يشغّله Dvina نيابةً عنك أبدًا.
3. **إضافة محاكي iOS:** في Xcode، انتقل إلى Settings › Components ونزّل iOS، أو شغّل الأمر في Terminal.
4. **إنشاء جهاز:** اختر **إنشاء iPhone**. لن يُنزَّل أي شيء.

### إعداد Android Emulator

إذا لم يكن Android Emulator مُعدًّا، يفتح صفه قائمة تحقق بعنوان **إعداد محاكي Android**.

1. **تثبيت Android Studio:** اختر **الحصول على Android Studio**. يثبّت المكونات التي يعمل عليها المحاكي؛ افتحه مرة واحدة بعد اكتمال التثبيت.
2. **إضافة المحاكي وأدوات المنصة:** شغّل الأمر في نافذة طرفية، أو أضفها من Android Studio › SDK Manager.
3. **تفعيل تسريع الأجهزة:** على Windows وLinux، شغّل الأمر بنفسك، لأنه يتطلب كلمة مرورك أو صلاحيات مسؤول. بعد ذلك، سجّل الخروج ثم الدخول مجددًا على Linux، أو أعد التشغيل على Windows. لا يلزم أي إجراء هنا على Mac.
4. **إضافة صورة نظام:** شغّل الأمر في نافذة طرفية، أو أضف صورة من Android Studio › SDK Manager. حجم التنزيل كبير.
5. **إنشاء محاكي:** اختر **إنشاء محاكي**. لن يُنزَّل أي شيء.

إذا عطّل المسؤول أجهزة المحاكاة، تعرض الصفوف **عطّله المسؤول**.

## العمل من أي مكان

اطلب إنجاز العمل في محادثتك من هاتفك أو عبر الويب. ينفّذ Dvina العمل في المشروع على جهاز الكمبيوتر، وتبقى التغييرات بانتظار مراجعتك. يجب أن يكون جهاز الكمبيوتر قيد التشغيل وأن يكون Dvina مفتوحًا.

## متى تستخدم هذه الميزة

- عندما تعمل على برمجيات فعلية وتريد الاستناد إلى سياق العمل كاملًا: الملاحظات والقرارات ومحادثات الشهر الماضي.
- عندما تريد إنجاز إصلاح وأنت بعيد عن مكتبك.
- عندما تريد العمل على عدة تغييرات في الوقت نفسه، بحيث يكون كل منها جاهزًا للمراجعة.

## نصائح

- **دوّن قواعد العمل الخاصة بك.** وضّح طريقة عملك في AGENTS.md أو CLAUDE.md، وسيلتزم بها Dvina.
- **اختبر على هاتف.** هل تطوّر تطبيقًا؟ يمكن لـ Dvina اختباره في محاكي iPhone أو محاكي Android، والتنقّل فيه بالنقر كما سيفعل المستخدمون. راجع [الاختبار على محاكي](#test-on-a-simulator-or-emulator).
- **لست مطوّرًا؟** لإنشاء تطبيقات وصفحات تعمل فعليًا، استخدم [الإنشاء](/docs/use-dvina/features/create) بدلًا من ذلك.

## مواضيع ذات صلة

- [المشاريع](/docs/use-dvina/features/projects)
- [المهام](/docs/use-dvina/features/tasks)
- [استخدام الكمبيوتر](/docs/use-dvina/features/computer-use)
- [التثبيت](/docs/use-dvina/get-started/install)
