مقدمة

تُعرف المهام في Classroom باسم عناصر "المهام الدراسية"، ويمكن العثور عليها في صفحة "المهام الدراسية" لأي دورة تدريبية معيّنة في Classroom. على الرغم من توفّر أربعة أنواع من عناصر "العمل الدراسي"، يركز هذا الدليل على النوع "مَهمّة" فقط. إذا أردت معرفة كيفية إدارة أنواع "مهام الفصل الدراسي" الأخرى، يمكنك الاطّلاع على دليل إدارة "مهام الفصل الدراسي".

تتوفّر طريقتان للدمج مع سير عمل المهام في Google Classroom: زر المشاركة في Classroom وClassroom API. يتيح زر المشاركة للمستخدمين مشاركة المحتوى كأي عنصر في البث من خلال مربع حوار منبثق في Classroom، في حين تتيح Classroom API سير عمل assignments (المهام) من البداية إلى النهاية الذي يتضمّن إنشاء المهام وإنشاء وإدارة العناصر التي يرسلها الطلاب وإعادة إرسال الدرجات.

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

فهم دورة حياة المهمة

قبل الانتقال إلى الاختلافات بين زر المشاركة وCourseWork API، لنحدِّد أولاً ما نعتبره دورة حياة مهمة في سياق Classroom. سيساعدك ذلك في فهم كيفية تفاعل المعلّمين والطلاب مع المهام في Classroom.

هناك خمس خطوات رئيسية يجب أخذها في الاعتبار عند الدمج مع assignments في Classroom:

  1. تم إنشاء الواجب الدراسي.
  2. تتم مشاركة المهمة مع الطلاب.
  3. يكمل الطالب المهمة.
  4. يرسل الطالب المهمة إلى المعلّم.
  5. يراجع المعلّمون المهام الدراسية ويضعونها في الدرجات.

يتيح الدمج مع مهام Classroom للمعلّمين والطلاب العمل بين Classroom والتطبيقات التابعة لجهات خارجية بسلاسة. بدلاً من إدارة تفاصيل مهمة أو المحتوى الذي يرسله الطلاب، يمكن للمستخدمين الاعتماد على تطبيقك لإدارة هذه التفاصيل نيابةً عنهم.

مخطّط بياني يعرض الخطوات الخمس المطلوبة لإكمال مهمة

التنفيذ

يتمثل الاختلاف الأول بين زر المشاركة وCourseWork API في التنفيذ. من وجهة نظر المطوّر، يشكّل زر المشاركة طريقة أسهل لمشاركة المحتوى على Classroom، إذ لا يتطلّب سوى تضمين موارد JavaScript اللازمة وإضافة علامة زر المشاركة. في أبسط أشكاله، يمكن أن يبدو دمج زر المشاركة في Classroom على النحو الموضّح في المقتطف أدناه:

<script src="https://apis.google.com/js/platform.js" async defer></script>
<g:sharetoclassroom url="http://url-to-share" size="32"></g:sharetoclassroom>

من ناحية أخرى، تشكّل CourseWork API جزءًا من Google Classroom API REST API، والتي تتطلّب إعداد مفاتيح واجهة برمجة التطبيقات وتفعيلها باستخدام Google Cloud Console و اتّباع أفضل الممارسات للدمج مع واجهة برمجة التطبيقات. لا يشكّل ذلك مصدر قلق كبير إذا كانت منصتك تستفيد حاليًا من وظائف أخرى لواجهة برمجة التطبيقات Classroom API، مثل إعداد الجداول الزمنية.

إنشاء المهام ومشاركتها

على الرغم من أنّ زر المشاركة وCourseWork API يتيحان الخطوتَين الأوليتَين من سير عمل المهام الدراسية، وهما إنشاء المهمة ومشاركتها مع الطلاب، إلا أنّ هناك اختلافات مهمة يجب أخذها في الاعتبار قبل اختيار أحد الحلّين.

في الأساس، يتيح كلا الحلّين إمكانية نشر الروابط أو الملفات كمهام في Classroom. يشكّل ذلك سير عمل فعّالًا للمعلّمين الذين كان عليهم في السابق استخدام سير عمل النسخ واللصق بين Classroom والتطبيق التابع لجهة خارجية. على الرغم من أنّ كلا الحلّين يتيحان نشر المحتوى كمهمة، يجب أن تأخذ في الاعتبار ما إذا كان تطبيقك يحتاج إلى مرونة نشر هذا المحتوى كأنواع مهمة أخرى في "العمل الدراسي"، أو حتى كإشعار.

