يقدّم هذا الدليل أمثلة على الرموز البرمجية المتعلقة بالتقييم في Classroom API. يركّز هذا المستند على رحلة التقييم الأساسية في Classroom، أي إدارة حالات StudentSubmission والدرجات.
اطّلِع على دليل الدرجات للتعرّف على مفاهيم وضع الدرجات في Classroom.
إدارة حالات StudentSubmission
يمكن إلغاء إرسال StudentSubmission أو تسليمه أو إرجاعه. يشير الحقل state
إلى الحالة الحالية. يتم وضع الدرجات عادةً بعد أن يصبح
StudentSubmission في الحالة TURNED_IN.
لتغيير الحالة باستخدام Classroom API، استدعِ إحدى الطرق التالية:
courses.courseWork.studentSubmissions.turnIn: يمكن للطالب الذي يملكStudentSubmissionفقط تسليمه.courses.courseWork.studentSubmissions.reclaim: يمكن للطالب الذي يملكStudentSubmissionاسترداده فقط. لا يمكن استرداد المهمة إلا إذا تم تسليمها من قبل.courses.courseWork.studentSubmissions.return: يمكن للمعلّمين في الدورة التدريبية فقط إرجاعStudentSubmission. لا يمكن إرجاع المهمة إلا إذا سبق أن سلّمها الطالب.
تقبل كل هذه الطرق مَعلمة body فارغة، كما هو موضّح في المثال التالي:
Python
service.courses().courseWork().studentSubmission().turnIn(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
body={}).execute()
Java
ضبط درجات المهام المُرسَلة من الطلاب
يحتوي مورد StudentSubmission على حقلَين لتخزين الدرجة الكلية للعمل CourseWork الذي تم تقييمه:
draftGradeهي درجة مؤقتة لا يراها سوى المعلّمين.assignedGradeهي الدرجة التي يتم إبلاغ الطلاب بها.
يتم تعديل هذه الحقول باستخدام
courses.courseWork.studentSubmissions.patch، كما هو موضّح في المثال التالي:
Python
studentSubmission = {
'assignedGrade': 99,
'draftGrade': 80
}
service.courses().courseWork().studentSubmissions().patch(
courseId=course_id,
courseWorkId=coursework_id,
id=studentsubmission_id,
updateMask='assignedGrade,draftGrade',
body=studentSubmission).execute()
Java
عند استخدام واجهة مستخدم Classroom، لا يمكن للمعلّمين ضبط assignedGrade إلا بعد حفظ draftGrade أولاً. يمكن بعد ذلك إرجاع assignedGrade إلى الطالب. يمكن لتطبيقك تقييم مهمة طالب بإحدى الطريقتين التاليتين:
خصِّص
draftGradeفقط. ويفيد ذلك مثلاً في السماح للمعلم بمراجعة الدرجات يدويًا قبل وضعها في صيغتها النهائية. لا يمكن للطلاب الاطّلاع على درجات المسودّة.عيِّن السمتَين
draftGradeوassignedGradeلتقييم مهمة بشكل كامل.
استخدِم الوسيطة updateMask لتحديد الحقل المطلوب ضبطه.
راجِع إضافة مرفقات إلى ردّ الطالب للتعرّف على النطاقات والأذونات
المطلوبة لتعديل StudentSubmissions.
قراءة الدرجات المعيّنة
يمكنك الوصول إلى جميع الدرجات الخاصة CourseWork معيّن باستخدام طريقة
courses.courseWork.studentSubmissions.list لاسترداد جميع
StudentSubmissions المقابلة وفحص حقلي
assignedGrade وdraftGrade المناسبين:
Python
response = coursework.studentSubmissions().list(
courseId=course_id,
courseWorkId=coursework_id,
# optionally include `pageSize` to restrict the number of student
# submissions included in the response.
pageSize=10
).execute()
submissions.extend(response.get('studentSubmissions', []))
if not submissions:
print('No student submissions found.')
print('Student Submissions:')
for submission in submissions:
print(f"Submitted at:"
f"{(submission.get('userId'), submission.get('assignedGrade'))}")
Java
راجِع مقالة استرداد ردود الطلاب للتعرّف على النطاقات والأذونات المطلوبة لقراءة StudentSubmissions.
تحديد الدرجات الإجمالية للدورة التدريبية
لا تسمح Classroom API للمطوّرين بقراءة أو كتابة التقدير العام للدورة التدريبية، ولكن يمكنك احتسابه آليًا. إذا أردت احتساب الدرجة الإجمالية، يمكنك الاطّلاع على دليل الدرجات للتعرّف على المفاهيم المهمة، مثل CourseWork، وفترات التقييم، وأنظمة التقييم المختلفة.
تقييم مرفقات الإضافة
إذا كنت مطوّر إضافات Classroom، يمكنك ضبط درجات لمرفقات الإضافات الفردية وتحديد إمكانية عرض الدرجة للمعلّمين عند مراجعتهم لعمل الطلاب. لمزيد من المعلومات، يُرجى الاطّلاع على المرفقات الخاصة بنوع النشاط وإرجاع الدرجات.
درجات قواعد التقييم
تحتوي StudentSubmissions على حقول تمثّل النتائج التي تم الحصول عليها استنادًا إلى
Rubrics:
draftRubricGradeهي مجموعة مؤقتة من نتائجCriterionلا يراها سوى المعلّمين.assignedRubricGradeهي مجموعة نتائجCriterionالتي يتم إبلاغ الطلاب بها.
لا يمكن ضبط نتائج نماذج التقييم باستخدام Google Classroom API، ولكن يمكن قراءتها. اطّلِع على دليل نماذج التقييم والقيود لمعرفة المزيد.