CodecAnvas هي منصة عبر الإنترنت لممارسة البرمجة في بيئة تعاونية. يمكن لبعض المعلمين إنشاء مهام لك إلى وإكمالها. كطالب مسجل ، يمكنك إكمال هذه المهام والحصول على النتيجة. تم تنفيذ التطبيق في تنفيذ التعليمات البرمجية مما يجعل من السهل على المعلمين والطلاب التحقق من صحة الرمز الذي تم تسليمه للمهام. علاوة على ذلك ، يتم دعم المهام القائمة على الأسئلة أيضًا. هذا يجعل من السهل على المعلمين إنشاء مهام ترميز فحسب ، ولكن أيضًا في الواجبات التي يتعين على الطلاب الإجابة عليها أسئلة محددة مسبقًا.
لا نوصي باستضافة التطبيق بنفسك ، يمكنك القيام بذلك. إذا كنت ترغب في البدء في استخدام هذا التطبيق لمجموعتك الصغيرة ، فقد سقطت مجانًا لإنشاء حساب على خدمتنا.
sample-compose.yml وقم بملء القيم المفقودة.| اسم | beschreibung |
|---|---|
| مستخدم postgres | قم بإنشاء مستخدم postgres لخدمة المستخدم وقم بتعيين قاعدة بيانات للمستخدم. |
| المنفذ postgres | قم بإنشاء مستخدم postgres للمنفذ وقم بتعيين قاعدة بيانات للمستخدم. |
| المنفذ MongoDB | ما عليك سوى إنشاء مستخدم MongoDB للمنفذ إلى جانب قاعدة بيانات. منح فقط قراءة أذونات للمستخدم المنفذ. |
| Postres Tasky | قم بإنشاء مستخدم postgres لخدمة Tasky وتعيين قاعدة بيانات للمستخدم. |
| Tasky MongoDB | قم بإنشاء مستخدم MongoDB لـ Tasky ومنح المستخدم القراءة/الكتابة الوصول إلى قاعدة البيانات المشتركة مع خدمة Executor. |
API_URI و EXECUTOR_UI_URL .هذا المشروع مدفوع تماما المجتمع. لذلك ، يمكن للجميع المساهمة في هذا المشروع والمساعدة في تحسين المشروع. إذا كنت ترغب في تقديم بعض التعويض النقدي عن العمل الذي نقوم به ، فلا تتردد في القيام بذلك. لا يوجد حاليًا أي خيار للقيام بذلك. ربما تحقق أيضًا من المساهمة
هذا المشروع الآن في مرحلته النهائية ، مع جميع الميزات المطلوبة تنفيذها بالكامل. في هذه المرحلة ، لا توجد خريطة طريق ملموسة لمزيد من التطوير ، وقد تم الانتهاء من عملية التطوير النشط لهذا التطبيق.
سنستمر في معالجة طلبات الميزات وتقارير الأخطاء على أساس كل حالة على حدة ، وتنفيذ ميزات أو إصلاحات جديدة فقط إذا كانت تتماشى مع رؤيتنا وتبدو صالحة. ومع ذلك ، لن نقدم ميزات إضافية بشكل مستقل.
هدفنا الأساسي هو الحفاظ على بساطة التطبيق وسهولة الاستخدام. قد تؤدي إضافة الكثير من الميزات إلى وسط هذه البساطة.
نشجعك على مشاركة أي طلبات ميزة أو تقارير الأخطاء ، ولكن يرجى فهم أن الميزات الجديدة ستتم إضافة فقط إذا كانت مدفوعة باحتياجات خارجية واضحة.
يرجى ملاحظة أن التطبيق قد تطور بمرور الوقت ، ولم يتم التخطيط لمخطط قاعدة البيانات في البداية. بالإضافة إلى ذلك ، في وقت التطوير ، كنت جديدًا نسبيًا في استخدام Diesel.rs كمكتبة لتفاعلات قاعدة البيانات. وقد أدى ذلك إلى جلب بيانات دون المستوى الأمثل. في حين أن بعض المشكلات في المخطط قد تمت معالجتها بالفعل وتحسينها ، فإن عملية جلب البيانات الحالية تظل غير فعالة.
على الرغم من أن تخزين كميات كبيرة من البيانات لم يعد مشكلة ، إلا أن استرجاع البيانات لا يزال يستغرق وقتًا أطول من المطلوب. ومع ذلك ، بفضل ترقيم الصفحات ، تكون أوقات الاستجابة محدودة بشكل ثابت وتظل متسقة ، بغض النظر عن حجم مجموعة البيانات. الجانب السلبي هو أن التطبيق ينفذ المزيد من استعلامات SQL أكثر من اللازم. هذا عدم الكفاءة يمثل مشكلة معروفة ، لكنها ليست أولوية في الوقت الحالي ، لأنها لا تشكل مشكلة كبيرة حتى الآن.
نحن نخطط لإعادة النظر في هذا الجانب عندما يكتسب النظام الأساسي المزيد من المستخدمين ويصبح تقليل تحميل الخادم أمرًا بالغ الأهمية لتقليل تكاليف التشغيل. في المستقبل ، يمكن تخفيف هذا عدم الكفاءة من خلال تنفيذ استراتيجيات التخزين المؤقت الفعالة.
قد لا يستوفي هذا الرمز توقعات من أكثر خبرة في الصدأ. عندما بدأت العمل في هذا المشروع لأول مرة ، كان فهمي لروست لا يزال يتطور. على مدار المشروع ، تعلمت الكثير ، ولكن نتيجة لذلك ، قد لا يلتزم الرمز بالكامل بأفضل الممارسات. أرجو أن أطلب فهمك عند مراجعته. حتى الآن ، أثناء إعادة النظر في هذا المشروع ، أستطيع أن أرى العديد من المجالات التي أتعامل فيها مع الأمور بشكل مختلف.
قد تكون هناك بعض التحسينات في المستقبل ، ولكن حتى بعدها ، سيكون هناك بعض القطع الضخمة من التعليمات البرمجية السيئة من منظور مطور الصدأ ذي الخبرة.