يعرض كلا العرضَين جميع أنواع المشاركات في Classroom باستثناء "واجبات الاختبارات". يمكنك الاطّلاع أدناه على ملخّص لجميع أنواع المشاركات وما إذا كانت معروضة.

نوع المشاركة زر المشاركة CourseWork API
Assignment X X
مهمة اختبار
السؤال: إجابة قصيرة X X
السؤال: خيارات متعدّدة X X
المادة X X
إشعار X X

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

تعديل المهام

إنّ إزالة الحاجة إلى أن يُزامن المستخدمون يدويًا تفاصيل المهام الدراسية المتغيّرة هي إحدى مزايا الدمج مع Classroom API. لا يتضمّن زر المشاركة وظائف لتعديل المهام الدراسية أو حذفها برمجيًا، لذا على المستخدم إجراء أي تعديلات مطلوبة من خلال واجهة مستخدم Classroom.

تتيح CourseWork API إمكانية تعديل وحذف المهام التي أنشأها تطبيقك، بالإضافة إلى إمكانية استرداد تفاصيل أي مهام تم نشرها في الدورات التدريبية للمستخدم. يُرجى العلم أنّه لا يمكن تعديل عناصر CourseWork التي لم يتم إنشاؤها باستخدام وحدة تحكّم المطوّر نفسها باستخدام وحدة تحكّم المطوّر هذه. يسري نموذج الأذونات هذا على بقية مراحل دورة حياة المهام، مثل إدارة العناصر التي أرسلها الطلاب والدرجات، ولا يمكن الوصول إلى عناصر CourseWork هذه.

مزامنة المهام تلقائيًا

باستخدام إشعارات الدفع الفوري في Pub/Sub، يمكن لتطبيقك الاشتراك في الإشعارات التي تؤدي إلى بدء حدث عند حدوث تغييرات في عناصر CourseWork والعناصر التي أرسلها الطلاب المرتبطة بها. يتيح ذلك لتطبيقك مزامنة المهام بسهولة من خلال التخلص من الحاجة إلى عمليات التحقّق المستمرة لمعرفة ما إذا تم تعديل المحتوى على Classroom.

إكمال المهام الدراسية وإرسالها

ترتبط كل مهمة بN إرسال من الطلاب، حيث يشير N إلى عدد الطلاب الذين تم تعيين المهمة لهم. بعبارة أخرى، لكل مهمة، هناك مشاركة مرتبطة بها لكل طالب، ويمكن الوصول إليها باستخدام معرّف فريد. يتم تلقائيًا إنشاء هذه المهام الدراسية التي أرسلها الطلاب ويمكن لتطبيقك استرجاعها باستخدام نقاط نهاية GET وLIST للمهام الدراسية التي أرسلها الطلاب.

يتيح كلّ من زرّ المشاركة وCourseWork API إضافة روابط أو ملفات إلى المحتوى الذي يرسله أحد الطلاب لتنفيذ مهمة. يتيح زر المشاركة إجراء ذلك من خلال مسار عمل مشابه لمربّع الحوار الخاص بإنشاء المهام الدراسية، وCourseWork API من خلال نقطة نهاية studentSubmissions.modifyAttachments. ومع ذلك، بسبب القيود المفروضة على أذونات واجهة برمجة التطبيقات الموضّحة سابقًا، يقتصر استخدام هذه الوظيفة على عناصر CourseWork التي أنشأها تطبيقك. لا ينطبق هذا القيد نفسه على زر المشاركة، إذ يمكن للطلاب إضافة أعمالهم إلى أي مهمة دراسية يختارونها من Classroom.

إنهاء سير عمل الطالب

على الرغم من أنّ القيود المفروضة على إذن CourseWork لا تخدم حالة استخدام منصّات التي لا تتيح إنشاء المهام، إلا أنّ إحدى المزايا هي أنّ منصّات الويب التابعة لجهات خارجية يمكنها منع الطلاب من إرسال مهمة غير صحيحة أو نسيان إرسال عملهم لأنّ زر المشاركة هو الوحيد الذي يتم محدودة إمكانية استخدامه من قِبل الطلاب لإرسال مهامهم.

