算法與程序設(shè)計是高中信息技術(shù)課程體系的重要選修模塊,同時也是一門具有嚴謹性、抽象性、邏輯性和程序化的學(xué)科,是高中信息技術(shù)教學(xué)的重點和難點之一。
最近幾年,隨著新課改的不斷向前推進,高中教學(xué)領(lǐng)域?qū)F(xiàn)代信息技術(shù)納入整個課程體系中,大多數(shù)高中更加注重學(xué)生的信息素養(yǎng)培養(yǎng)。算法與程序設(shè)計作為高中信息技術(shù)的重要選修課程,其在教學(xué)方面存在一定的問題,由于整個課程內(nèi)容本身比較抽象、枯燥且邏輯思維相對較強,對于初學(xué)者來說理解難度較大。同時,教師還要對學(xué)生所求解的問題進行進一步的算法分析。信息技術(shù)教師應(yīng)該把握算法與程序設(shè)計課程的教學(xué)本質(zhì),在新課改背景之下轉(zhuǎn)變傳統(tǒng)的教學(xué)思路和教學(xué)方法,加速建立健全教學(xué)制度,制訂相關(guān)教學(xué)計劃,使學(xué)生可以充分地融入課程體系之中,更好地理解理論知識,應(yīng)用理論知識,培養(yǎng)學(xué)生的邏輯思維能力,保證他們能運用現(xiàn)代信息技術(shù)更好地解決現(xiàn)實問題[1]。
一、當前算法與程序設(shè)計教學(xué)面臨的幾個問題
(一)教學(xué)內(nèi)容把握不準確
當前很多高中信息技術(shù)教師在開展算法與程序設(shè)計教學(xué)中對教材的重點語句進行了剖析,但缺乏關(guān)于算法核心的編程教學(xué)內(nèi)容。在算法與程序設(shè)計教學(xué)中,整個教學(xué)體系當中首先會給出一般的語法模式,然后教師會對這些語法模式進行重點講解,之后再給出具體例子。教師在課堂教學(xué)中偏重于舉一反三地使用語法語句開展深入教學(xué),而不是將語法教學(xué)與算法教學(xué)有效結(jié)合構(gòu)建算法思想。由于教學(xué)內(nèi)容與學(xué)生的實際生活聯(lián)系不大,因此其無法激發(fā)學(xué)生的學(xué)習(xí)興趣,加之學(xué)生對編程的了解非常有限,導(dǎo)致學(xué)生不知道如何去編寫程序,尤其是在解決實際問題時,不知道用編程的手段來解決問題,產(chǎn)生無從下手的情況。
(二)課堂教學(xué)模式固化,跟進教學(xué)理念
近些年,隨著新課程教學(xué)改革的不斷向前推進,現(xiàn)代化的教學(xué)理念、教學(xué)方法在各個學(xué)科得以有效推廣和應(yīng)用,但在高中信息技術(shù)課程當中,一些信息技術(shù)教師沒有跟進新的教學(xué)理念。高中信息技術(shù)屬于選修課,所以一些信息技術(shù)教師認為這門課并不重要,他們對信息化教學(xué)的整體結(jié)構(gòu)認知不到位,教學(xué)中也不能結(jié)合新課改的現(xiàn)實需要對其進行改革,始終采用傳統(tǒng)的教育方式,這些都不利于教學(xué)效率的提高。
在課堂教學(xué)時,一些教師仍然固守著傳統(tǒng)的、以教師為中心的教育方式,普遍采用先講后編或者先聽后編的方式,導(dǎo)致學(xué)生參與學(xué)習(xí)的積極性不足,產(chǎn)生厭倦心理。教師和學(xué)生互動過程中,也缺少行之有效的方式,因此不能幫助學(xué)生獲得更多的知識和有效的學(xué)習(xí)方法,這也間接影響了學(xué)生對算法與程序設(shè)計課程的學(xué)習(xí)興趣。
因此,教師要從信息技術(shù)這門學(xué)科核心素養(yǎng)出發(fā),把握其教學(xué)目標。算法與程序設(shè)計的重點在于“設(shè)計”,算法與程序的設(shè)計強調(diào)邏輯的嚴謹性、高效性,教學(xué)過程中不能把程序當成設(shè)計,也不能把算法當成設(shè)計。
(三)業(yè)務(wù)知識、能力欠缺,警惕教學(xué)誤區(qū)
對于初學(xué)者來講,算法與程序設(shè)計課程是一門邏輯性和抽象性相對較強的課程。學(xué)生學(xué)習(xí)信息技術(shù)的起點低,知識面窄,對算法、程序、設(shè)計的概念缺少很好的理解,而部分教師也并不能很好地區(qū)分它們的不同之處,這就需要提升信息技術(shù)教師的業(yè)務(wù)能力,結(jié)合教學(xué)的實際情況對算法與程序設(shè)計展開教學(xué)。
教學(xué)中,教師要先理解概念。算法不等于程序,算法可以用文字表達,可以用圖形表達,也可以用IE流程圖表達等。算法是一種思想,是一種邏輯結(jié)構(gòu),是用以解決問題的方法。程序是算法的一種表達方式,也可以用數(shù)學(xué)的方式、實踐的方式去表達。程序不是唯一的表達方式。而算法與程序設(shè)計,說的是如何找到一種解決實際需求的算法,最后用程序的方式來表達的一種過程。
同時,教師要擺脫教學(xué)誤區(qū)。在操作或者解決實際問題時,語法錯誤或者邏輯錯誤是十分常見的,但教師在教學(xué)本模塊內(nèi)容時,不能把重心放在這個地方。教師需要提醒學(xué)生及時進行自我改正,培養(yǎng)其發(fā)現(xiàn)錯誤的能力。教師也不能陷入語法教學(xué)的誤區(qū),要把重心放在培養(yǎng)學(xué)生的整體設(shè)計思維和教學(xué)設(shè)計上,要思考如何引導(dǎo)學(xué)生形成解決問題的信息思維。
二、算法與程序設(shè)計教學(xué)方法
(一)構(gòu)建聯(lián)想教學(xué)模式,重新構(gòu)建知識結(jié)構(gòu)
高中信息技術(shù)課程當中的算法與程序設(shè)計是按照理論、實踐語句和程序的順序安排的,通常情況下教師在課堂上往往會講解本節(jié)課所涉及的理論知識,包括算法的概念、算法的描述方法、流程圖、畫法等,然后再講解具體的算法操作程序[2]。但由于很多高中生在初中階段并沒有接觸過算法與程序設(shè)計的相關(guān)內(nèi)容,學(xué)習(xí)新知識的難度相對較大,很容易喪失學(xué)習(xí)興趣,所以要求教師在教學(xué)過程中必須改變傳統(tǒng)的教學(xué)管理方式,采用聯(lián)想教學(xué)方法,以更好地加深學(xué)生對知識點的理解。所謂的聯(lián)想教學(xué)方法,就是在教學(xué)過程中讓學(xué)生根據(jù)已有的信息技術(shù)知識開展針對性的聯(lián)想,激發(fā)學(xué)生的邏輯思維,以此來提高課堂教學(xué)效率。
例如,在進行計算機解決問題步驟分析時,教師可以利用之前所學(xué)習(xí)的程序設(shè)計語言來進行進一步的算法描繪教學(xué),運用VB語言來編寫程序,讓學(xué)生進行觀摩,并綜合運用之前所學(xué)數(shù)學(xué)知識初步判定程序代碼的運用是否合理。最后讓學(xué)生自行總結(jié)解決問題的過程,并用文字或圖形表示出來。學(xué)生總結(jié)的過程,實際上就是設(shè)計的過程;學(xué)生思考的過程,就是信息思維的培養(yǎng)過程。通過聯(lián)想教學(xué),學(xué)生能夠?qū)⑶昂笏鶎W(xué)知識進行有效的串聯(lián),加快構(gòu)建完善的知識體系,提升學(xué)習(xí)興趣和學(xué)習(xí)效率。
(二)注重實踐教學(xué),提高學(xué)習(xí)效率
算法與程序設(shè)計雖然具有較強的邏輯性和理論性,但是其更加具有實踐性,通過實踐操作,能夠讓學(xué)生將課堂上學(xué)習(xí)到的理論知識綜合應(yīng)用到解決問題的過程中。課堂上教師的講解和示范操作是學(xué)生掌握新知識的一種主要方式。隨著新的教育理念以及教學(xué)方法的不斷完善,傳統(tǒng)的教學(xué)方式已經(jīng)不能適應(yīng)課程教學(xué)的實際需求,這就需要教師在理論教學(xué)的基礎(chǔ)上融入更多的實踐教學(xué)內(nèi)容,以鍛煉學(xué)生解決問題的能力。實踐教學(xué)是鞏固和檢驗理論知識的重要學(xué)習(xí)方式和有效途徑。通過理論知識的學(xué)習(xí),學(xué)生能夠初步掌握基本的算法和程序設(shè)計的相關(guān)知識。在這個基礎(chǔ)上,教師可以為學(xué)生提供相應(yīng)的設(shè)計練習(xí)習(xí)題,以此檢驗學(xué)生所學(xué)習(xí)知識的扎實性以及是否能夠應(yīng)用理論知識來解決實際問題[3]。在實踐操作過程中,知識是基礎(chǔ)導(dǎo)向,知識的應(yīng)用是教育教學(xué)的重要目標。
很多教師在完成一個章節(jié)知識點的教學(xué)之后,往往會急于開啟下一章節(jié)知識的學(xué)習(xí),這容易忽視學(xué)生對學(xué)習(xí)內(nèi)容的掌握程度。所以在實際教學(xué)期間,教師不能急于開展新內(nèi)容的學(xué)習(xí),要引導(dǎo)學(xué)生對前面所學(xué)習(xí)的內(nèi)容進行進一步的鞏固訓(xùn)練,通過練習(xí)題加深學(xué)生對知識的理解和認知。只有打好基礎(chǔ),學(xué)生的學(xué)習(xí)效率才會更高。例如,在進行選擇結(jié)構(gòu)學(xué)習(xí)時,教師可以為學(xué)生創(chuàng)造一個良好的學(xué)習(xí)環(huán)境,更好地引領(lǐng)學(xué)生進入課堂。教師在課堂教學(xué)中可以運用實際案例引導(dǎo)學(xué)生進入課堂學(xué)習(xí)。
例如,怎樣查找出第一宇宙速度,如何實現(xiàn)通過輸入飛船速度來讓程序判定飛船是否能夠進入深空,并給出具體的流程圖。教師和學(xué)生一起討論并畫出運行流程圖。通過具體的事例,教師能夠引導(dǎo)學(xué)生更好地歸納相關(guān)知識,同時給出例句,和學(xué)生一起分析每一個例句表達的含義,歸納出IF語句格式。為了檢測學(xué)生的整體學(xué)習(xí)成效,教師可以給出判定飛船是否能夠升空的VB程序半成品,讓學(xué)生對半成品進行進一步的編程處理,及時發(fā)現(xiàn)其中的問題并形成完善的程序。在實際操作過程中,教師可以根據(jù)學(xué)生對IF語句格式和VB程序的設(shè)計掌握情況進行相應(yīng)的調(diào)整。
在實踐中,學(xué)生能夠?qū)⒄n堂上所學(xué)習(xí)的知識轉(zhuǎn)化成操作技能,加強對選擇結(jié)構(gòu)的了解。這樣學(xué)生能更好地理解課堂上學(xué)習(xí)到的編程知識,也能夠切切實實地感受到信息技術(shù)對我們生活的改變。
(三)利用游戲教學(xué)提升學(xué)習(xí)興趣
游戲化的教學(xué)方式是提高課堂教學(xué)主動性、提高教學(xué)效果、激發(fā)學(xué)生學(xué)習(xí)熱情的一個主要途徑。采用游戲的形式開展教學(xué)時,通過教師與學(xué)生、學(xué)生與學(xué)生之間的游戲互動,可以使學(xué)生更好地了解有關(guān)算法和編程的知識,從而達到信息技術(shù)教學(xué)的目的。有條件的學(xué)校在算法教學(xué)中可以利用實驗的手段來解決實際問題,以達到實踐訓(xùn)練的目的[4]。算法與程序設(shè)計是一門實踐性和操作性相對較強的課程,兼具理論性和抽象性,所以教學(xué)過程中要盡可能讓每一名學(xué)生都能夠上機操作。教師在選取教學(xué)案例時一定要保證所選擇的內(nèi)容能夠更好地貼近學(xué)生的生活,便于學(xué)生理解和記憶。所選擇的案例本身兼具趣味性和引導(dǎo)性,這樣才能夠吸引學(xué)生的關(guān)注,激發(fā)學(xué)生的探求心理和探知欲望。
在傳統(tǒng)教學(xué)模式下,很多學(xué)生對算法與程序設(shè)計存在畏難情緒和恐懼心理,覺得課本上的知識過于枯燥、過于抽象,難以理解。而游戲教學(xué)法對學(xué)生克服恐懼心理有很大的幫助,它可以讓學(xué)生的邏輯思考、發(fā)散性思維得到更深層次的刺激,讓學(xué)生在學(xué)習(xí)信息技術(shù)過程中自信和熱情得到提升,同時還可以讓他們的交流能力得到提高。比如,在進行算法和算法描述的教學(xué)時,教師可以使用一些有趣的智慧題來激發(fā)學(xué)生對問題的興趣。
如可以利用羊和狼過河的故事,讓學(xué)生在課堂上進行有效的探討。有學(xué)生會提出先讓人、羊過河,之后留下羊,人返回,再讓人、狼過河。不同的學(xué)生會給出不同的過河方案。游戲教學(xué)法能夠引導(dǎo)學(xué)生在課堂上進行更多的思考,更好地總結(jié)算法的概念、算法設(shè)計以及如何進行計算。最后,教師可以對課堂內(nèi)容進行針對性的評價。游戲的方式可以讓學(xué)生對問題展開針對性的討論,這樣可以調(diào)動學(xué)生的學(xué)習(xí)熱情,讓他們快速地進入學(xué)習(xí)狀態(tài)中。
(四)分層教學(xué)凸顯教學(xué)作用
高中階段的學(xué)生受到學(xué)習(xí)基礎(chǔ)、自學(xué)能力、學(xué)習(xí)背景等諸多因素的影響,因此,在開展算法與程序設(shè)計教學(xué)中,教師必須因材施教。分層教學(xué)就是一種以學(xué)生為導(dǎo)向的教育思想,它根據(jù)學(xué)生的能力、智力水平、現(xiàn)有的知識程度,將學(xué)生劃分成若干小組,并實施不同的教學(xué)方案。分層教學(xué)能夠更好地解決學(xué)生關(guān)于信息技術(shù)學(xué)習(xí)的個體差異。在進行分層教學(xué)時,教師要充分考量不同學(xué)生之間的個體差異,制訂不同的教學(xué)方法和學(xué)習(xí)目標,改變過去單一、呆板的任務(wù)布置方法,將任務(wù)分為必做任務(wù)和選做任務(wù),讓學(xué)生根據(jù)自己的學(xué)習(xí)能力選擇完成。開展分層教學(xué),既能夠提高教學(xué)效率,保證學(xué)生更加主動地融入課堂教學(xué)中,還能夠促進學(xué)生的個性發(fā)展。
三、結(jié)語
在算法與程序設(shè)計教學(xué)中,教師要提高自身的專業(yè)素養(yǎng),改變傳統(tǒng)灌輸式的理論教學(xué)方式,制訂行之有效的教學(xué)計劃,從整體認識的結(jié)構(gòu)上規(guī)劃,以培養(yǎng)學(xué)生信息思維為目標進行教學(xué)設(shè)計。這樣不但可以在某種意義上提升算法與程序設(shè)計的教學(xué)效率,而且可以激發(fā)學(xué)生對這一課程的興趣,所以,中學(xué)信息技術(shù)教師要運用多種途徑、多種方式探索新的教學(xué)思想、新的教學(xué)方式來適應(yīng)新的課程標準要求,給算法與程序設(shè)計這一課程的教學(xué)帶來新的生機、新的思維,最終實現(xiàn)對學(xué)生信息素質(zhì)的全面提升。
參考文獻:
[1]李天巨.如何在“算法與程序設(shè)計”教學(xué)中培養(yǎng)計算思維[J].實驗教學(xué)與儀器,2019,36(10):42-43.
[2]李寶華.基于核心概念的單元整體教學(xué)設(shè)計策略:以“算法與程序設(shè)計”為例[J].中國信息技術(shù)教育,2022(16):33-35.
[3]魏亞茜.項目式學(xué)習(xí)在高中信息技術(shù)“算法與程序設(shè)計”中的實踐研究[D].牡丹江:牡丹江師范學(xué)院,2022.
[4]詹建兵.計算思維視野下算法與程序設(shè)計題的學(xué)生解題能力培養(yǎng)[J].中國信息技術(shù)教育,2021(1):59-61.
(作者單位:凱里實驗高級中學(xué))
編輯:常超波