مراجعة مشروع معرض الأعمالتدريب على البرمجة

مراجعة شيفرة مشروع في معرض أعمالك قبل التقدم للوظائف

التسليم من 1 يومالتعديلات مشمولةفحص الجودة
الباقات
حماية الدفعالتفاصيل
  • التعديلات ضمن الباقة مجانية.
  • إذا لم تردّ خلال 3 أيام من التسليم، يُقبل العمل تلقائيًا.
اطلب · ‏35 US$

يُحجز المبلغ عند الدفع ولا يُحوَّل إلا بعد قبولك العمل.

مراجعة شيفرة مشروع في معرض أعمالك قبل التقدم للوظائف

مثال على النتيجة

مثال على الباقة القياسية

مراجعة شيفرة: سكربت Python لاستيراد الطلبات في متجر إلكتروني صغير

ماذا تفعل الشيفرة

  1. تقرأ orders.csv من ملف التصدير.
  2. لكل سطر طلب، تبحث عن المنتج برمز SKU في stock.xlsx وتطرح الكمية.
  3. تكتب المخزون المحدّث وتسجّل الإجماليات في import_log.txt.

البنية واضحة وأسماء الدوال جيدة. معظم المشكلات تتعلق بمدخلات لا تأتي بالشكل الذي يتوقعه السكربت.

الأخطاء ونقاط الضعف

#السطرالخطورةالمشكلة
148عاليةيمكن استيراد ملف CSV نفسه مرتين؛ لا يوجد تحقق من أرقام الطلبات المعالجة سابقًا. هذا السبب الأرجح للمخزون السالب.
272عاليةint(row["qty"]) يتعطل مع القيم الفارغة أو "2.0" في الطلبات المستردة.
395متوسطةالبحث عن SKU حساس لحالة الأحرف: "gt-101" و"GT-101" يُعامَلان كمنتجين مختلفين.
4130متوسطةيُفتح الملف دون encoding="utf-8"، فتتلف أسماء المنتجات العربية على Windows.
5201منخفضةexcept: المجرد يخفي الأخطاء الحقيقية ويجعل السجل بلا فائدة.

مقاطع مصحّحة

المشكلة 1: تجاوز الطلبات المستوردة مسبقًا

processed = load_processed_ids("processed_orders.txt")
for row in reader:
    if row["order_id"] in processed:
        continue
    # ... المنطق الحالي ...
    processed.add(row["order_id"])
save_processed_ids("processed_orders.txt", processed)

السبب: يُطبَّق كل طلب مرة واحدة، حتى لو شغّلت السكربت على الملف نفسه مجددًا.

المشكلة 2: قراءة الكمية بأمان

raw = (row.get("qty") or "").strip()
try:
    qty = int(float(raw))
except ValueError:
    log.warning("الطلب %s: كمية غير صالحة %r، تم تجاوزه", row["order_id"], raw)
    continue

السبب: تُتجاوز الأسطر المستردة كليًا أو جزئيًا مع ملاحظة واضحة، بدل إيقاف الاستيراد كله.

المشكلة 3: توحيد رموز SKU

sku = row["sku"].strip().upper()

طبّقي .strip().upper() نفسها عند بناء قاموس المخزون.

الأسلوب وسهولة القراءة

  • الدالة process() طولها 90 سطرًا؛ قسّميها إلى read_orders وapply_to_stock وwrite_report.
  • استبدلي أرقام الأعمدة الثابتة (row[7]) بأسماء العناوين.

يُرجى اختبار كل إصلاح على نسخة من ملفاتك: قرأنا الشيفرة لكننا لم نشغّلها.

العميل: صاحبة متجر شاي إلكتروني كتبت سكربت Python من 310 أسطر يستورد الطلبات من ملف CSV المُصدَّر إلى جدول المخزون المشكلة المبلّغ عنها: "أحيانًا يصبح المخزون سالبًا، ويتعطل السكربت مع بعض الملفات."

العميل وجميع التفاصيل افتراضية.

عن هذه الخدمة

حين يفتح فريق التوظيف مشروعًا في معرض أعمال مطوّر مبتدئ، يبحث بسرعة عن بضع علامات: أسماء واضحة، ودوال صغيرة، ومعالجة للأخطاء، وبعض الاختبارات، وملف README يوضح ما يفعله المشروع وكيف يُشغَّل. الصق الملفات الأساسية في مشروعك وسنراجعها كما يفعل المراجع، مع تحديد ما يبدو غير مكتمل وما يبدو منسوخًا من درس تعليمي وما يُظهر مهارة حقيقية. تستلم أجزاء مصحّحة وقائمة قصيرة بالتغييرات الأكثر تحسينًا للانطباع الأول.

