葉志向
摘 要:新課改提出在高中信息技術課堂教學中,要落實立德樹人的根本任務,把項目整合于課堂教學中,幫助學生掌握知識與技能的同時,培養(yǎng)學生的學科核心素養(yǎng)。文章以粵教版高中信息技術必修1《數(shù)據(jù)與計算》第三章《算法基礎》中的“計算機解決問題的過程”相關知識點教學為例,闡述在課堂教學中通過創(chuàng)設貼近學生生活的教學情境、使用網(wǎng)絡教學輔助平臺、開展項目式學習等教學策略進行Python教學實踐探索,引導學生使用Python語言中的繪圖模塊(Turtle庫)編寫程序代碼開展項目式學習探究活動,培養(yǎng)學生的信息技術學科核心素養(yǎng)。
關鍵詞:Python教學;學科核心素養(yǎng);教學情境;輔助平臺;項目式學習
一、Python編程語言簡介
Python編程語言廣泛應用于人工智能、云計算、大數(shù)據(jù)、科學計算、神經(jīng)網(wǎng)絡等領域,它是目前最流行的編程語言之一。Python編程教學已經(jīng)成為高中信息技術教學中十分重要的一部分。Python編程語言的語法規(guī)則非常簡單,非常接近于自然語言,因此,很適合高中生入門學習。高中生花費較少的時間,就可以掌握Python的語法規(guī)則,將更多的時間和精力投入到使用Python編程語言解決實際問題的過程中。
二、高中信息技術Python教學實踐探索
高中信息技術學科核心素養(yǎng)包括信息意識、計算思維、數(shù)字化學習與創(chuàng)新、信息社會責任四個核心要素[1]。下面以粵教版高中信息技術必修1《數(shù)據(jù)與計算》第三章《算法基礎》中的“計算機解決問題的過程”相關知識點教學為例,闡述在課堂教學中如何培養(yǎng)學生的學科核心素養(yǎng)。本課的學習對象為高一學生,他們具有一定的計算機使用經(jīng)驗、數(shù)字化學習能力、信息加工處理能力和數(shù)據(jù)分析處理能力。但是,對于計算機編程,大部分學生接觸較少,相關知識了解不多。本課教師引導學生走進Python編程語言的世界,體驗使用Python語言中的繪圖模塊(Turtle庫)編寫程序代碼開展項目式學習探究活動。在這個活動過程中,學生通過發(fā)現(xiàn)問題、解決實際問題,掌握使用計算機解決問題的一般過程,培養(yǎng)學科核心素養(yǎng)。Turtle庫是Python自帶的繪圖模塊,它可以非常方便直觀地繪制出美觀、富有創(chuàng)意的圖形;同時Turtle庫的知識點對學生來說比較易于理解、掌握。筆者通過教學實踐探索,認為在Python教學中,先講Turtle庫的使用,可以充分激發(fā)學生學習Python編程的興趣和探索精神,為后面組織學生開展較難的項目學習探究活動奠定基礎。例如:使用Python編程設計從A市到B市耗時最少的旅行路線方案;使用Python編程設計購買紀念品的最佳方案;使用Python編程對網(wǎng)絡購物平臺客戶行為數(shù)據(jù)進行數(shù)據(jù)分析和可視化表達;使用Python編程剖析空調(diào)企業(yè)智能客服機器人等項目學習探究活動。
(一)創(chuàng)設貼近學生生活的教學情境,培養(yǎng)學科核心素養(yǎng)
創(chuàng)設學生喜聞樂見、貼近學生生活的教學情境,在很大程度上可以激發(fā)學生的學習興趣[2]。例如:在本課引入環(huán)節(jié),播放在東京舉辦的第32屆奧運會相關視頻。視頻中,中國體育健兒頑強拼搏,勇奪獎牌的精彩瞬間,深深地震撼每一個學生的心靈。當中國體育健兒超越對手,讓鮮紅的五星紅旗在賽場升起時,真是令人心潮澎湃!接著引出學習內(nèi)容,引導學生通過自主學習、合作探究,體驗使用Python語言中的繪圖模塊(Turtle庫)編寫程序代碼開展項目式學習探究活動:奧運五環(huán)和繪制五星紅旗。引入環(huán)節(jié),進行了德育滲透,激發(fā)了學生的民族自豪感、愛國熱情和學習興趣,培養(yǎng)了學生的信息意識及信息社會責任等學科核心素養(yǎng)。
(二)使用網(wǎng)絡教學輔助平臺,培養(yǎng)學科核心素養(yǎng)
常見的網(wǎng)絡教學輔助平臺有:ITtools平臺、UMU平臺、課廊平臺、Moodle魔燈平臺等。網(wǎng)絡教學輔助平臺的功能強大,可以為學生的學和教師的教提供強有力的保障。例如:課前教師將本節(jié)課的學習資源(如教學課件、導學案、微課視頻、問卷)等上傳到網(wǎng)絡教學輔助平臺,方便學生課前自學、教師課前了解學情。課中教師通過平臺實時了解學生出勤情況以及學生課堂學習任務的完成情況,進行有針對性的導優(yōu)輔差;學生通過平臺進行自主學習、合作探究。課后,學生可以通過平臺對較難的學習內(nèi)容進行再次學習,加深對知識點的理解;教師可以通過平臺了解學生的整體學習情況,及時調(diào)整教學進度。網(wǎng)絡教學輔助平臺的使用,有助于提升學生數(shù)字化學習與創(chuàng)新的能力。
(三)開展項目選題及規(guī)劃活動,培養(yǎng)學科核心素養(yǎng)
新課改提倡在高中信息技術課堂教學中使用項目式學習方式整合課堂教學,讓學生在數(shù)字化學習環(huán)境下完成項目任務的同時,形成知識的構建,培養(yǎng)學生發(fā)現(xiàn)問題、解決問題的能力,培養(yǎng)學生的學科核心素養(yǎng)[3]。項目主題應該是與學生生活實際相聯(lián)系的問題或者社會熱點問題。本課設置了兩個Python編程項目學習探究活動,分別是:1.使用Turtle庫編寫程序代碼,繪制奧運五環(huán);2.使用Turtle庫編寫程序代碼,繪制五星紅旗。本課,學生重在體驗運行Python程序、嘗試修改Python程序,掌握計算機解決問題的一般過程;因此這兩個編程項目均提供了相關學習資源(如導學案、微課視頻、學習網(wǎng)站等)、大部分程序代碼以及參考答案。同時Python程序中對學生來說較難理解的代碼段,都添加了注釋行,幫助學生理解程序代碼的作用。在教師的引導下,學生只需編寫少量的代碼,即可將程序補充完整,正確地運行出結(jié)果;同時,學生通過嘗試修改程序中一些關鍵代碼,即可運行出不同的效果。在數(shù)字化學習的環(huán)境下,學生完成編程項目探究活動,體驗計算機編程的樂趣,掌握使用計算機解決問題的一般過程,增強信息意識,發(fā)展計算思維、提高數(shù)字化學習與創(chuàng)新能力,樹立正確的信息社會價值觀和責任感。
本課在提出繪制奧運五環(huán)和五星紅旗這兩個編程項目學習探究活動后,教師向?qū)W生展示用Python編寫程序代碼繪制的奧運五環(huán)和五星紅旗圖案。教師為這兩個繪圖程序的畫筆設置了合適的繪畫速度,讓學生很直觀地看到奧運五環(huán)和五星紅旗是如何一筆一筆畫出來的。
學生在感受Python程序的神奇及強大功能的同時,極大地激發(fā)了學習興趣。接著通過問卷星設置問卷,讓學生選擇自己感興趣的項目任務;然后根據(jù)導出的問卷結(jié)果以及學生計算機操作水平能力快速地對學生進行合理分組。每組的組員為6人左右,設置1個組長,盡量做到合理搭配。小組同學進行合理分工,進行項目規(guī)劃,然后通過自主學習、合作探究,共同完成項目學習探究活動。
Turtle庫用于實現(xiàn)繪畫功能,它的主要命令有:移動位置(前進、后退,移動到指定坐標位置);控制方向(左轉(zhuǎn)、右轉(zhuǎn),指向某一角度);畫筆顏色及大小;畫筆狀態(tài)(抬筆、落筆、隱藏、顯示);畫筆速度;畫筆填充(填充顏色、開始及結(jié)束填充)等內(nèi)容。教師在簡單介紹Turtle庫常用命令的用法后,向?qū)W生展示使用Turtle庫編程程序代碼繪制的精美圖案,如校園里的花草樹木、校園里的教學樓等,讓學生在驚嘆Turtle庫神奇繪圖功能的同時,引導學生通過查看相關學習資料體驗運行、嘗試修改簡單程序代碼(如繪制三角形、正方形、圓、五角星以及它們的螺旋線等),為接下來開展項目探究與實踐活動打下基礎。
(四)開展項目探究與實施活動,培養(yǎng)學科核心素養(yǎng)
開展繪制奧運五環(huán)和五星紅旗這兩個編程項目學習探究活動,引導學生掌握計算機程序解決問題的一般過程:分析問題、設計算法、編寫程序、調(diào)試運行程序。在這個過程中,學生發(fā)展了計算思維,提高了數(shù)字化學習與創(chuàng)新能力,實現(xiàn)了培養(yǎng)學科核心素養(yǎng)的目的。
1.開展“繪制奧運五環(huán)”編程項目探究與實施活動,培養(yǎng)學科核心素養(yǎng)
經(jīng)過討論分析,要使用Python編寫程序代碼繪制奧運五環(huán),需要解決以下幾個問題:第一,奧運五環(huán)的繪制標準;第二,繪制圓環(huán);第三,確定五個圓環(huán)的畫筆起點位置坐標。奧運五環(huán)的繪制標準是:由藍色、黑色、紅色、黃色、綠色5個相同半徑的圓環(huán)組成,左右相鄰的2個圓不相交且在同一水平線上;下面黃色的圓環(huán)與上面藍色和黑色的圓環(huán)相交;下面綠色的圓環(huán)與上面黑色和紅色的圓環(huán)相交。
繪制奧運五環(huán)的算法用自然語言描述如下:第一,確定畫布的大小和位置;第二,確定畫布上藍色圓環(huán)的起點位置坐標,設置畫筆大小和顏色,繪制藍色圓環(huán);第三,確定畫布上黑色、紅色、黃色和綠色圓環(huán)的起點位置坐標,設置畫筆大小和顏色,繪制這些圓環(huán)。
編寫程序繪制奧運五環(huán)的難點在于確定五個圓環(huán)的畫筆起點位置坐標。這里假定我們要繪制的奧運五環(huán)每個圓環(huán)半徑均為50像素,間隔均為20像素。首先確定藍色圓環(huán)的畫筆起點位置坐標為(0,0);根據(jù)每個圓環(huán)的半徑均為50像素,間隔均為20像素,可計算出其他四個圓環(huán)的畫筆起點坐標。厘清楚繪制奧運五環(huán)的技術難點及算法框架后,各個學習小組通過查看導學案、查看網(wǎng)絡教學輔助平臺上的教學資源、上網(wǎng)查找資料等方式學習相關的編程知識,開始編寫程序代碼繪制奧運五環(huán)。這里教師已經(jīng)提供了大部分的代碼,學生只需要完成少量的關鍵代碼填空即可。學生通過運行、調(diào)試編寫好的程序,查看繪制好的奧運五環(huán)是否符合標準,進一步修改完善程序代碼。
2.開展“繪制五星紅旗”編程項目探究與實施活動,培養(yǎng)學科核心素養(yǎng)
經(jīng)過討論分析,要使用Python編寫程序代碼繪制五星紅旗,需要解決以下幾個問題:第一,五星紅旗的繪制標準;第二,繪制紅色矩形旗面;第三,繪制五角星。繪制五星紅旗是有國家標準的,學生通過查找相關資料,明確五星紅旗的繪制標準。
繪制五星紅旗的算法用自然語言描述如下:第一,確定畫布的大小和位置;第二,確定畫布上矩形旗面的大小和位置,長寬比例為3:2,畫筆顏色和填充顏色均為紅色,繪制矩形旗面;第三,確定大五角星的起點位置和大小,畫筆顏色和填充顏色均為黃色,繪制大五角星;第四,確定小五角星的起點位置和大小,畫筆顏色和填充顏色均為黃色,繪制小五角星。
編寫程序繪制五星紅旗的難點在于確定大五角星和小五角星的畫筆起點位置坐標,教師可引導學生根據(jù)帶有輔助線的五星紅旗的繪制標準圖案來繪制五星紅旗。首先,編寫程序在畫布上繪制長寬比為3:2的矩形旗面,其次將矩形旗面四等分,最后在左上方的長方形內(nèi)繪制五顆五角星。在左上方的長方形內(nèi)畫出10×15的方格輔助圖形(10行,15列),確定大五角星的起點位置坐標,繪制大五角星,接著確定大五角星的中心點位置坐標;小五角星的起點位置可以根據(jù)大五角星的中心點,使用角度方向結(jié)合移動距離的方式來定位。根據(jù)五星紅旗的繪制標準,這里假定每個格子的長度為L,小五角星的直徑為littlestar,那么大五角星的中心點的坐標位置是橫向數(shù)5個格子,縱向數(shù)5個格子即可定位。
大五角星的中心點到右上角第一個小五角星起點位置移動的角度方向angle1為:math.atan(3/5)*180/math.pi;大五角星的中心點到右上角第一個小五角星起點位置的距離為:math.sqrt((L*5)**2+(L*3)**2)-littlestar/2;其他小五角星的起點位置相對大五角星的中心點移動的角度和距離用同樣的方法即可計算出來。厘清繪制五星紅旗的技術難點及算法框架后,各個學習小組通過查看導學案、查看網(wǎng)絡教學輔助平臺上的教學資源、上網(wǎng)查找資料等方式學習相關的編程知識,開始編寫程序代碼、設置畫布、繪制矩形旗面、繪制大五角星和小五角星。教師已經(jīng)提供了大部分的代碼,學生只需要完成少量的關鍵代碼填空即可。學生通過運行、調(diào)試編寫好的程序,查看繪制好的五星紅旗是否符合標準,進一步修改完善程序代碼。
(五)開展項目成果交流以及自評、互評、教師評價活動,培養(yǎng)學科核心素養(yǎng)
各個項目學習小組完成繪制奧運五環(huán)和五星紅旗這兩個編程項目學習探究活動后,將程序代碼以及繪制的效果圖(屏幕截圖)上傳到網(wǎng)絡教學輔助平臺,在平臺上面開展學生自評、互評及教師評價。首先由各個學習小組介紹自己小組完成的編程項目成果,總結(jié)編寫計算機程序解決問題的過程;分享交流在編寫程序過程中遇到的困難,是如何解決的;完成的編程作品有什么亮點以及編寫程序的收獲。接著由教師和其他學習小組的同學發(fā)表各自的看法,提出需要修改完善的建議,進行相應的點評。在這個過程中,學生的能力得到了發(fā)展,有效培養(yǎng)了學生的學科核心素養(yǎng)。
結(jié)束語
綜上所述,通過創(chuàng)設貼近學生生活的教學情境、使用網(wǎng)絡教學輔助平臺、開展項目式學習等教學策略進行高中信息技術Python教學,可以有效培養(yǎng)學生的學科核心素養(yǎng)。高中信息技術教師要與時俱進,不斷更新自己的知識儲備,采用新的教學策略,改進教學方式方法,適應時代發(fā)展對人才的需要,注重培養(yǎng)學生的學科核心素養(yǎng)。
參考文獻
[1]任友群,黃榮懷.普通高中信息技術課程標準(2017年版2020年修訂)解讀[M].北京:高等教育出版社,2020.
[2]楊文鵬.以計算思維培養(yǎng)為導向健全Python教學策略[J].新課程導學,2022(25):62-64
[3]袁亞芳.項目式學習在高中Python教學中的應用[J].中小學電教,2021(9):19-20