Một trò chơi theo phong cách Pacman đơn giản mà chúng tôi xây dựng bằng Scratch . Trẻ em bị cuốn hút vào việc học lập trình bằng cách muốn xây dựng một trò chơi thú vị và hấp dẫn mà chúng có thể chia sẻ với gia đình và bạn bè.
Tôi nói chuyện nhiều với các bậc phụ huynh để định hướng cho họ về lập trình máy tính cho con em mình. Tôi nhận ra rằng đôi khi họ lo ngại về xu hướng hiện tại trong giáo dục máy tính của trẻ em tập trung vào trò chơi. Khi tôi cập nhật các công cụ, tài nguyên và ứng dụng web giáo dục về kỹ năng số mới nhất, tôi nhận thấy sự gia tăng của các trò chơi được cho là dạy lập trình (hoặc lập trình máy tính). Cần có thời gian và tư duy phản biện để xác định sản phẩm nào thực sự có lợi trong việc học lập trình máy tính và sản phẩm nào chỉ là trò chơi có quy tắc để tuân theo (tức là chỉ là trò chơi) và các kỹ năng có thể chuyển giao đạt được là rất ít.
Triết lý của Coding Kids về giáo dục kỹ năng số dựa trên những trải nghiệm thú vị và hấp dẫn giúp trẻ tự học về tư duy tính toán, giải quyết vấn đề, sáng tạo công nghệ và kỹ năng số.
Để làm rõ phương pháp tiếp cận của Coding Kids, chúng ta cần bắt đầu từ đầu:
Chơi trò chơi điện tử (tiêu thụ công nghệ) không giống như phát triển phần mềm để xây dựng trò chơi (sáng tạo công nghệ). Như Malcolm Turnbull, Thủ tướng Úc, đã từng nói, “ Điều quan trọng là chúng ta phải vượt ra ngoài việc chỉ dạy học sinh cách tiêu thụ công nghệ và thay vào đó tập trung vào việc sáng tạo công nghệ ”.
Tại Coding Kids, chúng tôi tập trung vào việc sáng tạo công nghệ vì đây là nền tảng để phát triển phần mềm, viết chương trình và ứng dụng cho dù đó là phần mềm doanh nghiệp, phân tích dữ liệu hay thiết kế trò chơi. Các kỹ năng liên quan đến thiết kế trò chơi được chuyển giao cho tất cả các hoạt động phát triển phần mềm khác. Các kỹ năng này bao gồm giải quyết vấn đề, logic, tư duy thuật toán, toán học, giao diện người dùng và thiết kế.
Cách tiếp cận của chúng tôi dựa trên thiết kế trò chơi vì đối với trẻ em, vui chơi, giải trí và trải nghiệm hấp dẫn là chìa khóa để học. Tập trung vào việc xây dựng phần mềm doanh nghiệp hoặc phân tích dữ liệu ở cấp tiểu học có vẻ quá xa rời trải nghiệm của trẻ về thế giới. Chúng ta đừng đánh giá thấp sức mạnh và sự phức tạp của trò chơi cũng như sự sáng tạo và phức tạp liên quan đến việc tạo ra chúng.
Các dự án chúng tôi xây dựng không chỉ là trò chơi vì chúng tôi còn tạo ra nghệ thuật đa phương tiện và hoạt hình câu chuyện. Có rất nhiều sự linh hoạt trong các lớp học của chúng tôi để trẻ em phát triển các dự án của riêng mình. Điều này có thể bao gồm từ việc tạo ra một trò chơi gốc đến giải quyết một vấn đề địa phương, xã hội hoặc cộng đồng.
Tôi rất muốn chia sẻ với bạn một ví dụ về những gì chúng tôi làm trong lớp và kết quả học tập mà nó mang lại. Đây là liên kết đến một trò chơi đơn giản theo phong cách Pac-Man mà chúng tôi đã xây dựng trong Scratch.
Trong quá trình xây dựng trò chơi này, chúng ta sẽ học những khái niệm lập trình máy tính cơ bản sau:
- Trình tự – máy tính sẽ thực hiện các lệnh từ trên xuống dưới trừ khi được chỉ định khác và một hành động hoặc sự kiện sẽ dẫn đến một hành động hoặc sự kiện khác
- Phân nhánh/Quyết định – yêu cầu máy tính đưa ra quyết định dựa trên các điều kiện
- Lặp lại – lập trình máy tính để lặp lại các hành động theo một số lượng nhất định hoặc mãi mãi
- Phát hiện va chạm – xác định xem hai vật thể có chạm vào nhau không)
- Biến – lưu trữ dữ liệu (giữ điểm bằng cách lưu trữ dữ liệu này trong một biến có tên là ‘điểm’ và tăng giá trị tại các sự kiện cụ thể, ví dụ: khi Pac-Man ăn một chấm
- Tọa độ Descartes với số dương và số âm – sử dụng tọa độ để điều khiển chuyển động của vật thể theo 4 hướng
- Sử dụng các số được tạo ngẫu nhiên để tạo ra một vật thể chuyển động ngẫu nhiên
- Tạo hoạt ảnh bằng cách sử dụng chuỗi đồ họa tĩnh
Điều cuối cùng tôi muốn làm là nói với trẻ em rằng chúng ta sắp học tư duy thuật toán. Nhưng nếu tôi hỏi chúng về sở thích của chúng, liệu chúng có thích chơi trò chơi máy tính không, trò chơi máy tính nào là trò chơi yêu thích của chúng và tại sao, và liệu chúng có từng nghĩ đến việc phát triển trò chơi máy tính của riêng mình không, thì chúng sẽ bị cuốn hút.
Trong lớp, chúng tôi thảo luận rất sôi nổi về mọi khả năng phát triển trò chơi máy tính của riêng mình: tất cả các cấp độ chúng tôi có thể xây dựng, cách chúng tôi sẽ thiết kế thử thách cho người chơi, những vật phẩm sưu tầm nào chúng tôi có thể tạo ra để tăng sức mạnh cho nhân vật của người chơi, liệu có cho phép nhiều người chơi hay không và nhiều tính năng khác của trò chơi. Thiết kế trò chơi máy tính là một thế giới thú vị khuyến khích trí tưởng tượng và kể chuyện.
Điều mà trẻ em không nhận ra là khi tạo ra thế giới mơ ước của mình trong trò chơi máy tính, thực ra chúng đang học cách giải quyết vấn đề, tư duy tính toán, toán học, thiết kế đồ họa, giao diện người dùng, sáng tạo công nghệ và hiểu biết về kỹ thuật số. Nhưng đó không phải là cách chúng ta khiến chúng bị cuốn hút. Chúng ta nói với chúng rằng chúng ta sẽ xây dựng trò chơi máy tính và hoạt hình.
Học lập trình máy tính, bất kể ngôn ngữ lập trình nào, ví dụ Python hay C++, đều đòi hỏi phải hiểu biết về các nguyên tắc cơ bản của lập trình. Xây dựng phần mềm doanh nghiệp hoặc phân tích dữ liệu nghiên cứu tại trường đại học đòi hỏi cách tiếp cận giải quyết vấn đề giống như thiết kế trò chơi. Học các nguyên tắc cơ bản của lập trình máy tính trong Scratch phát triển các kỹ năng có thể chuyển giao, ví dụ như giải quyết ‘các vấn đề thực tế’ và xây dựng phần mềm doanh nghiệp.
Vậy chúng ta hãy bắt đầu từ một nơi nào đó thú vị và xây dựng trò chơi máy tính của riêng mình.