---
title: Free Code Camp Style Guide for Algorithms
localeTitle: دليل رمز مخيم نمط للخوارزميات
---
تعد تحديات كتابة الخوارزميات طريقة رائعة لممارسة قدراتك في حل المشكلات واختبارها. اتبع هذه العملية عن قرب لزيادة فرص قبولنا لخوارزمية حسابك.

*   قم `seed_data/Algorithms.json` مستودع Camp Free Code وفتح `seed_data/Algorithms.json` للتعرف على تنسيق خوارزمياتنا.
*   بغض النظر عن صعوبة الخوارزمية ، ضعها كخوارزمية أخيرة في ملف JSON. قم بتغيير أحد الأرقام الموجودة في المعرف للتأكد من أن الخوارزمية تحتوي على معرف فريد.
*   في المحطة الطرفية ، قم بتشغيل `node seed_data/seed.js` تشغيل `gulp` . يجب أن تكون قادرًا على الانتقال إلى الخوارزمية الجديدة في خريطة التحدي. كلما قمت بإجراء تغيير على Algorithm.json ، ستحتاج إلى reseed من أجل رؤية هذه التغييرات في المستعرض.
*   حل الخوارزمية الخاصة بك. تأكد من أن اختباراتك تعمل كما هو متوقع وأن تعليماتك واضحة بما فيه الكفاية.
*   تقديم طلب سحب إلى فرع التدريج Code Camp Free وفي جسم طلب السحب ، قم بالارتباط بجسم يحتوي على حل الخوارزمي الخاص بك.

فيما يلي وصف لكل حقل من حقول الخوارزميات.

*   الاسم - اسم التحدي الخاص بك. من المقبول أن يكون هذا مضحكًا ، ولكن يجب أن يكون موجزًا ​​وملائمًا للمهمة.
*   الصعوبة - محاولة تقييم صعوبة مقارنة مع تحديات الخوارزمية الموجودة. إن البروكسي الجيد لصعوبة الخوارزمية هو كم من الوقت يستغرق منك حلها. لكل 15 دقيقة يستغرق ، زيادة صعوبة. على سبيل المثال ، يجب أن تكون خوارزمية ساعة واحدة على الأرجح 4.
*   وصف - فصل الفقرات مع فاصل سطر. فقط الفقرة الأولى مرئية قبل المستخدم قبل النقر فوق الزر "مزيد من المعلومات". يجب تضمين جميع المعلومات الضرورية في الفقرة الأولى. اكتب هذه الفقرة الأولى بإيجاز قدر الإمكان. يجب أن تقدم الفقرات اللاحقة تلميحات أو تفاصيل إذا لزم الأمر. إذا تضمن موضوعك فهمًا أعمق ، فيمكنك الربط بـ Wikipedia.
*   Challenge Seed - هذا هو المكان الذي قمت بإعداد ما سيكون في محرر عندما يبدأ الكارافانات الخوارزمية.
*   الاختبارات - هذه الاختبارات هي التي تجلب تحديك للحياة. بدونها ، لا يمكننا تأكيد دقة الإجابة المقدمة من المستخدم. اختر اختباراتك بحكمة. تتم كتابة اختبارات الخوارزميات باستخدام مكتبة تأكيد Chai.js. يرجى استخدام ينبغي أن نتوقع ونتوقع بناء الجملة من أجل قراءة المستخدم النهائي. كمثال على ما لا يجب القيام به ، تتم كتابة العديد من تحديات الخوارزمية الأصلية مع بناء الجملة كما أن العديد من حالات الاختبار يصعب قراءتها. إذا كان لسؤال الخوارزمية لديك الكثير من حالات الحواف ، فستحتاج إلى كتابة العديد من الاختبارات للتغطية الكاملة. إذا وجدت نفسك تكتب اختبارات أكثر مما تريد ، يمكنك التفكير في تبسيط متطلبات تحدي الخوارزمية. لصعوبة مستوى 1 إلى 3 ، سوف تحتاج عموما فقط 2 إلى 4 اختبارات.
*   MDNlinks - إلقاء نظرة على `seed_data/bonfireMDNlinks.js` . إذا كانت أي من هذه المفاهيم ذات صلة بخوارزمية حسابك ، فاحرص على تضمينها. إذا كنت تعرف مقالة MDN غير مرتبطة هنا ، فيمكنك إضافتها إلى ملف bonfireMDNlinks.js قبل إضافتها إلى الخوارزمية.