Giới thiệu

Bài tập trong Lớp học được gọi là các mục CourseWork. Bạn có thể tìm thấy các mục này trên trang Bài tập trên lớp của bất kỳ khoá học nào trong Lớp học. Mặc dù có 4 loại mục Bài tập trên lớp, nhưng hướng dẫn này chỉ tập trung vào loại "Bài tập". Nếu bạn muốn tìm hiểu về cách quản lý các loại Bài tập trên lớp khác, hãy đọc Hướng dẫn quản lý bài tập trên lớp của chúng tôi.

Google Lớp học có hai cách để tích hợp với quy trình công việc của bài tập: nút chia sẻ Lớp họcAPI Lớp học. Nút chia sẻ cho phép người dùng chia sẻ nội dung dưới dạng bất kỳ mục luồng nào thông qua hộp thoại bật lên của Lớp học, trong khi API Lớp học hỗ trợ quy trình giao bài tập từ đầu đến cuối, bao gồm việc tạo bài tập, tạo và quản lý bài tập mà học viên nộp cũng như trả điểm về.

Dưới đây, chúng ta sẽ xem xét những điểm khác biệt chính giữa hai dịch vụ này của nhà phát triển. Cụ thể hơn, chúng tôi sẽ tìm hiểu những khác biệt trong quá trình triển khai và từng giai đoạn trong vòng đời bài tập: tạo bài tập, nộp bài cho học viên và chấm điểm/phản hồi.

Tìm hiểu vòng đời của bài tập

Trước khi chuyển sang sự khác biệt giữa nút chia sẻ và API CourseWork, trước tiên, hãy xác định những yếu tố mà chúng ta coi là vòng đời của một bài tập trong ngữ cảnh Lớp học. Việc này sẽ giúp bạn hiểu cách giáo viên và học viên tương tác với bài tập trong Lớp học.

5 bước chính cần ghi nhớ khi tích hợp với các bài tập trong Lớp học:

  1. Đã tạo bài tập.
  2. Bài tập sẽ được chia sẻ với học viên.
  3. Học viên hoàn thành bài tập.
  4. Học viên nộp bài tập cho giáo viên.
  5. Giáo viên xem xét và chấm điểm bài tập.

Việc tích hợp với bài tập trong Lớp học giúp giáo viên và học viên làm việc một cách liền mạch giữa Lớp học và các ứng dụng bên thứ ba. Thay vì quản lý thông tin chi tiết về một bài tập hoặc bài tập mà học viên đã nộp, người dùng có thể dựa vào ứng dụng của bạn để quản lý các thông tin chi tiết này.

Sơ đồ thể hiện 5 bước của một bài tập

Triển khai

Điểm khác biệt đầu tiên giữa nút chia sẻ và API CourseWork là implementation (triển khai). Từ góc độ của nhà phát triển, nút chia sẻ là phương thức dễ dàng hơn để chia sẻ nội dung lên Lớp học vì nút này chỉ yêu cầu cung cấp tài nguyên JavaScript cần thiết và thêm thẻ nút chia sẻ. Nói một cách đơn giản, việc tích hợp nút chia sẻ trong Lớp học có thể có dạng như đoạn mã dưới đây:

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

Mặt khác, API CourseWork là một phần của API REST API của Google Lớp học. API này yêu cầu thiết lập và bật các khoá API trong bảng điều khiển Google Cloud và làm theo các phương pháp hay nhất để tích hợp với API. Bạn sẽ ít phải lo ngại về điều này nếu nền tảng của bạn đã tận dụng chức năng khác của API Lớp học, chẳng hạn như gửi danh sách tiếp thị lại.

Tạo và chia sẻ bài tập

Mặc dù cả nút chia sẻ và API CourseWork đều hỗ trợ 2 bước đầu tiên của quy trình bài tập, tức là tạo và chia sẻ bài tập với học viên, nhưng có một số điểm khác biệt quan trọng mà bạn nên cân nhắc trước khi chọn giải pháp.

Về cơ bản, cả hai giải pháp này đều cho phép đăng đường liên kết hoặc tệp dưới dạng bài tập lên Lớp học. Đây là một quy trình làm việc hiệu quả dành cho những giáo viên, những người sau này buộc phải thực hiện quy trình sao chép và dán giữa Lớp học và ứng dụng của bên thứ ba. Mặc dù cả hai giải pháp đều hỗ trợ khả năng đăng nội dung dưới dạng bài tập, nhưng bạn nên cân nhắc xem liệu ứng dụng của mình có cần linh hoạt để đăng nội dung này dưới dạng các loại Bài tập trên lớp khác hay thậm chí là thông báo hay không.