ما المشمول

  • ما الذي تحصل عليهمراجعة مكتوبة في صفحة الطلب: ملاحظات حول الانطباع الأول، ومشكلات الشيفرة حسب الأهمية، وأجزاء مصحّحة، وهيكل مقترح لملف README. وتضيف الباقة المميزة خطة دراسية للثغرات التي سيلاحظها المراجع.
  • الانطباع الأولما يلاحظه المراجع في دقائق
  • جودة الشيفرةالأسماء والدوال ومعالجة الأخطاء
  • الاختباراتأين تفيد بضعة اختبارات أكثر
  • هيكل READMEماذا يفعل المشروع وكيف يُشغَّل
  • قائمة الأولوياتتغييرات مرتبة حسب أثرها

كيف يعمل

  1. 1
    متطلبات الطلبتلصق الملفات الأساسية والوظيفة التي تستهدفها
  2. 2
    القراءةنراجعه كما يفعل مراجع التوظيف
  3. 3
    المراجعةتستلم الإصلاحات وقائمة الأولويات

ما نحتاجه منك

الملفات الرئيسية في مشروعك ملصوقة كنص أو كلقطات شاشة، وملف README الحالي، والتقنيات المستخدمة، والوظيفة التي تتقدم إليها، وما تريد أن يُظهره المشروع.

سنسألك:

  • ما الوظيفة التي تتقدم إليها؟
  • ماذا يفعل المشروع وما التقنيات التي يستخدمها؟
  • هل هو فكرتك الخاصة أم مبني على دورة تعليمية؟
  • ما الملفات التي تُظهر أفضل أعمالك؟

قارن بين الباقات

الباقاتالأساسيةملفات أساسية حتى 100 سطر‏15 US$القياسيةشيفرة المشروع حتى 400 سطر‏35 US$المميزةحتى 1,000 سطر مع خطة دراسية‏69 US$
مدة التنفيذ1 يوم2 يوم3 أيام
التعديلات123
أسطر الشيفرةحتى 100حتى 400حتى 1,000
أجزاء مصحّحةنعمنعمنعم
خطة الدراسةلالانعم
اطلب الأساسيةاطلب القياسيةاطلب المميزة

حماية الدفع

تدفع عند الطلب، لكن المبلغ لا يُحوَّل إلا مقابل عمل قبلته.

  • سعر ثابتلا يتغير سعر الباقة بعد الدفع.
  • المبلغ محجوزعند الدفع، يُحجز المبلغ فقط. ولا يُحوَّل إلى Dleex إلا بعد قبولك العمل.
  • فحص قبل التسليمتخضع كل نتيجة لفحص الجودة قبل أن تصل إليك، وتراها في صفحة الطلب قبل قبولها.
  • تعديلات مجانيةاطلب تعديلات ضمن متطلبات طلبك بالعدد الذي تسمح به الباقة.
  • القبول بعد 3 أيامإذا لم تقبل العمل ولم تطلب تعديلات خلال 3 أيام من التسليم، يُقبل تلقائيًا. وإذا كتبت في محادثة الطلب بعد التسليم، يبقى الطلب قيد الانتظار؛ وبعد ردّنا، قد نعيد بدء مهلة 3 أيام وسنُعلمك بذلك في المحادثة.
  • إعادة التنفيذ أو استرداد المبلغ كاملًاإذا لم تطابق النتيجة متطلبات طلبك ولم تُصلحها التعديلات، أو استغرق العمل أكثر من ضعف مدة التنفيذ، فاكتب في محادثة الطلب: سنعيد تنفيذ العمل أو نردّ إليك المبلغ كاملًا.
كيف يعمل →

الأسئلة والأجوبة

هل يمكنكم الاطلاع على ملفي في GitHub؟

نراجع الشيفرة وملف README اللذين تلصقهما هنا. لا نتصفح مستودعاتك، لذا أرفق الملفات التي تريد مراجعتها.

هل سيضمن لي هذا الحصول على وظيفة؟

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

هل يمكنكم كتابة المشروع عني؟

لا. يجب أن يكون المشروع من عملك أنت؛ نحن نراجعه ونبيّن كيف تحسّنه.

الباقات
اطلب · ‏35 US$· 2 يوم