مطالبات البرمجة لـ Grok
مطالبات تسهل مهام التطوير اليومية: فهم الأكواد غير المألوفة، وتتبع المشكلات، وكتابة الاختبارات والتوثيق، وتحويل لقطات الشاشة لواجهات برمجية تعمل.
تغطي هذه الأوامر البرمجية العشرون المهام المعتادة في أسبوع أي مطور: تحليل رسائل الخطأ، وتتبع الأخطاء البرمجية التي لا توقف النظام ولكنها تعطي نتائج خاطئة، ومراجعة الفروقات بين الشيفرات (diff)، وكتابة الاختبارات والبيانات التجريبية (fixtures)، وبناء استعلامات SQL والتعابير النمطية (regex)، وكتابة نصوص shell، وتوثيق واجهات برمجة التطبيقات (APIs)، وحل مشكلات Git المعقدة، وتعلم لغة برمجية جديدة بمقارنتها بلغة تتقنها بالفعل.
يقدم Grok إجابات أسرع وأدق عندما تزوده بكافة التفاصيل. حدد اللغة وإطار العمل والإصدار المستخدم، والصق أصغر جزء برمجي يوضح المشكلة مع نص الخطأ كاملاً، واشرح النتيجة التي كنت تتوقعها. بالنسبة للأخطاء البرمجية، تقترح عدة أوامر استخدام Grok 4.3 Thinking: فهو يقوم بتتبع الشيفرة قبل الرد، مما يساعد في حل أخطاء التجاوز بواحد (off-by-one)، وحالات التسابق (race conditions)، والشروط المعقدة. ويُعد Grok 4.20 كافياً للشروحات السريعة والشيفرات الجاهزة المعتادة (boilerplate). كما يستخدم أمران ميزة فهم الصور، أحدهما للقطة شاشة لتصميم واجهة غير منضبط، والآخر لمخطط نموذج بيانات مرسوم على سبورة بيضاء.
تنطبق هنا التحذيرات المعتادة، وربما بشكل أكبر من أي مكان آخر. لدى النماذج تاريخ محدد لنهاية معرفتها ولا يمكنها قراءة التوثيقات الحالية، لذا قد تكون دالة معينة في مكتبة قد تغير اسمها أو لم تكن موجودة أصلاً. يمكن للشيفرة التي تبدو صحيحة ظاهرياً أن تفشل، لذا احرص على تشغيلها واختبارها. لا تلصق أبداً مفاتيح API، أو كلمات المرور، أو الرموز المميزة (tokens)، أو بيانات العملاء؛ حيث تمر رسائلك عبر خادمنا إلى مزود النموذج لإنشاء الإجابة. يتم اقتطاع الرسائل الطويلة، لذا أرسل الدالة المعنية فقط، وليس المستودع البرمجي كاملاً.
اطلع على كيفية استخدام المطورين لـ Grok، أو افتح مساعد البرمجة (Code Assistant)، أو اقرأ المزيد عن Grok API.
كيفية تكييف هذه الأوامر
- حدد بيئة العمل البرمجية مع الإصدارات: عبارة "Node 22, TypeScript 5, Express" أفضل بكثير من مجرد "JavaScript".
- اطلب الخطة قبل الشيفرة البرمجية لأي مهمة تتجاوز حجم دالة واحدة.
- اطلب شرحاً لكل تغيير، حتى تتمكن من مراجعة المنطق البرمجي وليس مجرد الفروقات.
- احتفظ بـ Grok 4.7 للمشكلات الأكثر تعقيداً؛ فالحد المسموح به هو 10 رسائل يومياً.
-
01
تفسير رسالة خطأ برمجية
أنا أستخدم [اللغة أو إطار العمل والإصدار]. اشرح هذا الخطأ بكلمات بسيطة، واذكر الأسباب الثلاثة الأكثر ترجيحاً مرتبة حسب الاحتمالية، وأخبرني بما يجب فحصه أولاً لكل منها: [الصق الخطأ الكامل وتتبع المكدس stack trace]
-
02
تتبع نتيجة خاطئة سطراً بسطر
ترجع هذه الدالة [النتيجة الفعلية] عند استدعائها بـ [المدخلات]، بينما أتوقع [النتيجة المتوقعة]. تتبع التنفيذ سطراً بسطر باستخدام هذه المدخلات، مع مراقبة كل متغير، وتوقف عند أول سطر تختلف فيه الحالة عما ينبغي أن تكون عليه: [الصق الكود]
-
03
اكتشاف حالة سباق (Race Condition)
يُظهر كود [اللغة] هذا أحياناً [العَرَض] تحت الضغط، ولكن لا يحدث ذلك أبداً عند اختباره بمفرده: [الصق الكود]. ابحث عن حالات السباق (race conditions)، والحالة المشتركة، والافتراضات المتعلقة بالترتيب. لكل نقطة مشبوهة، صف التسلسل الدقيق للتداخل الذي قد يسبب الخطأ وكيفية إصلاحه.
-
04
مراجعة طلب دمج (Pull Request)
راجع هذا التغيير البرمجي (diff) كمطور خبير متطلب يعمل على قاعدة كود مكتوبة بـ [اللغة]. صنّف الملاحظات إلى: أخطاء برمجية، ومخاطر، وسهولة القراءة، واختبارات، مع ذكر أرقام الأسطر المرجعية، واختم بقرار: قبول، أو قبول مع تعديلات، أو طلب تغييرات، مع توضيح السبب في جملة واحدة: [الصق diff]
-
05
حصر الحالات الحدية وكتابة الاختبارات
بالنسبة للدالة الموضحة أدناه، اذكر جميع الحالات الحدية (edge cases) التي ستختبرها ولماذا، ثم اكتب الاختبارات باستخدام [إطار عمل الاختبارات]. ضمّن اختباراً واحداً على الأقل تتوقع فشله مع الكود الحالي، وحدد أي اختبار هو: [الصق الدالة]
-
06
توليد بيانات اختبارية معقدة
اكتب بيانات اختبارية واقعية (test fixtures) لنموذج البيانات هذا بصيغة [الصيغة، مثل JSON أو factory function]: [الصق النموذج]. ضمّن عشرة سجلات عادية وخمسة سجلات غير معتادة أو معقدة (مثل نصوص فارغة، وأسماء طويلة جداً، ومحارف غير لاتينية، وتواريخ حدية)، وحدد نوع كل منها بوضوح.
-
07
إنشاء استعلام SQL من وصف نصي
باستخدام هذا المخطط: [الصق المخطط schema]، اكتب استعلام [قاعدة البيانات] يعيد [ما تحتاجه بدقة]. اشرح الاستعلام بنداً بنداً، ثم اعرض نموذجاً بديلاً يعالج أيضاً [حالة حدية، مثل العملاء الذين ليس لديهم أي طلبات].
-
08
تصحيح تعبير نمطي (Regex) غير دقيق
من المفترض أن يقوم هذا التعبير النمطي بـ [السلوك المقصود] في [اللغة أو الأداة]، ولكنه [المشكلة أو الخلل الناتج]: [الصق regex]. قسّمه إلى أجزاء واشرح كلاً منها، وقدم مدخلاً يوضح المشكلة ويكشفها، ثم أعطِ نسخة مصححة بالإضافة إلى ثلاثة نصوص يجب أن يرفضها بالضرورة.
-
09
برمجة سكريبت لأتمتة مهمة بأمان
اكتب سكريبت [bash أو PowerShell] يقوم بـ [المهمة، مثلاً أرشفة ملفات السجلات الأقدم من 30 يوماً في ملف zip]. اجعله آمناً: وفر وضع تجريبي (dry-run) يطبع فقط ما سيقوم به دون تنفيذ فعلي، ورسائل خطأ واضحة، وتعليقاً على كل سطر يحذف ملفات أو يكتب فوقها.
-
10
توثيق نقطة نهاية API
اكتب وثائق مرجعية لنقطة النهاية هذه: [الصق كود المعالج أو المسار]. اذكر طريقة الطلب (Method) والمسار، والمعلمات مع أنواعها وما إذا كانت مطلوبة، ومثالاً للطلب، وأمثلة على استجابات النجاح والخطأ، وكل رمز حالة يمكن أن تُعيده.
-
11
حل فوضى في Git
مستودع Git الخاص بي في هذه الحالة: [الصق git status والأسطر القليلة الأخيرة من git log]. كنت أريد [الهدف]. اشرح ما حدث بكلمات بسيطة وأعطني الأوامر الدقيقة لإصلاحه، بدءاً بأمر ينشئ نسخة احتياطية من عملي الحالي. حذرني قبل أي أمر يعيد كتابة السجل (history).
-
12
إعادة كتابة الكود بالأسلوب الأصلي
أنا أتقن [لغة أعرفها] وأتعلم حالياً [لغة جديدة]. خذ هذه الشيفرة المكتوبة بأسلوبي المعتاد: [الصق الشيفرة]، وأعد كتابتها بالطريقة التي يكتب بها مبرمج خبير في [لغة جديدة]. ثم اشرح الأساليب والأنماط (idioms) التي استخدمتها والتي ليس لها مكافئ مباشر في لغتي السابقة.
-
13
إصلاح التنسيق من لقطة شاشة
أرفقت لقطة شاشة لصفحتي. المشكلة: [ما يبدو خاطئاً]. إليك كود HTML وCSS لهذا الجزء: [الصق الكود]. ابحث عن السبب، وأعطني أقل تعديل CSS ممكن للإصلاح، واشرح سبب حدوث المشكلة حتى لا أكررها.
-
14
تحويل مخطط لوح أبيض إلى جداول قاعدة بيانات
أرفقت صورة لمخطط أولي على لوح أبيض لنموذج بيانات [التطبيق]. حوّله إلى تعريفات جداول [قاعدة البيانات] مع المفاتيح الأساسية (primary keys)، والمفاتيح الخارجية (foreign keys)، والأنواع المناسبة. اذكر أي علاقة تركها المخطط غامضة واسألني عنها قبل أن تفترض شيئاً.
-
15
معرفة التعقيد وطريقة أسرع
ما هو التعقيد الزمني والمكاني (time and memory complexity) لهذه الدالة، ولماذا؟ [الصق الكود]. إذا كانت هناك طريقة أسرع لمدخلات بحجم [الحجم] تقريباً، فاعرضها واشرح ما قد نفقده من سهولة قراءة الكود.
-
16
تحسين الكود دون تغيير السلوك
أعد هيكلة (refactor) هذه الدالة لتكون أسهل في القراءة دون تغيير ما تفعله: [الصق الكود]. اعمل عبر خطوات صغيرة ومسماة، واشرح كل تغيير في سطر واحد، واذكر أي سلوك لم تكن متأكداً منه حتى أؤكده قبل الدمج.
-
17
كتابة ملف README من الصفر
اكتب ملف README لمشروعي [الاسم]، الذي يقوم بـ [ما يفعله]. الأقسام: نبذة عن المشروع، دليل بدء سريع بأوامر قابلة للنسخ واللصق، خيارات الإعداد في جدول، المشاكل الشائعة، وكيفية المساهمة. إليك الملفات والأوامر الأساسية: [الصق التفاصيل]
-
18
شرح كود لم أكتبه
اشرح ما يفعله هذا الكود المكتوب بـ [اللغة] لشخص يعرف البرمجة لكنه غير معتاد على قاعدة الكود هذه. ابدأ بملخص من جملتين، ثم استعرضه كتلة تلو الأخرى، وأشر إلى أي شيء يبدو كخطأ برمجي أو حيلة مؤقتة قديمة: [الصق الكود]
-
19
البحث عن ثغرات في التصميم
أخطط لبناء [الميزة] بهذا الشكل: [اوصف النهج]. العب دور محامي الشيطان. اذكر أكثر ثلاث طرق يُرجح أن يفشل بها هذا التصميم في بيئة الإنتاج، وما الذي سألاحظه عند فشله، وبديلاً أقل تكلفة إن وُجد. كن صريحاً ومباشراً؛ أفضّل معرفة ذلك الآن على أن أكتشفه في الثالثة فجراً.
-
20
نقل الكود إلى لغة أخرى
حوّل هذا الكود المكتوب بـ [لغة المصدر] إلى كود سليم ومتبع للأعراف بـ [اللغة المستهدفة]، وليس نقلاً حرفياً سطراً بسطر: [الصق الكود]. استخدم المكتبة القياسية للغة المستهدفة قدر الإمكان، وحافظ على نفس السلوك، واذكر أي موضع تختلف فيه اللغتان، مثل القسمة الصحيحة أو ترميز النصوص.
جاهز لسؤال Grok؟
بدون حساب، بدون تحميل، وبدون بطاقة بنكية. افتح المحادثة واكتب سؤالك واقرأ إجابة Grok فور ظهورها.
ابدأ الدردشة