Cả hai dịch vụ đều hiển thị tất cả các loại bài đăng trên Lớp học, ngoại trừ Bài tập kiểm tra. Bạn có thể xem phần tóm tắt tất cả các loại bài đăng và liệu các loại bài đăng đó có hiển thị hay không ở bên dưới.

Loại bài đăng Nút chia sẻ API CourseWork
Assignment X X
Bài tập kiểm tra
Câu hỏi: Câu trả lời ngắn X X
Câu hỏi: Trắc nghiệm X X
Chất liệu X X
Thông báo X X

Ứng dụng của bạn cũng có thể chỉ định chức năng như chỉ định tiêu đề và nội dung mô tả cho cả hai giải pháp. Mặc dù việc tích hợp nút chia sẻ cho phép người dùng đặt các trường như ngày đến hạn, chủ đề, chế độ cá nhân hoá và số điểm trong hộp thoại bật lên, nhưng ứng dụng bên thứ ba không thể thiết lập các trường này theo phương thức lập trình. Trong khi đó, API sẽ cho thấy tất cả các trường này cho cả quyền đọc và ghi.

Sửa đổi bài tập

Việc loại bỏ nhu cầu để người dùng đồng bộ hoá các thông tin chi tiết về bài tập của họ theo cách thủ công là một trong những lợi ích của việc tích hợp với API Lớp học. Nút chia sẻ không có chức năng cập nhật hoặc xoá bài tập theo phương thức lập trình, do đó, người dùng sẽ phải sửa đổi thông qua giao diện người dùng Lớp học.

API CourseWork cho phép sửa đổi và xoá bài tập mà ứng dụng của bạn đã tạo, cũng như khả năng truy xuất thông tin chi tiết của mọi bài tập đã đăng lên các khoá học của người dùng. Tuy nhiên, điều quan trọng cần lưu ý là các mục CourseWork không do cùng một bảng điều khiển dành cho nhà phát triển tạo ra sẽ không thể sửa đổi bằng bảng điều khiển dành cho nhà phát triển đó. Mô hình quyền này áp dụng cho phần còn lại của vòng đời bài tập (ví dụ: quản lý bài tập và điểm của học viên) không thể truy cập vào các mục này trong CourseWork.

Tự động đồng bộ hoá bài tập

Với thông báo đẩy của Pub/Sub, ứng dụng của bạn có thể đăng ký nhận các thông báo kích hoạt một sự kiện khi có thay đổi trong các mục của CourseWork và bài tập mà học viên nộp liên quan. Điều này cho phép ứng dụng của bạn dễ dàng đồng bộ hoá bài tập bằng cách loại bỏ nhu cầu kiểm tra liên tục để xem nội dung đã được cập nhật trên Lớp học hay chưa.

Hoàn thành và nộp bài tập

Mỗi bài tập được liên kết với N bài làm mà học viên nộp, trong đó N là số học viên mà bài tập được giao. Nói cách khác, đối với mỗi bài tập, mỗi học viên sẽ có một bài tập mà học viên đã nộp. Bạn có thể truy cập vào bài tập này bằng một mã nhận dạng duy nhất. Những bài tập mà học viên nộp này được tạo tự động và có thể được ứng dụng truy xuất bằng điểm cuối GET và LIST của học viên.

Cả nút chia sẻ và API CourseWork đều hỗ trợ việc thêm đường liên kết hoặc tệp vào bài tập của học viên. Nút chia sẻ cho phép thực hiện việc này thông qua một quy trình làm việc tương tự như hộp thoại tạo bài tập của giáo viên và API CourseWork thông qua điểm cuối studentSubmissions.modifyAttachments. Tuy nhiên, do các hạn chế về quyền API được nêu chi tiết trước đó, chức năng này chỉ giới hạn ở các mục CourseWork mà ứng dụng của bạn tạo. Quy định hạn chế tương tự này không đúng đối với nút chia sẻ. Học viên có thể thêm bài tập của mình vào bất kỳ bài tập nào họ chọn trong Lớp học.

Kết thúc quy trình công việc của học viên