مراجعة المهام الدراسية وتقييمها

يعود الجزء الأخير من دورة حياة المهمة إلى المعلّم. بعد أن يقدّم الطلاب واجباتهم بنجاح، يمكن للمعلّم الآن مراجعتها بالطريقة التي تناسبه. بالنسبة إلى الملفات التي يتم تخزينها في Drive، يمكنهم مراجعتها مباشرةً في أداة وضع الدرجات في Classroom. ومع ذلك، لا يمكن الوصول إلى التطبيقات التابعة لجهات خارجية في أداة وضع الدرجات في Classroom. ويؤدي ذلك إلى أنّه على المعلّمين الانتقال بين علامات تبويب متعددة أثناء مراجعة الواجبات وتقييمها.

لا يقدّم زر المشاركة حاليًا أي حلّ لتقييم المهام الدراسية وإعادتها. على الرغم من أنّ ميزات مثل التعليقات التي يرسلها الطلاب ليست متاحة حاليًا من خلال واجهة برمجة التطبيقات، إلا أنّه يمكن وضع الدرجات وإرسالها إلى الطلاب من خلال نقطتَي نهاية studentSubmissions.patch وstudentSubmissions.return. يمكن تحديد الدرجات لعناصر بثّ "المهام الدراسية" فقط (أنواع "المهام الدراسية" و"الأسئلة"). وهي متاحة فقط بالتنسيق الرقمي ويمكن تحديدها إما كنسخة أو درجة نهائية.

ملخّص الاختلافات

لتلخيص كل ما تمت مراجعته في الأقسام السابقة، يعرض الجدول التالي مقارنةً جنبًا إلى جنب بين زر المشاركة وCourseWork API للفئات الأربع التي تمت مناقشتها أعلاه: التنفيذ وإنشاء المهام الدراسية ومشاركتها، إكمال المهام الدراسية وإرسالها، ومراجعة المهام الدراسية وتقييمها.

زر المشاركة CourseWork API
التنفيذ بضعة أسطر فقط من JavaScript، ما يسهّل التنفيذ ويجعله سريعًا تتطلّب هذه الطريقة إعداد مفاتيح واجهة برمجة التطبيقات وتفعيل واجهات برمجة التطبيقات في "وحدة تحكّم المشرف" ومراقبة أدائها عن كثب.
إنشاء المهام الدراسية ومشاركتها
  • إعادة توجيه المعلّمين إلى مربّع حوار مشاركة زر المشاركة في Classroom
  • يمكن للمستخدمين نشر جميع أنواع عناصر البث باستثناء نوع واحد
  • يمكن تحديد عدد أقل من الحقول
  • يتيح أحدهما إنشاء المهام، ولا تتوفّر إمكانية سحب بيانات المهام أو تعديلها.
  • عدم الحاجة إلى مربّع حوار زر المشاركة
  • يمكن تحديد معظم حقول المهام في Classroom
  • إمكانية تعديل الدورات الدراسية التي أنشأها تطبيقك
  • السماح لتطبيقك بسحب جميع بيانات المهام من Classroom
إكمال المهام الدراسية وإرسالها
  • إعادة توجيه الطلاب إلى مربّع حوار مشاركة زر المشاركة في Classroom
  • السماح للطلاب بإرفاق ما أرسلوه بأي مهمة في Classroom
  • يتيح أحدهما إرفاق العينة، ولا يمكن سحب بيانات العينة أو تعديلها.
  • لا تسمح للطلاب بإرسال المهمة
  • عدم الحاجة إلى مربّع حوار زر المشاركة
  • السماح للطلاب بإرفاق ما يرسلونه بالمهام التي أنشأها تطبيقك فقط
  • السماح لتطبيقك بتعديل المحتوى الذي يرسله الطلاب وينشئه تطبيقك
  • السماح للطلاب بإرسال مهامهم
مراجعة المهام الدراسية وتقييمها لا تتوفّر إمكانية تحديد الدرجات أو عرضها.
  • السماح لتطبيقك بسحب جميع بيانات الإرسال التي أرسلها الطلاب من Classroom نيابةً عن معلّم
  • إتاحة إمكانية منح الدرجات للطلاب، إما كمسودة أو نهائية
  • إتاحة إمكانية تعديل درجات الطلاب
  • إتاحة إمكانية إرجاع الدرجات إلى الطلاب