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