المطالبة الفعالة للكود
تقنيات المطالبة المتقدمة
بعد الأساسيات، هذه التقنيات المتقدمة تساعدك على الحصول على نتائج أفضل من مساعدي البرمجة بالذكاء الاصطناعي في المهام المعقدة.
المطالبة بأمثلة قليلة (Few-Shot)
أظهر أمثلة لما تريده:
مطابقة الأنماط
هذه هي طريقة تعاملنا مع استجابات API في هذا المشروع:
مثال 1:
```typescript
// src/api/users.ts
export async function getUsers(): Promise<ApiResponse<User[]>> {
try {
const response = await api.get('/users');
return { data: response.data, error: null };
} catch (error) {
return { data: null, error: handleApiError(error) };
}
}
الآن أنشئ دوال مشابهة لـ:
- getOrders()
- getOrderById(id: string)
- createOrder(data: CreateOrderInput)
## المطالبة بسلسلة التفكير
اطلب من AI التفكير خطوة بخطوة:
### لتصميم الخوارزميات
صمم محدد معدل. فكر خطوة بخطوة:
- أولاً، اشرح أي هيكل بيانات سيكون الأكثر كفاءة
- ثم، صف منطق الخوارزمية
- ضع في الاعتبار الحالات الحدية (الأنظمة الموزعة، مشاكل المنطقة الزمنية)
- أخيراً، اكتب التنفيذ
أظهر استدلالك في كل خطوة.
### للتصحيح
هذه الدالة بها خطأ. صححها خطوة بخطوة:
- أولاً، اقرأ الكود واشرح ما يُفترض أن يفعله
- تتبع التنفيذ مع مدخل مثال
- حدد أين يفشل المنطق
- اشرح الإصلاح
- نفّذ النسخة المصححة
## تحديد القيود
كن صريحاً بشأن القيود:
### قيود الأداء
أنشئ دالة بحث مع هذه القيود:
- يجب أن تتعامل مع 100,000+ عنصر
- وقت الاستجابة < 100ms
- استخدام الذاكرة < 50MB
- تعمل على متصفحات الجوال
### قيود التوافق
أنشئ مكون منتقي تاريخ:
- يجب أن يعمل مع React 17 و 18
- بدون تبعيات خارجية ما عدا date-fns
- يدعم التنقل بلوحة المفاتيح (a11y)
- يعمل في جميع المتصفحات بما فيها Safari 14+
## المطالبة السلبية
أخبر AI ما لا يفعله:
أنشئ نظام مصادقة مستخدم.
لا تفعل:
- استخدام crypto APIs مهملة
- تخزين كلمات المرور بنص عادي
- استخدام دوال bcrypt متزامنة
- إنشاء تنفيذ JWT مخصص (استخدم مكتبة jose)
- إضافة console.logs في كود الإنتاج
- استخدام any كنوع TypeScript
افعل:
- استخدم bcrypt مع عامل تكلفة 12
- نفّذ حماية CSRF مناسبة
- أضف تحديد معدل على نقاط المصادقة
## المطالبة المبنية على الدور
عيّن دوراً محدداً:
### دور الخبير
أنت مهندس أمان أول في شركة FAANG.
راجع كود المصادقة هذا للثغرات الأمنية. فكر كمهاجم يحاول إيجاد استغلالات. رتب النتائج حسب الشدة (حرج/عالي/متوسط/منخفض).
### دور المعلم
أنت مرشد برمجة صبور يعلم مطوراً مبتدئاً.
اشرح كيف يعمل هذا الـ React hook، سطراً بسطر. استخدم تشبيهات بسيطة عند شرح المفاهيم المعقدة. بعد الشرح، اقترح تحسينات يمكنهم إجراؤها.
## أنماط التحسين التكراري
### نمط القمع
ابدأ عريضاً، ثم ضيّق:
الجولة 1: "أنشئ أداة معالجة النماذج" ↓ الجولة 2: "أضف دعم التحقق مع مخططات Zod" ↓ الجولة 3: "أضف دعم التحقق غير المتزامن (فحوصات API)" ↓ الجولة 4: "أضف استمرار حالة النموذج في localStorage"
### نمط الطبقات
ابنِ في طبقات:
الطبقة 1: طبقة البيانات "أنشئ واجهات TypeScript لنظام المدونة"
الطبقة 2: طبقة API "أنشئ مسارات API لهذه الواجهات"
الطبقة 3: طبقة الخدمة "أنشئ دوال خدمة تستدعي هذه APIs"
الطبقة 4: طبقة UI "أنشئ مكونات React تستخدم هذه الخدمات"
## مكتبة قوالب المطالبات
### قالب نقطة نهاية API
أنشئ نقطة نهاية [METHOD] في /api/[path]:
المدخل: [صف مخطط المدخل] المخرج: [صف مخطط المخرج] المصادقة: [متطلبات المصادقة] التحقق: [قواعد التحقق]
حالات الخطأ:
- [حالة 1]: أرجع [الحالة] مع [الرسالة]
- [حالة 2]: أرجع [الحالة] مع [الرسالة]
اتبع النمط في @src/app/api/[نقطة-نهاية-موجودة]/route.ts
### قالب المكون
أنشئ مكون [ComponentName]:
الخصائص:
- [prop1]: [النوع] - [الوصف]
- [prop2]: [النوع] - [الوصف]
السلوك:
- [سلوك 1]
- [سلوك 2]
الحالات:
- التحميل: [كيف يبدو]
- الخطأ: [كيف يعالج الأخطاء]
- فارغ: [عرض الحالة الفارغة]
النمط: طابق @src/components/[MكونMشابه].tsx الاختبارات: تضمين اختبارات الوحدة تتبع أنماط الاختبار لدينا
> **رؤية متقدمة:** أفضل المطالبات تجمع تقنيات متعددة. استخدم few-shot للنمط، سلسلة التفكير للمنطق، القيود للجودة، والمطالبة السلبية للأمان.
في الدرس التالي، سنبني مكتبة مطالباتك الشخصية للسيناريوهات الشائعة.
:::