Mặc dù quy định hạn chế về quyền CourseWork không phù hợp với trường hợp sử dụng cho các nền tảng không hỗ trợ tạo bài tập, nhưng có một lợi ích là các nền tảng bên thứ ba có thể ngăn học viên nộp bài tập không chính xác và quên nộp bài tập vì chỉ có nút chia sẻ bị hạn chế khiến học viên không nộp được bài tập.

Kiểm tra và chấm điểm bài tập

Phần cuối cùng của vòng đời bài tập sẽ thuộc về giáo viên. Sau khi học sinh nộp thành công bài tập của mình, giờ đây, giáo viên có thể đánh giá bài tập theo bất kỳ cách nào phù hợp nhất. Đối với các tệp được lưu trữ trong Drive, học viên có thể xem lại ngay trong công cụ chấm điểm trên Lớp học. Tuy nhiên, bạn không thể truy cập vào các ứng dụng bên thứ ba thông qua tính năng chấm điểm trên Lớp học. Ý nghĩa của trải nghiệm này là giáo viên phải di chuyển trên nhiều thẻ trong khi xem xét và chấm điểm bài tập.

Nút chia sẻ hiện không có giải pháp chấm điểm và trả bài tập. Mặc dù các tính năng như nhận xét về bài nộp của học viên hiện không hiển thị thông qua API, nhưng bạn có thể chấm điểm và trả điểm cho học viên thông qua các điểm cuối studentSubmissions.patchstudentSubmissions.return. Bạn chỉ có thể chỉ định điểm cho các mục trong luồng trên CourseWork (Loại Bài tập và Câu hỏi). Bài kiểm tra chỉ có sẵn ở dạng số và có thể được chỉ định dưới dạng điểm không chính thức hoặc điểm cuối cùng.

Tóm tắt sự khác biệt

Tóm lại, bảng dưới đây trình bày thông tin so sánh song song giữa nút chia sẻ và API của CourseWork cho 4 hạng mục được thảo luận ở trên: triển khai, tạo và chia sẻ bài tập, hoàn thành và nộp bài tập cũng như xem xét và chấm điểm bài tập.

Nút chia sẻ API CourseWork
Triển khai Chỉ một vài dòng JavaScript, giúp việc triển khai trở nên đơn giản và nhanh chóng Yêu cầu thiết lập khoá API, bật API trong bảng điều khiển dành cho quản trị viên và giám sát chặt chẽ hơn
Tạo và chia sẻ bài tập
  • Chuyển hướng giáo viên đến hộp thoại chia sẻ nút chia sẻ Lớp học
  • Người dùng có thể đăng tất cả trừ một loại mục trong luồng phát
  • Có thể chỉ định ít trường hơn
  • Một tuỳ chọn cho phép tạo bài tập, không có khả năng lấy hoặc sửa đổi dữ liệu bài tập
  • Không cần hộp thoại nút chia sẻ
  • Bạn có thể chỉ định hầu hết các trường về bài tập trong Lớp học
  • Có thể sửa đổi tài liệu môn học mà ứng dụng của bạn tạo ra
  • Cho phép ứng dụng của bạn lấy tất cả dữ liệu bài tập từ Lớp học
Hoàn thành và nộp bài tập
  • Chuyển hướng học viên đến hộp thoại chia sẻ nút chia sẻ trong Lớp học
  • Cho phép học viên đính kèm bài tập đã nộp vào bất kỳ bài tập nào trong Lớp học
  • Một cho phép gửi tệp đính kèm, không có khả năng lấy hoặc sửa đổi dữ liệu gửi
  • Không cho phép học viên nộp bài tập
  • Không cần hộp thoại nút chia sẻ
  • Chỉ cho phép học viên đính kèm bài tập đã nộp vào bài tập do ứng dụng của bạn tạo
  • Cho phép ứng dụng của bạn sửa đổi bài làm mà ứng dụng của bạn tạo ra của học viên
  • Cho phép học viên nộp bài tập của mình
Kiểm tra và chấm điểm bài tập Không hỗ trợ tính năng chỉ định hoặc trả điểm
  • Cho phép ứng dụng của bạn lấy tất cả dữ liệu về bài tập học sinh nộp từ Lớp học thay mặt cho giáo viên
  • Hỗ trợ người dùng có thể chấm điểm của học viên dưới dạng bản nháp hoặc điểm cuối cùng
  • Cho phép chỉnh sửa điểm của học viên
  • Tạo điều kiện để trả điểm cho học viên