艾青
信息技術(shù)課是培養(yǎng)學(xué)生計(jì)算思維的重要載體,雖然我國(guó)的程序設(shè)計(jì)教學(xué)已經(jīng)開始在中小學(xué)教育階段得到了越來(lái)越廣泛的推進(jìn),但由于教學(xué)經(jīng)驗(yàn)的缺乏仍然存在著一些問題。為了有效提升思維培養(yǎng)的教學(xué)效益,本文就圍繞著小學(xué)編程的相關(guān)教學(xué)策略做出探究。
一、當(dāng)下小學(xué)信息技術(shù)課編程教學(xué)中的幾個(gè)問題
1.教材體系形式化
由于計(jì)算機(jī)技術(shù)本身誕生于西方并且在西方取得了巨大的發(fā)展成效,因此在編程教學(xué)中所引進(jìn)的教材都是外文翻譯的教材。對(duì)于學(xué)生而言,這些教材本身由于跟中國(guó)思維的差異化以及語(yǔ)言表述上的專業(yè)化往往會(huì)造成一定的理解障礙。教材知識(shí)選擇過于形式化,完全脫離了學(xué)生目前的認(rèn)知水平與生活情境,導(dǎo)致學(xué)生無(wú)法對(duì)這種枯燥復(fù)雜的教學(xué)內(nèi)容產(chǎn)生學(xué)習(xí)熱情。
2.教學(xué)模式過于傳統(tǒng)
在當(dāng)下的小學(xué)教育階段,部分教師仍然受到傳統(tǒng)的教育思想的局限,將自己作為課堂教學(xué)的主體,只顧單方面地向?qū)W生進(jìn)行知識(shí)的傳授。在大部分信息技術(shù)教學(xué)課程中,教師所運(yùn)用的依然是講解式的教學(xué)方法,而學(xué)生只能被動(dòng)地接收知識(shí)。課堂的所有環(huán)節(jié)都由教師來(lái)進(jìn)行推動(dòng),學(xué)生喪失了自主思考與動(dòng)手實(shí)踐的空間,最終導(dǎo)致在長(zhǎng)時(shí)間內(nèi)學(xué)生的學(xué)習(xí)能力都無(wú)法得以有效提升。
3.文本的專業(yè)化編程環(huán)境,阻滯了學(xué)習(xí)的進(jìn)程
所有的編程語(yǔ)言都是基于文本和符號(hào)的編程方式,學(xué)生需要自己輸入指令。而在這過程中往往會(huì)出現(xiàn)各種不同的語(yǔ)法錯(cuò)誤,學(xué)生在這種編程環(huán)境中就無(wú)法進(jìn)行有效的學(xué)習(xí),其計(jì)算思維自然也無(wú)法得到有效培養(yǎng)。
二、基于計(jì)算思維培養(yǎng)的小學(xué)信息技術(shù)課編程教學(xué)的策略
1.設(shè)置編程,建立模型
在編程教學(xué)中,首先需要進(jìn)行的步驟就是對(duì)于編程問題的設(shè)置。教師需要引導(dǎo)學(xué)生明晰自己的問題設(shè)計(jì)需求,進(jìn)而將抽象情境中所展現(xiàn)出的問題結(jié)構(gòu)分離出來(lái),形成基本的問題邏輯。教師可以創(chuàng)設(shè)一些生動(dòng)具象的教學(xué)情境來(lái)吸引學(xué)生的關(guān)注,幫助學(xué)生進(jìn)行問題的設(shè)置。
例如,教師可以設(shè)置一個(gè)貓吃魚的情境,魚在水缸里,貓需要跳上桌子把爪子伸進(jìn)魚缸里抓魚。如果要想順利地吃到魚,貓就需要通過一些障礙。第一個(gè)障礙物是桌子,第二個(gè)障礙物是魚缸。教師可以提出問題來(lái)讓學(xué)生進(jìn)行思考:小貓需要做什么動(dòng)作才能吃到魚?學(xué)生就會(huì)回答:跳躍以及抓取。教師需要讓學(xué)生在模擬情境中把握角色間的聯(lián)系以及相應(yīng)的動(dòng)作事件。從而形成清晰的問題邏輯。
2.提煉算法,自主實(shí)踐
計(jì)算思維中算法是指解決問題的步驟,它是一系列指令的組合。[2]也就是說,在經(jīng)過正確的算法流程之后,問題就能夠得到有效解決。
而有效形成合理的算法流程需要經(jīng)過兩個(gè)步驟:
第一個(gè)步驟,是草擬算法流程圖。為了有效幫助學(xué)生從之前的思維架構(gòu)中提煉出算法,教師需要引導(dǎo)學(xué)生畫出相應(yīng)的流程結(jié)構(gòu)圖,以更為直觀地理清思路。這種方式也能夠幫助學(xué)生快速找到所需要的腳本。例如在“大魚吃小魚”的程序設(shè)計(jì)中,學(xué)生就可以通過預(yù)先擬定算法流程框架的方式來(lái)幫助自己梳理思路,進(jìn)而明確自己所需要運(yùn)用到的腳本模塊進(jìn)行游戲程序的搭建。
第二個(gè)步驟是,讓學(xué)生自主搭建腳本積木。在學(xué)生已經(jīng)明確自己的需求與問題處理目標(biāo)之后,接下來(lái)所需要的就是給予學(xué)生充足的時(shí)間來(lái)引導(dǎo)他們進(jìn)行互相協(xié)作或者獨(dú)立實(shí)踐。每個(gè)人的思維模式不同,提煉出的算法也會(huì)不盡相同,學(xué)生可以在與彼此之間的交流中產(chǎn)生思維的碰撞與拓展,進(jìn)而不斷強(qiáng)化自身的計(jì)算思維。
3.運(yùn)行調(diào)試,修正糾錯(cuò)
計(jì)算思維是通過冗余、賭錯(cuò)、糾錯(cuò)的方式,在最壞的情況下進(jìn)行預(yù)防、保護(hù)和恢復(fù)的一種思維。對(duì)于程序的設(shè)計(jì)而言,搭建出可以推進(jìn)的程序腳本只是程序運(yùn)行過程中的其中一個(gè)步驟,而不是程序設(shè)計(jì)工作的結(jié)束。當(dāng)一個(gè)新興的程序被設(shè)計(jì)出來(lái),學(xué)生所需要進(jìn)行的下一步就是反復(fù)的調(diào)試糾錯(cuò),來(lái)驗(yàn)證程序運(yùn)作的最終效果,以及針對(duì)其中所產(chǎn)生的問題來(lái)進(jìn)行策略方案的調(diào)整。在運(yùn)行效果無(wú)法達(dá)到學(xué)生預(yù)期時(shí),教師就需要引導(dǎo)學(xué)生進(jìn)行算法的調(diào)試。
運(yùn)行調(diào)試是學(xué)生的編程學(xué)習(xí)中一個(gè)尤為關(guān)鍵的步驟,也參與著學(xué)生的全部學(xué)習(xí)過程。學(xué)生需要在進(jìn)行程序調(diào)試的過程中把控全局,并且預(yù)判當(dāng)不同的腳本或者程序語(yǔ)句出現(xiàn)偏差時(shí)可能會(huì)造成的結(jié)果。學(xué)生需要對(duì)實(shí)際運(yùn)行中程序作品所出現(xiàn)的所有問題進(jìn)行集中的整理與歸納,并與應(yīng)達(dá)到的最終效果進(jìn)行一個(gè)系統(tǒng)的比對(duì)。如果實(shí)驗(yàn)偏差較大,那么學(xué)生就需要重新選擇腳本模塊或者調(diào)整某些執(zhí)行語(yǔ)句來(lái)進(jìn)行修正,在反復(fù)的改善中不斷接近應(yīng)達(dá)成的成果,并最終完成程序的運(yùn)行。在這種反復(fù)的糾錯(cuò)過程中,學(xué)生的基礎(chǔ)知識(shí)技能得到了鞏固,計(jì)算思維能力也得以有效提升。
而運(yùn)行調(diào)試本身是一個(gè)較為枯燥單調(diào)的過程,如果單純依靠學(xué)生個(gè)人的力量或許會(huì)耗費(fèi)大量的時(shí)間與精力。并且程序運(yùn)行中所產(chǎn)生的問題往往是多方面的,學(xué)生根本無(wú)法在限定的教學(xué)時(shí)間內(nèi)完成應(yīng)有的學(xué)習(xí)實(shí)踐任務(wù)。因此,信息技術(shù)教師需要思考如何提升課程教學(xué)的效益。合作學(xué)習(xí)就是一種非?;A(chǔ)且有效的方式。教師應(yīng)當(dāng)鼓勵(lì)學(xué)生自主構(gòu)建起一定數(shù)目的學(xué)習(xí)小組,并充分發(fā)揮出集體的力量來(lái)共同解決同一個(gè)程序設(shè)計(jì)問題。小組成員之間可以通過互相的協(xié)商與探討來(lái)集體規(guī)劃出一個(gè)游戲程序的基礎(chǔ)框架,然后分工合作進(jìn)行程序的設(shè)計(jì)、腳本的選擇以及最終的調(diào)試修正。小組成員的共同協(xié)作能夠節(jié)省出大量的程序調(diào)試時(shí)間,教師需要引導(dǎo)學(xué)生對(duì)程序運(yùn)行中所產(chǎn)生的不同問題進(jìn)行系統(tǒng)地總結(jié)與歸納,并制定出相應(yīng)的處理方案。而成員之間的互相探討又能夠不斷拓展學(xué)生的思維領(lǐng)域,從而鍛煉學(xué)生的計(jì)算思維。
4.總結(jié)歸納,形成思維
課程學(xué)習(xí)能夠幫助學(xué)生掌握編程設(shè)計(jì)的基礎(chǔ)理論知識(shí),而課堂實(shí)踐能夠訓(xùn)練學(xué)生的實(shí)操技能。但編程教學(xué)效益的真正提升離不開對(duì)整個(gè)課堂學(xué)習(xí)過程的總結(jié)與歸納。教師需要有意識(shí)地觀察學(xué)生在課堂時(shí)間內(nèi)各個(gè)環(huán)節(jié)的具體表現(xiàn),并且根據(jù)學(xué)生的學(xué)習(xí)反饋情況判斷學(xué)生是否真正完成了知識(shí)的內(nèi)化,并形成了計(jì)算思維,再實(shí)時(shí)進(jìn)行教學(xué)策略的調(diào)整與完善。
對(duì)于課程結(jié)束之后的總結(jié)歸納,教師可以分為兩個(gè)步驟來(lái)進(jìn)行。第一步是鼓勵(lì)學(xué)生進(jìn)行自主總結(jié),舉一反三。在這一教學(xué)環(huán)節(jié)中,教師需要引導(dǎo)學(xué)生通過對(duì)相似問題的類比來(lái)發(fā)現(xiàn)問題的共性,進(jìn)而總結(jié)出適用于某一類問題的處理策略。第二個(gè)步驟就是鼓勵(lì)學(xué)生在課堂上展示自己的作品。對(duì)于編程教學(xué)而言,學(xué)生們的作品展示是必不可少的。在作品展示環(huán)節(jié),學(xué)生們能夠獲得語(yǔ)言表達(dá)、人際溝通的經(jīng)驗(yàn)。而這一環(huán)節(jié)也給學(xué)生提供了讓他們進(jìn)行互相學(xué)習(xí)以及借鑒的機(jī)會(huì)。學(xué)生們能夠在展示過程中認(rèn)知到自己的不足,明晰自己今后的改善方向,并不斷鞏固編程學(xué)習(xí)中的相關(guān)知識(shí),完善自身的計(jì)算思維。
結(jié)語(yǔ)
總而言之,學(xué)生計(jì)算思維能力的培養(yǎng)是一個(gè)長(zhǎng)期性的過程,教師需要基于計(jì)算思維能力的培養(yǎng)方向來(lái)開展教學(xué)活動(dòng),并在實(shí)踐教學(xué)中不斷探索出更科學(xué)高效的教學(xué)模式,嘗試從更加新穎的教學(xué)角度來(lái)完成教學(xué)目標(biāo),不斷提升學(xué)生的計(jì)算思維能力與素養(yǎng)。
參考文獻(xiàn):
[1]陳茂賢,何國(guó)星.基于計(jì)算思維培養(yǎng)的小學(xué)Scratch編程教學(xué)[J].教育信息技術(shù),2017(10):53-57.
[2]陳碧華.基于STEM教育理念的小學(xué)Scratch編程教學(xué)初探[J].科教文匯(下旬刊),2018(06):113-114.