劉文瑜 葛麗芳 陳 義
(福建工程學院計算機科學與數學學院,福建 福州 350118)
2020年,教育部、國家發展改革委、財政部發文,指出要依托“雙一流”建設,高校要深化學科交叉融合,培養和匯聚具有創新能力和合作精神的高層次人才[1,2]。2018年,教育部出臺的《關于加快建設高水平本科教育,全面提高人才培養能力的意見》(教高〔2018〕2號)[2]等系列重要文件中指出,推進現代信息技術與教育教學的深度融合,加快形成多元協同、內容豐富、應用廣泛、服務及時的高等教育云服務體系,打造適應學生自主學習、自主管理、自主服務需求的智慧課堂、智慧校園。
Python語言作為我國高校各專業程序設計入門語言,簡單易學、開源兼容、面向對象、庫資源豐富,是最接近自然語言的編程語言,代碼簡潔高效,對于沒有編程經驗的學生來說較易上手,學生無須糾結語言和程序編寫方式,而是更快地找出問題并提出解決方案,這樣更容易激發學生的學習熱情。作為入門編程語言,Python適合所有專業,近年來已成為國內很多高等院校的程序設計入門語言。
超星平臺是一個以在線教學平臺為中心,涵蓋課前建課、備課和學生預習,課中課堂教學和實踐操作、課后復習考核和教學評估的日常教學全過程,融合教室端、移動端、管理端各類教學應用于一體的并支持個性化定制的信息化智慧校園教學平臺。
面向Python語言越來越廣泛的應用和各高校智慧校園系統的普及和推廣,本文探索了一種結合Python語言的特性及工程類學生的專業特性,提出了一種基于超星平臺知識游戲驅動,考核多樣化的教學模式。
Python語言程序設計作為高校工程類專業的公共基礎課程的入門語言,應用廣泛,福建工程學院已向土木工程、地下空間、給排水工程、環境工程、交通工程等工程類專業開設Python程序設計語言,但是教學模式比較傳統,在教學成果上收獲甚微。
Python程序設計編程語言作為工程類專業公共基礎必修課,課時一般在48~64課時,理論和上機實驗各半,教學大綱一般涵蓋程序流程控制、序列結構、字符串與正則表達式、文件異常等基礎知識,教學大綱傳統單一,沒有充分考慮到專業的特性和Python語言的豐富性來制定適合和滿足專業需求的教學大綱。
面向工程類學生的Python編程語言的教學大部分采用傳統公共基礎課的模式,課堂上教師以授課為主,理論教學和上機實驗相結合,一般每一章節對應一次課后上機,上機的題目也僅僅是檢測學生對本章知識點的掌握情況。題型單一枯燥,大部分學生以完成作業為目標,這種被動的課堂教學導致學生上課時懵懵懂懂,效率低下,一學期課程結束,學生對這門語言的使命完成,缺乏拓展性。
Python編程語言的教學,無論是線上的考核還是線下的筆試都采用傳統的考核模式試卷為主,題型跟Python二級考試類似,有選擇、填空、編程等,這樣的考核方式僅僅檢測學生對知識點的熟悉程度,并未檢測學生對這門語言的現實或專業應用,學生在學習過程中形成思維定式,認為在期末考的是成績,而不是編程素養。
目前,高校紛紛開展Python語言課程設計,Python教學改革研究成為熱點。嵩天等人[3,4]以開展非計算機專業本科生Python語言教學為契機,建立完整的教學體系,積極豐富的線上線下教學資源;許洪云等[5,6]探索新工科背景下Python教學探索與建設;鄭秀杰等[7,8]基于任務驅動、項目驅動的非計算機專業Python教學實踐。上述研究雖然提升了Python教學的效果,但是在教學過程中的趣味性方面有所欠缺。
綜上所述,傳統的教學方式滿足不了智能時代對綜合性人才的需求,急需探索一種適合工程類專業的學生的教學模式。
工程類的專業包含土工工程、地下空間、道路橋梁、環境工程等,培養目標是在相應的工程領域從事規劃、勘察、設計、施工、原材料的選擇研究和管理等方面工作的高級工程技術人才。這些學生大部分理科基礎扎實,思維活躍,有部分在高中時已經接觸簡單的編程課程,具有一定編程基礎知識和計算思維。在教學的過程中發現學生對編程的認知水平存在一定的差距,一般上機作業能在課堂上自主完成,期末成績優異的同學大部分是高中已經接觸編程語言,具有一定的編程思想。而對一部分同學來說,編程太抽象。
Python是一門新興的程序設計語言,是一種解釋、面向對象、動態數據類型的高級程序語言,其具有簡單易學、可擴展、資源豐富、開發生態鏈完整等優點特別,使得Python語言已經在云計算、云服務、人工智能、Web、科學計算、大數據等領域應用廣泛。Python語言也有豐富的開發環境,基礎的Python IDLE、具有Project工程管理的PyCharm、具有數據科學研究的Anaconda、用戶界面友好漂亮的SublimeText編輯器等豐富的編程環境。
學生的角度:在Python課程授課前,學生可以先探索Python編程語言,自發主動地認識Python語言,結合Python語言豐富的應用,Python語言多樣化的編程環境和工程類專業的特性和應用,以及自身編程水平,做好學習Python編程語言的預習工作。
教師的角度:面向工程類Python語言程序設計的教學,先與專業的教師進行溝通交流、專業的領域一般學生要做哪些課程設計、畢業設計等綜合應用,Python在哪些專業領域有豐富的應用,從用戶可視化的角度和專業需求對Python這門課做好相關的案例和專業應用,為上好工程類專業的Python課程做好充分的準備。
超星網絡平臺引進慕課、現代化先進教學的理念和模式,基于高校教師的用戶習慣與體驗,開發了集建課、富媒體內容建設、課程門戶建設于一體的全站式課程建設簡易功能,降低建設難度,實現高效課程建設。在此平臺的基礎上,針對工程類的學生在每一章知識的開頭,設計可視化的游戲界面。基于知識的游戲可以通過平臺下發給授課的班級,游戲設計如表1所示。

