SÁNG KIẾN LẬP TRÌNH GAME BẰNG NGÔN NGỮ LẬP TRÌNH PYTHON GAME “BÁC SĨ DIỆT COVID” – CƠ HỘI NGHỀ NGHIỆP TƯƠNG LAI TRONG THỜI ĐẠI 4.0 CHO HỌC SINH THPT THÔNG QUA HOẠT ĐỘNGTRẢI NGHIỆM SÁNG T
Trang 1SÁNG KIẾN LẬP TRÌNH GAME BẰNG NGÔN NGỮ LẬP TRÌNH PYTHON (GAME “BÁC SĨ DIỆT COVID”) – CƠ HỘI NGHỀ NGHIỆP TƯƠNG LAI TRONG THỜI ĐẠI 4.0 CHO HỌC SINH THPT THÔNG QUA HOẠT ĐỘNG
TRẢI NGHIỆM SÁNG TẠO
Đồng tác giả
1 Nguyễn Thu Hà : Giáo viên Trường THPT Kim Sơn C
2 Nguyễn Mạnh Hùng : Giáo viên Trường THPT Kim Sơn C
3 Tống Văn Thắng : Giáo viên Trường THPT Kim Sơn C
SỞ GIÁO DỤC VÀ ĐÀO TẠO NINH BÌNH
TRƯỜNG THPT KIM SƠN C
Ninh Bình, tháng 5 năm 2022
Trang 2MỤC LỤC
I Tên sáng kiến và lĩnh vực áp dụng 4
1 Tên sáng kiến 4
2 Lĩnh vực áp dụng: Tin học 4
II Nội dung sáng kiến 4
1 Giải pháp cũ thường làm 4
1.1 Nội dung 4
1.2 Ưu điểm, nhược điểm 6
2 Giải pháp mới cải tiến 6
2.1 Nội dung 6
2.2 Ưu điểm, nhược điểm 15
III Hiệu quả kinh tế, xã hội dự kiến đạt được 17
1 Hiệu quả kinh tế 17
2 Hiệu quả xã hội 17
IV Điều kiện và khả năng áp dụng 18
1 Điều kiện áp dụng 18
2 Khả năng áp dụng 19
PHỤ LỤC 21
I Kiến thức về ngành lập trình Game 21
1 Lập trình game là gì? 21
2 Nhiệm vụ của một lập trình viên game? 21
3 Cơ hội việc làm như thế nào? 22
II Các bước thực hiện thiết kế Game “Bác sĩ diệt Covid” 24
1 Cài đặt các phần mềm hỗ trợ lập trình 24
2 Cài đặt thư viện PyGame 25
3 Thiết kế thuật toán game “Bác sĩ diệt Covid” 26
4 Cài đặt chương trình game “Bác sĩ diệt Covid” bằng ngôn ngữ lập trình Python (có file BAC_SI_DIET_COVID.PY kèm theo) 27
4.1 Một số kiến thức cơ bản về ngôn ngữ lập trình Python 27
4.1.1 Biến, phép gán, phép toán 27
Trang 34.1.2 Các kiểu dữ liệu 27
4.1.3 Câu lệnh vào-ra đơn giản 28
4.1.4 Câu lệnh rẽ nhánh if 29
4.1.5 Câu lệnh lặp 30
4.1.6 Kiểu dữ liệu danh sách (list) 30
4.1.7 Xâu kí tự 32
4.1.8 Hàm trong Python 32
4.2 Cài đặt chương trình game “Bác sĩ diệt Covid” bằng ngôn ngữ lập trình Python (Có file BAC_SI_DIET_COVID.PY kèm theo) 33
5 Chuyển chương trình cài đặt game “Bác sĩ diệt Covid” bằng ngôn ngữ lập trình Python sang file exe ( có file BAC_SI_DIET_COVID.EXE kèm theo) 38
Trang 4CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập - Tự do - Hạnh phúc ĐƠN ĐỀ NGHỊ CÔNG NHẬN SÁNG KIẾN
Kính gửi: HỘI ĐỒNG SÁNG KIẾN CẤP NGÀNH
Đồng tác giả:
Ngày tháng năm sinh
Nơi công tác
Chứ
c vụ
Trình độ chuyên môn
Tỷ lệ (%) đóng góp vào việc tạo ra sáng kiến
2 Nguyễn Thu
Hà
23/10/1989
THPT KimSơn C
Giáoviên
Giáoviên
THPT KimSơn C
Giáoviên
Trang 5− Mục tiêu, nội dung, phương pháp dạy học, sản phảm giáo dục của dạy học tiếp cận kiến thức:
+ Về mục tiêu:
• Chú trọng vào nắm vững được kiến thức một các hàn lâm, chưa thật sự
chú trọng vào kỹ năng làm việc và kỹ năng giao tiếp xã hội khác
• Lấy mục tiêu học để thi, học để hiểu làm trọng
• Việc quy địnhcứng nhắc những nội dung chi tiết trong chương trình dễ bịthiếu tính cập nhật
• Tri thức người học có được chủ yếu là ghi nhớ
• Do kiến thức có sẵn nên người học phụ thuộc vào Giáo trình/Tàiliệu/Sách giáo khoa
• Ít chú ý đến khả năngứng dụng nên sản phẩm GD là những con người ítnăng động, sáng tạo
Trang 61.2 Ưu điểm, nhược điểm
Nhược điểm
− Dạy học theo tiếp cận nội dung thì thầy là trung tâm, sử dụng nhiều PPDH
truyền thống Đặc biệt, lối soạn giáo án theo phong cách truyền thống là chỉsoạn từng bước theo trình tự kiến thức (theo đường thẳng) bất di bất dịch như
thường thấy, chỉ soạn cho một dạng đối tượng không phù hợp với dạyng th y, ch so n cho m t d ng đ i tấy, chỉ soạn cho một dạng đối tượng không phù hợp với dạy ỉ soạn cho một dạng đối tượng không phù hợp với dạy ạn cho một dạng đối tượng không phù hợp với dạy ột dạng đối tượng không phù hợp với dạy ạn cho một dạng đối tượng không phù hợp với dạy ối tượng không phù hợp với dạy ượng không phù hợp với dạyng không phù h p v i d yợng không phù hợp với dạy ới dạy ạn cho một dạng đối tượng không phù hợp với dạy
h c theo năng l c là c n phân nhánh, phân lo i trình đ cho đ i tực là cần phân nhánh, phân loại trình độ cho đối tượng ần phân nhánh, phân loại trình độ cho đối tượng ạn cho một dạng đối tượng không phù hợp với dạy ột dạng đối tượng không phù hợp với dạy ối tượng không phù hợp với dạy ượng không phù hợp với dạyng
HS khác nhau
− Sản phẩm giáo dục của dạy học tiếp cận kiến thức chưa được chú trọng Vì
vậy, học sinh còn thiếu các kỹ năng lập trình, kỹ năng ứng dụng công nghệthông tin Vì vậy, bản thân các em còn đang rất mơ hồ về năng lực của bảnthân
− Đặc biệt, dạy học tiếp cận kiến thức chưa có các bài học, chủ đề định hướng
nghề nghiệp cho các em học sinh THPT
2 Giải pháp mới cải tiến
2.1 Nội dung
− Thứ nhất, trong chương trình giáo dục phổ thông môn Tin học 2018, nội dung
định hướng nghề nghiệp là một trong những điểm mới khác biệt so với chươngtrình sách giáo khoa 2006 Một trong những mục tiêu của chương trình cấptrung học phổ thông có nhiệm vụ định hướng nghề nghiệp trong tương lai, các
em học sinh sẽ xác định được thế mạnh, sở trường của bản thân Vì vậy, chủ đề
định hướng nghề nghiệp đã trở thành chủ đề cốt lỗi của môn Tin học Với mục tiêu:
Trang 7− Thứ hai: Quy trình thiết kế hoạt động trải nghiệm sáng tạo.
Bước 1: Xác định nội dung, hình thức hoạt động trải nghiệm sáng tạo
Nội dung:
+ Thứ 1: Kiến thức về ngành nghề lập trình Game (ở phần Phụ Lục I)
+ Thứ 2: Kiến thức cơ bản về ngôn ngữ lập trình Python (ở phần Phụ Lục II)
Hình thức tổ chức: cuộc thi “Lập trình Game bằng ngôn ngữ lập trình
Python”
Bước 2: Tìm hiểu thực trạng, thông tin, địa điểm.
Tại phòng hội đồng trường THPT Kim Sơn C có đầy đủ máy chiếu, máy tính,đường truyền Internet, loa, mic, phần mềm Python và Sublimetext đã cài đặttrên máy tính
Bước 3: Xác định mục tiêu, sản phẩm đầu ra.
Mục tiêu
Kiến thức.
+ Học sinh nêu được:
• Các kiến thức cơ bản về ngôn ngữ lập trình Python
• Các bước chuyển đổi từ file viết bằng ngôn ngữ lập trình Python(đuôipy) sang file chạy exe thực hiện trên bất kỳ máy tính nào (kể cả máytính không cài đặt phần mềm Python)
+ Học sinh tóm tắt được giải thuật Game “Bác sĩ diệt Covid”
Trang 8+ Học sinh xác định được những thế mạnh về công nghệ thông tin, từ đó
định hướng nghề nghiệp trong tương lai
+ Học sinh tóm tắt được kiến thức về ngành lập trình Game
+ Học sinh vận dụng được các câu lệnh trong ngôn ngữ lập trình Python
để thiết kế game “Bác sĩ diệt Covid”
+ Học sinh hứng thú với lập trình, đặc biệt lập trình Game.
+ Học sinh trách nhiệm, kiên trì hoàn thành nhiệm vụ được giao trong
nhóm
Sản phẩm đầu ra: chương trình Game “Bác sĩ diệt Covid”
Bước 4: Xác định các phương pháp dạy học trải nghiệm
− Giáo viên kết hợp 2 phương pháp dạy học là
Phương pháp dạy học hợp tác: học sinh tiến hành hoạt động nhóm, trao đổi,thảo luận và thực hiện nhiệm vụ do nhóm trưởng phân công
Phương pháp dạy học dự án: được tiến hành từ 01/3/2022 đến 24/3/2022qua 3 buổi trực tiếp trên lớp
Phương pháp dạy học khám phá: thông qua việc thiết kế chương trình game
“Bác sĩ diệt Covid”, từ đó học sinh lĩnh hội được tri thức về các câu lệnhngôn ngữ lập trình Python, kiến thức về ngành lập trình viên
Trang 10Hình ảnh: Phiếu đánh giá hoạt động nhóm
Hình ảnh: Bảng tự đánh giá trong nhóm
+ Hướng dẫn cách tính điểm cho cá nhân học sinh theo công thức sau:
Điểm cá nhân học sinh = điểm sản phẩm nhóm * hệ số của học sinh đó
Nếu điểm cá nhân học sinh được làm trong sau đến số thập phân 1 chữ số.Trường hợp, điểm cá nhân học sinh lớn hơn 10 thì làm tròn là 10
Bước 2: Học sinh thực hiện nhiệm vụ
Học sinh thực hiện nhiệm vụ theo sự phân công của nhóm trưởng
Bước 3: Báo cáo sản phẩm
Đại diện học sinh 1 nhóm trình bày Các nhóm khác quan sát, chú ý
Bước 4: Đánh giá, nhận xét
- Giáo viên gọi các nhóm bổ sung các ý kiến khác
- Giáo viên tổng hợp và chốt kiến thức
- Giáo viên nhận xét sản phẩm, quá trình hoạt động nhóm các nhóm
- Thư ký các nhóm tổng kết điểm cá nhân học sinh trong nhóm theocông thức cô giáo đã hướng dẫn
Bước 5: Tổ chức hoạt động học tập trải nghiệm
Trang 11Hoạt động trải nghiệm thiết kế game “Bác sĩ diệt Covid” diễn ra từ ngày01/3/2020 đến 24/3/2022, được tổ chức trên lớp tập trung trực tiếp tại lớp học 3buổi Cụ thể:
− Buổi thứ nhất (ngày 01/3/2022 tại lớp học 11A trường THPT Kim Sơn C),
thực hiện các công việc sau:
Giáo viên chia lớp thành 5 nhóm, cử nhóm trưởng, thư ký:
• Nhóm Khẩu Trang
• Nhóm Khai báo y tế
• Nhóm Khoảng cách
• Nhóm Khử khuẩn
• Nhóm Không tập trung đông người
Giáo viên chuyển giao nhiệm vụ các nhóm, phiếu đánh giá tự đánh giásản phẩm, phiếu tự đánh giá hoạt động nhóm và đánh giá điểm cá nhântrong nhóm
Các nhóm tiếp nhận nhiệm vụ Nhóm trưởng, thư ký ghi biên bản phâncông nhiệm vụ các thành viên trong nhóm
− Buổi thứ hai (ngày 10/3/2022 tại lớp học 11A trường THPT Kim Sơn C):
Các thành viên trong nhóm trực tiếp trao đổi, thảo luận những vấn đề đã làmđược và những vấn đề còn tồn tại, vướng mắc
Trang 12Hình ảnh: Các nhóm trao đổi thảo luận
− Buổi thứ ba (ngày 24/3/2022 tại lớp học 11A trường THPT Kim Sơn C): các
nhóm báo cáo sản phẩm:
Báo cáo hiểu biết của bản thân về ngành lập trình Game ( Có Video vàfile trình chiếu NGÀNH LẬP TRÌNH.PPTX kèm theo)
Trang 13Hình ảnh: Nhóm KHOẢNG CÁCH giới thiệu về ngành lập trình Game
Báo cáo quy tắc chơi game “Bác sĩ diệt Covid” (Có video và file trìnhchiếu QUY TẮC TRÒ CHƠI.PPTX kèm theo)
Hình ảnh: Nhóm KHAI BÁO Y TẾ trình bày quy tắc chơi game “Bác sĩ diệt Covid”
Trang 14 Báo cáo mô tả thuật toán game “Bác sĩ diệt Covid” dạng sơ đồ khối,dạng liệt kê (Có video và file trình chiếu MÔ TẢ THUẬT TOÁNGAME BÁC SĨ DIỆT COVID_DẠNG SƠ ĐỒ KHỐI.PPTX, MÔ TẢTHUẬT TOÁN GAME BÁC SĨ DIỆT COVID_DẠNG LIỆT KÊ.PPTXkèm theo).
Hình ảnh: Nhóm KHẨU TRANG trình thuật toán game “Bác sĩ
diệt Covid”
Báo cáo code chương trình và sản phẩm game “Bác sĩ diệt Covid”(có video và file trình chiếu kèm theo)
Trang 15Hình ảnh: Nhóm KHÔNG TẬP TRUNG ĐÔNG NGƯỜI tiến hành thử
nghiệm game “Bác sĩ diệt Covid”
2.2 Ưu điểm, nhược điểm
Ưu điểm.
Đối với giáo viên:
− Đáp ứng được mục tiêu của chương trình Giáo dục phổ thông tổng thể 2018
− Dạy học lập trình có thể nói luôn là bài toán khó đối với giáo viên trong việclan toả niềm đam mê Nhưng khi thực hiện dạy học lập trình để định hướngnghề nghiệp cho các em thì truyền cảm hứng, yêu thích lập trình rất dễ dàng,thuận tiện
− Giáo viên áp dụng linh hoạt, đa dạng phương pháp dạy học tích cực, đặc biệt làdạy học STEM
Đối với học sinh:
− Sản phẩm của lập trình game là sản phẩm số, đó là chương trình game cótương tác với người chơi Vì vậy, khơi gợi các em học sinh hứng thú, niềm say
mê lập trình nói riêng và trong học tập nói chung
Trang 16− Các em học sinh sẽ tự mình xác định được mục tiêu cho tương lai mình, từ đócác em có kế hoạch và định hướng nghề nghiệp cho tương lai.
− Qua lập trình game các em sẽ hình thành cho bản thân một số kỹ năng:
Kỹ năng công nghệ thông tin : như kỹ năng lập trình, ngôn ngữ lập trình
máy tính, đồ họa chuyển động, hiểu biết về thiết kế và âm thanh,… Khôngphải chỉ là những mã code lập trình, lập trình game cần sự kết nối giữa cácyếu tố hình ảnh, âm thanh, nội dung
Kỹ năng phân tích và giải quyết vấn đề:Lập trình game cũng như giải
toán Một bài toán khó cũng như khi viết mã code cần sự kỹ năng chuyênmôn, tính logic và sự kiên nhẫn để phân tích tìm ra cách giải quyết vấn đề
Sáng tạo: Để làm ra một trò chơi điện tử hấp dẫn, thì người lập trình viên
phải có khả năng sáng tạo cao, tạo nên những ý tưởng xây dựng lên thế giớigame, các cách thức game cuốn hút người chơi
Hiểu và đánh trúng tâm lý người chơi: Phát triển trò chơi điện tử để phục
vụ người chơi, khách hàng mục tiêu
Luôn học hỏi, cập nhật: có khả năng học hỏi, luôn cập nhật những xu
hướng để cho ra ý tưởng phù hợp với thời đại, thu hút khách hàng là người trẻ
bị thu hút bởi cái mới
Kỹ năng giao tiếp, làm việc nhóm: Để phát triển một trò chơi điện tử có
sức góp sức của rất nhiều người, sự phối hợp giữa các vị trí, phòng ban vì thế
kỹ năng làm việc nhóm và giao tiếp hiệu quả
Kỹ năng quản lý thời gian: cần dự đoán trước được những xu hướng, đảm
bảo hoàn thành và cho ra mắt game đúng thời gian, tránh bị đào thải
Nhược điểm.
− Lập trình Game bằng ngôn ngữ lập trình Python yêu cầu các em phải nắmvững các kiến thức tối thiểu về lập trình và ngôn ngữ lập trình Python Đôikhi, một tựa Game hay không cần kỹ năng nào cao siêu mà chỉ cần đến ýtưởng độc đáo và kỹ năng lập trình ở mức căn bản
Trang 17− Do ngành nghề này có mức độ cạnh tranh rất cao nên người lập trình Gamenói chung hay lập trình Game bằng ngôn ngữ lập trình Python đều đòi hỏi
HS có niềm đam mê, và sự sáng tạo
III Hi u qu kinh t , xã h i d ki n đ t đ ệu quả kinh tế, xã hội dự kiến đạt được ả kinh tế, xã hội dự kiến đạt được ế, xã hội dự kiến đạt được ội dự kiến đạt được ự kiến đạt được ế, xã hội dự kiến đạt được ạt được ược c
1 Hiệu quả kinh tế
− Quá trình dạy học định hướng nghề nghiệp cho các em học sinh, đặc biệtnhững học sinh có kỹ năng lập trình tốt thì các em sẽ định hướng nghềnghiệp tương lai trở thành những nhà lập trình game có thu nhập cao và có
cơ hội tiếp cận với các công nghệ hàng đầu trong lĩnh vực công nghệ thôngtin
2 Hiệu quả xã hội
Sáng kiến của chúng tôi sau khi thực hiện sẽ đạt được các hiệu quả xã hội như sau:
− Thứ nhất, qua việc tìm hiểu ngành lập trình game giúp học sinh hiểu và nhìnnhận được khả năng của bản thân đối với bộ môn, từ đó các em sẽ xác địnhđược đúng đắn các mục tiêu học tập của bản thân
− Thứ hai, chủ đề lập trình là chủ đề mà hầu hết học sinh cảm thấy không hàohứng học Nhưng khi áp dụng sáng kiến này thì các em đã xác định được
mục tiêu rõ ràng thông qua việc tự mình trả lời câu hỏi “học lập trình để làm gì” thì các em đã có thái độ tích cực, hào hứng, say mê trong học tập.
− Thứ ba, mỗi giáo viên bộ môn và giáo viên chủ nhiệm trong quá trình dạyhọc phân hóa sẽ hiểu rõ được từng đối tượng học sinh trong lớp, từ đó địnhhướng nghề nghiệp, xác định mục tiêu trong tương lai cho học sinh một cáchtốt nhất
− Thứ tư, sau thời gian thực hành làm việc nhóm để thực hiện lập trình Game
“Bác sĩ diệt Covid” các em cũng rèn luyện các kỹ năng sau:
Kỹ năng công nghệ thông tin
Kỹ năng phân tích và giải quyết vấn đề
Sáng tạo
Hiểu và đánh trúng tâm lí người chơi
Luôn học hỏi và cập nhật
Trang 18 Kỹ năng giao tiếp và làm việc nhóm.
Kỹ năng quản lý thời gian
− Thứ năm, qua bảng khảo sát thống kê so sánh trước và sau khi thực hiện sáng kiến có thể nhận thấy sự thay đổi tích cực của học sinh ở các tiêu chí như xác định được điểm mạnh, điểm yếu cảu bản thân; yêu thích lập trình; định hướng được nghề nghiệp tương lai cho bản thân
Đối tượng khảo sát: 40 học sinh
Trước khi ápdụng sáng kiến
Sau khi áp dụngsáng kiến
Số lượng Tỉ lệ Số lượng Tỉ lệ
1 Xác định được điểm mạnh, điểm
3 Định hướng được nghề nghiệp
IV Đi u ki n và kh năng áp d ng ều kiện và khả năng áp dụng ệu quả kinh tế, xã hội dự kiến đạt được ả kinh tế, xã hội dự kiến đạt được ụng
1 Điều kiện áp dụng
− Để xác định được sở trường, thế mạnh của mỗi học sinh, từ đó định hướngnghề nghiệp cho học sinh đòi hỏi giáo viên cần có nhiều cách làm như: tìmhiểu qua phiếu khảo sát, phiếu điều tra, qua bài tập khảo sát, tìm hiểu qua
hồ sơ học tập của học sinh,
− Để xây dựng chương trình Game đòi hỏi giáo viên cần đầu tư thời gian,công sức, nghiên cứu phương pháp, giải thuật
− Ngoài ra, học sinh theo ngành nghề lập trình Game cần có vốn kiến thứcnhất định về lập trình
− Để giáo viên thực hiện định hướng nghề nghiệp học sinh trung học phổthông theo hướng lập trình Game thì điều kiện cơ sở vật cần đảm bảo:
Thiết bị: máy tính, máy chiếu
Phần mềm: Python; Sublimetext
2 Khả năng áp dụng
Trang 19Bắt đầu từ năm học 2022-2023 , chương trình phổ thông 2018 bắt đầu thựchiện đối với học sinh lớp 10 Vì vậy, giáo viên tiến hành định hướng nghềnghiệp theo ngành lập trình Game cho học sinh lớp 10 khi học chủ đề “Lậptrình cơ bản” và chủ đề “Hướng nghiệp”.
Trang 20Xác nhận của lãnh đạo đơn vị
Kim Sơn, ngày 4 tháng 5 năm 2022
Người nộp đơn
Nguyễn Thu Hà
Nguyễn Mạnh Hùng
Tống Văn Thắng