



摘要:本文介紹了STEAM教育理念的內涵,并探討了如何結合Python編程和Minecraft游戲環境設計融合多學科知識的高中游戲編程課例,為高中學校開展編程教育提供了新的途徑。
關鍵詞:STEAM;基于游戲的學習;編程教育;Python
中圖分類號:G434 文獻標識碼:A 論文編號:1674-2117(2024)13-0052-03
STEAM教育理念與高中游戲編程的聯系
在高中編程教學中,Python已經成為必學的內容,但是對于Python的學習大多以程序填空或抄寫代碼為主,并沒有追根溯源,讓學生了解代碼背后的原理。而基于Minecraft游戲的Python教學可以解決這個問題。在Minecraft游戲環境下,結合數學、美術、信息技術、通用技術等多學科知識進行課程設計,可以讓學生了解代碼背后的原理,提升學生的學習興趣。[1]
STEAM教育理念在游戲編程中的體現,就是既有設計的美,又有理科知識的學習。本研究開發的校本課程同時具備以上特征,課程中的成果展示是具體的建筑,在設計中注重美觀性和實用性,有利于從藝術(Arts)角度進行跨學科學習。STEAM是對STEM的發展和升級,在理工科學習中融合人文藝術的學習,與本課例特點高度契合。
基于Minecraft游戲的Python教學設計
1.目標設計
結合STEAM的學科素養要求,目標設計從五大要素課程目標來闡述。其中,要素S(科學)的目標為學習計算機編程的知識;要素T(技術)的目標為具備寫代碼的能力、建筑設計的能力;要素E(工程)的目標為具備工程思維,明確一項工程項目完成前所需考慮的問題和歷經的程序步驟;要素A(藝術)的目標為在建筑設計過程中培養欣賞美和創造美的能力,了解建筑歷史培養人文精神;要素M(數學)的目標為能夠運用數學方法解決遇到的問題。也就是說,課程的總體目標為初步掌握Python語言基礎,可以獨立編寫代碼和設計建筑,提高審美能力,培養科學探究能力和問題解決能力。
2.內容設計
本課程內容參考了電子工業出版社出版的《MINECRAFT編程:使用Python語言玩轉我的世界》[2]一書和高中信息技術、通用技術、美術、數學等學科的內容,并結合項目式學習理念和任務驅動法,設計了7個項目,根據任務難度和數量,每個項目需要1~3課時。經過該課程的學習,學生會形成一份完整的作品集,每一幅作品都有設計圖、Python代碼以及作品效果圖。在前6個課時中,學生會設計五座建筑,骰子的平面構成圖、由長方體造型組成的建筑體、由重復結構組成的建筑體、隨著玩家移動自動生成的建筑體、顯示點陣漢字的建筑。在后2個課時中,學生會設計火箭和還原當地地標性建筑,在設計火箭時會對長征系列運載火箭的歷史,以及不同火箭的結構和外觀有全新的認識,在還原當地地標性建筑時,會對當地有名的建筑設計歷史有全新的認識。具體課程內容如右表所示。
3.流程設計
基于STEAM教育理念的編程教學,屬于工程教育范疇,所以本項目實施過程引入CDIO工程教育模式。CDIO工程教育模式是由MIT和瑞典幾所大學在Wallenburg基金會的資助下,經過幾年的研究、探索和實踐,于2004年創立的。[3]根據該教育模式,筆者將本項目實施過程分為如上頁圖1所示的四步。
基于Minecraft游戲的Python教學案例——地標建筑
1.明確問題,提出想法
教師通過PPT展示蘇州各類地標建筑的原始圖和三視圖,學生在對應的過程中體會平面和立體的關系。接著,教師以東方之門、倫敦塔橋為例,讓學生查閱且分享該建筑的設計歷史,隨后提出本項目的任務——繪制某地標建筑的草圖,并通過編程實現搭建。
2.設計草圖,討論修改
在草圖設計的過程中,學生討論將建筑拆成長方體或平面,接著在三維坐標系中或Excel中繪制草圖(小組成員進行討論,不斷修改)。東方之門作為蘇州最有名的地標建筑,聞名全國,所以有多個小組進行東方之門的設計,如圖2所示為某小組的東方之門設計圖,他們將東方之門拆解成長方體,并標注出長方體對角的坐標和選用的材料。
3.調試代碼,編程實現
在設計圖成型后,需要找到適合的編程方法,如二維表、循環語句、生成函數等,學生可以自主討論選用。由于東方之門的設計圖是由長方體構成的,所以可以使用setBlocks()和setBlock()兩個生成函數不斷地賦值和生成一個個方塊和長方體,在小組討論后,學生編寫出了代碼,并且在觀察效果圖之后對一些細微之處進行返修。如圖3所示為東方之門代碼截圖以及效果圖。
4.作品評估,小組評價
本項目拓展性較強,地標建筑的選擇既考驗學生的空間想象力,同時也要求學生對可行性進行分析。小組在完成作品后在班級進行作品展示,教師及其他小組學生從選材、結構、美觀方面對作品進行打分及分析,隨后小組進行自我反思,從設計到編程進行再次完善。
反思
首先,本課例在實施過程中激發了學生學習的主動性,拓寬了學生的知識面。在學習過程中,學生不是在照葫蘆畫瓢,而是可以進行自主創新。例如,在設計火箭一課中,課堂任務要求學生編程實現搭建立體結構的火箭,但是有學生通過循環實現火箭的上升,加入判斷語句實現了火箭尾焰的變化。
其次,本課程具有完整性和適用性。課程中的編程知識來源于普通高中教材,具有充分的理論支撐和完整的課程設計,具有可推廣性。而且本課程可以在學生初學Python時開設,經過本課程的學習,學生可掌握Python的基本知識,能寫出完整的二三十行代碼的程序。
最后,本課程可以促進學生綜合能力的發展。本課程以STEAM的教育理念為源泉,基于Minecraft游戲的學習環境進行Python學習,結合了通用技術課程中的設計思維、數學學科中的空間思維,以及美學素養,共同編程建造建筑。在這個過程中,綜合利用了多學科知識,促進學生各學科素養的落實,有助于培養當今社會需要的科技創新人才。
參考文獻:
[1]喬江江.基于設計思維的高中游戲編程教學設計與實踐[D].武漢:華中師范大學,2022.
[2]Craig Richardson.MINECRAFT編程:使用Python語言玩轉我的世界[M].北京:電子工業出版社,2020.
[3]Crawley E, Malmqvist J, Ostlund S, et al. Rethinking engineering education-the CDIO approach[M].Berlin: Springer,2014.
作者簡介:周波,南京師范大學蘇州實驗學校,研究方向為信息技術教學。
基金項目:江蘇省教育學會“十四五”教育科研規劃2022年度立項課題“基于Minecraft游戲的結對編程教學實踐研究”(22A04JSSZ254)。