表1 Python知識的游戲設計
在超星平臺講授程序流程控制時,在課前嵌入“迷宮游戲”,迷宮有多種分支,在某些條件滿足的情況下選擇符合條件的下一步,在某些條件滿足的情況下陷入迷宮死循環中。通過可視化的游戲界面,讓學生更好地理解程序流程控制的分支、循環結構。在講述序列結構時,引入中秋節的博餅游戲,根據投擲6個骰子的情況獲取對應的獎項,通過這種可視化的動態的操作,在課堂上和游戲環節相結合引入序列結構,并鞏固程序控制結構。在講述文件與異常的情況,直接通過文件的增、刪、改等操作引入文件相關函數。在講解Python應用數據分析這一章,通過微信小程序,分析各種可視化的圖表顯示微信上的男女生比例、各個省的好友人數以及自己感興趣的信息。課前引入游戲的機制,讓學生在學習每一章之前先玩游戲,對所學的知識有一個更直接具體的認知,授課時在認知的基礎上把知識點和游戲相結合,讓學生更積極,主動地去探索Python語言。
傳統的Python教學考核模式是以考試為主,對于有目的性的考試,學生的精神更聚焦在Python本身的知識點和期末如何獲得高分上,忽略了考核學生對Python這門課的應用。在期末通過超星平臺以問卷調查的方式調查學生期望期末的考核方式,比如,考試、大論文、項目等綜合的方式,讓學生自主選擇。平臺根據學生的選擇提交期末作業,這種多樣化的考核方式,可以讓學生根據自己對這門課的認知和掌握程度,自主選擇適合自己的方式。
面對工程類學生的專業特性和Python豐富的應用基礎,探索一種新的自主、融入知識游戲驅動、把知識點設計成可視化的游戲機制,在重要章節前讓學生在超星網絡平臺的客戶端通過游戲對新的知識點有一個形象、具體、趣味的認知,課中結合游戲模塊化講解融入知識點,課后學生自主消化研究,再配合多樣化考核的Python教學模式,把學生培養成同時具備專業知識、實踐能力、創新意識、融入各個專業知識體系的全面發展的優秀大學生。