国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

計算思維教學(xué)在小學(xué)信息技術(shù)課程中的探索與實踐

2019-09-03 01:59萬詩強
關(guān)鍵詞:需求分析計算思維信息技術(shù)教學(xué)

萬詩強

摘 要:近年來,隨著人工智能的興起,計算思維的培養(yǎng)成為中小學(xué)信息技術(shù)教學(xué)的熱點。計算思維已經(jīng)成為我國信息技術(shù)課程的學(xué)科核心素養(yǎng)之一,而計算思維的培養(yǎng)是學(xué)生適應(yīng)未來智能化時代的關(guān)鍵能力之一。作者從小學(xué)信息技術(shù)一線教師的角度,結(jié)合蘇教版小學(xué)五年級信息技術(shù)Scratch編程教學(xué)課例,提出實“需求分析引導(dǎo)+流程圖梳理”的教學(xué)方法,具體論述了該方法對于培養(yǎng)小學(xué)生計算思維的重要意義,提出具體實施過程中的教學(xué)建議。

關(guān)鍵詞:計算思維;信息技術(shù)教學(xué);流程圖;需求分析

中圖分類號:G434? ? ? ? 文獻標(biāo)志碼:B? ? ? ? ? ?文章編號:1673-8454(2019)16-0000-00

本文主要探究的問題是在小學(xué)階段如何高效地培養(yǎng)學(xué)生的計算思維。筆者先從計算思維的定義、特點及其重要性出發(fā),進而論述“需求分析引導(dǎo)+流程圖梳理”教學(xué)法的作用,最后結(jié)合蘇教版小學(xué)五年級信息技術(shù)Scratch課程教學(xué)課例,提出在運用“需求分析引導(dǎo)+流程圖梳理”培養(yǎng)學(xué)生計算思維過程中的一些建議。

一、計算思維及其重要性

計算思維是指運用計算機科學(xué)的基礎(chǔ)概念進行問題求解、系統(tǒng)設(shè)計以及人類行為理解等涵蓋計算機科學(xué)之廣度的一系列思維活動。[1]

教育部印發(fā)的《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)》指出,計算思維是指個體運用計算機科學(xué)領(lǐng)域的思想方法,在形成問題解決方案的過程中產(chǎn)生的一系列思維活動。計算思維是信息技術(shù)學(xué)科素養(yǎng)之一,是信息技術(shù)學(xué)科特有的本質(zhì)屬性,也是現(xiàn)階段提出的中小學(xué)核心素養(yǎng)在信息技術(shù)學(xué)科具體的學(xué)科表達。

計算思維本質(zhì)上是人們理解自然系統(tǒng)與社會系統(tǒng)的思維方法和思維活動,是使用科學(xué)工具進行抽象模擬以尋求問題解決最優(yōu)化方案的系統(tǒng)過程。從計算思維實踐上來看,其包括組織、分析、簡化、抽象、建模、遞歸、回溯等基本過程。[2]通俗來講,就是將生活中的問題分解、抽象成計算機處理的問題的一種思維方式,其有抽象、自動化等特點。

如何培養(yǎng)小學(xué)生的計算思維呢?經(jīng)過實踐,筆者認(rèn)為在課堂上可以通過“需求分析引導(dǎo)”的方法培養(yǎng)學(xué)生組織、分析、簡化的能力,通過“流程圖梳理”的方式培養(yǎng)學(xué)生抽象、建模、遞歸、回溯的能力。下面筆者將具體論述“需求分析引導(dǎo)+流程圖梳理”教學(xué)法及其教學(xué)建議。

二、“需求分析引導(dǎo)+流程圖梳理”的教學(xué)有助于培養(yǎng)小學(xué)生的計算思維

計算思維的最佳培養(yǎng)途徑就是程序設(shè)計(編程)[3]。如何在小學(xué)階段培養(yǎng)學(xué)生的計算思維呢?筆者建議使用“需求分析引導(dǎo)+流程圖梳理”的教學(xué)方法,即教師通過自然語言引導(dǎo)學(xué)生將具體問題的需求分解成計算機可處理的子需求,對于復(fù)雜的算法邏輯運用流程圖來形象化梳理的教學(xué)方法。

1.“需求分析引導(dǎo)”有助于培養(yǎng)學(xué)生抽象思維,更好地明確編程要實現(xiàn)的目標(biāo)

具體來講,需求分析引導(dǎo)實際上是教師根據(jù)本節(jié)課作品功能,引導(dǎo)學(xué)生進行需求分析的過程,這是一個比較抽象的過程。小學(xué)生五、六年級是抽象思維不斷發(fā)展的關(guān)鍵期,需要多鍛煉學(xué)生的抽象思維[4]。在實際的整班教學(xué)中,總有部分學(xué)生抽象思維較弱。讓學(xué)生進行功能的需求分析,其實也是讓學(xué)生對本節(jié)課需要實現(xiàn)的目標(biāo)進行思考,有助于鍛煉抽象思維。

2.“需求分析引導(dǎo)”有助于學(xué)生理解計算機科學(xué)領(lǐng)域的思想方法,為算法設(shè)計做鋪墊

我們最終希望學(xué)生逐漸會以迭代、條件判斷、遞歸等思維去分析問題,進而解決問題。但這并不是一蹴而就的,學(xué)生不可能天生就有這種思維,需要教師基于學(xué)生現(xiàn)有知識去引導(dǎo),教師引導(dǎo)學(xué)生進行抽象的需求分析的同時,也是在與學(xué)生以計算機算法思維探討解決這一需求的方案,這一過程對學(xué)生后期設(shè)計算法很有幫助。

3.流程圖是設(shè)計算法的好工具,能讓學(xué)生的思路更清晰

流程圖是需求分析所表述功能的進一步提煉和簡化。教師借助流程圖引導(dǎo)學(xué)生設(shè)計算法,讓學(xué)生明白設(shè)計的算法需要考慮和注意的要點,如程序執(zhí)行的順序、變量何時賦值、變量何時讀取等,這些要點都可以在教師和學(xué)生一起進行流程圖梳理的時候探討。流程圖也是程序邏輯跳轉(zhuǎn)的可視化表達,它是幫助學(xué)生理解程序執(zhí)行順序的重要工具,有利于學(xué)生掌握編程的重點,對于條件分支、循環(huán)邏輯、遞歸等難點突破也是十分有效的。[5]

4.流程圖是自主編程的有利參考,也是小組合作的算法交流工具

學(xué)生是教學(xué)的主體,課堂上教師在幫助學(xué)生分析問題后,應(yīng)該先讓學(xué)生自主去嘗試編程,可以給學(xué)生提供多種學(xué)習(xí)路徑,如學(xué)案引領(lǐng)、小組合作、微課支撐等方式,在編程教學(xué)中無論是哪種自主探究方式,流程圖都扮演著重要的角色。學(xué)案自主探究時,流程圖能夠幫助學(xué)生將編程指令(代碼或控件)與流程圖結(jié)構(gòu)建立關(guān)聯(lián);編寫復(fù)雜邏輯的代碼時,學(xué)生思路有時候會混亂,這時流程圖的箭頭指向可以為學(xué)生指明方向;小組合作時,學(xué)生基于流程圖的交流能夠讓小組成員統(tǒng)一編程思路,讓課堂協(xié)作更加高效。

5.流程圖是需求分析轉(zhuǎn)為編程語言的過渡,有助于不同編程語言的遷移學(xué)習(xí)

如果把程序設(shè)計比作是武功的話,編程語言只是招式,而基于算法的計算思維才是內(nèi)功心法?,F(xiàn)階段,小學(xué)主要是使用Scratch等圖形化編程語言進行教學(xué),而初中之后學(xué)生會逐步學(xué)習(xí)代碼型的編程語言,如Python、VB、C++等,武功的招式變了,但不變的是內(nèi)功心法。流程圖就是基于算法的計算思維的形象描述,流程圖的使用有助于學(xué)生今后學(xué)習(xí)新的編程語言。

三、實施“需求分析引導(dǎo)+流程圖梳理”教學(xué)的建議

1.“需求分析引導(dǎo)”要基于學(xué)生現(xiàn)有的編程基礎(chǔ),圍繞計算思維引導(dǎo)

需求分析引導(dǎo)學(xué)生分析問題的時候,要基于學(xué)生現(xiàn)有的編程基礎(chǔ)提問,注重學(xué)生對程序功能的分析、表達的引導(dǎo),可以讓學(xué)生用特定的句式進行功能描述,盡可能簡化語言的描述。

如2018蘇教版小學(xué)五年級信息技術(shù)第2課《繪制角色》一課中,為了引導(dǎo)學(xué)生表達出需要實現(xiàn)的功能:“角色(蝴蝶)不停地在舞臺上移動(飛)”,筆者是用“什么角色在干什么”這樣的句式來引導(dǎo)學(xué)生分析的,學(xué)生往往回答“蝴蝶在飛”,本節(jié)課學(xué)生還沒有學(xué)習(xí)過重復(fù)語句,這樣回答是可以理解的。為了突出重點“重復(fù)執(zhí)行”,筆者再次引導(dǎo)學(xué)生:“飛”其實就是用“移動步數(shù)”來實現(xiàn)的,那么“飛”一下可以嗎,要“飛”幾次呢?這個時候可以讓學(xué)生自主探究,筆者之后小結(jié)“重復(fù)執(zhí)行”的原理。

單純給“移動步數(shù)”加上“重復(fù)執(zhí)行”腳本看似簡單,但要讓學(xué)生真正理解重復(fù)執(zhí)行的執(zhí)行原理和優(yōu)勢并不容易,而這恰恰是培養(yǎng)學(xué)生計算思維的關(guān)鍵。所以筆者在一開始引導(dǎo)學(xué)生分析功能的時候就結(jié)合學(xué)生現(xiàn)有的能力,讓學(xué)生先嘗試實現(xiàn)點擊綠旗依次動1次、2次、4次……提示可以復(fù)制。如圖1是筆者引導(dǎo)學(xué)生理解重復(fù)執(zhí)行的腳本演變。

這樣學(xué)生很容易理解有限重復(fù)執(zhí)行和永久重復(fù)執(zhí)行。筆者這樣設(shè)計引導(dǎo)問題,就是為了讓學(xué)生理解重復(fù)執(zhí)行的執(zhí)行原理和優(yōu)勢,培養(yǎng)學(xué)生的計算思維。

2.“需求分析引導(dǎo)”的提問要有啟發(fā)性,要有由淺入深地誘導(dǎo)

教師提問引導(dǎo)學(xué)生分析需求時,如何提問很關(guān)鍵。教師的引導(dǎo)問題要將總需求分解為子需求,可以由淺入深地引導(dǎo)學(xué)生從編程的角度來看如何實現(xiàn)子需求,即將關(guān)鍵功能需求的描述字詞與編程指令建立關(guān)聯(lián),如Scratch中“讓角色消失”的需求就是“隱藏”控件實現(xiàn)的、“讓兩個角色協(xié)同完成某個功能”的需求可以用“廣播”控件來實現(xiàn)。讓學(xué)生明白如何以計算機執(zhí)行的角度將一個大的需求問題分解。這樣學(xué)生在以后遇到類似問題的時候也能以自上而下、分而治之的算法思維分析需求、解決問題。

如在《賽車游戲》一課中,筆者在引導(dǎo)學(xué)生觀察案例后,引導(dǎo)學(xué)生分析出主需求——“讓賽車(角色)自動地在賽道上行駛”。如何把這個需求分解呢?筆者先從簡單的問題開始,提問學(xué)生“如何讓賽車不停地行駛?”針對這個子需求,讓學(xué)生談?wù)動媚男┲噶羁梢詫崿F(xiàn)這個“不停地行駛”功能需求,大部分學(xué)生能夠想到“移動+重復(fù)執(zhí)行”即可。學(xué)生嘗試后會發(fā)現(xiàn):此時的賽車不會自動轉(zhuǎn)彎。這個時候就很自然地引出“自動行駛的關(guān)鍵是讓賽車能夠根據(jù)彎道(左/右)相應(yīng)地(左/右)轉(zhuǎn)彎?!比缓筮M一步引導(dǎo)學(xué)生如何實現(xiàn)這個子需求。圖2是筆者引導(dǎo)學(xué)生時的思維導(dǎo)圖。

3.“需求分析引導(dǎo)”要重視學(xué)生解決方案的多樣性,注重多種算法的比較

筆者在需求分析引導(dǎo)的過程中,往往讓學(xué)生初步思考針對某個功能需求如何去實現(xiàn)。這個過程中,學(xué)生往往根據(jù)已學(xué)知識想出不同的解決編碼實現(xiàn)方案,不同的解決方案在不同的需求下有不同的優(yōu)缺點,這時候教師可以尊重學(xué)生的想法,給予學(xué)生一定的時間去實現(xiàn)。然后引出本節(jié)課的編程知識點,引導(dǎo)學(xué)生對比這兩種方案的優(yōu)缺點。這樣學(xué)生反而能夠更加深刻地理解本節(jié)課的重點。

如《動物表演》一課中,重點是讓學(xué)生使用“廣播和接收廣播消息”來控制不同動物按照一定順序表演節(jié)目。筆者在引導(dǎo)學(xué)生分析功能需求的時候,發(fā)現(xiàn)學(xué)生往往會想到用“等待時間”控件來控制角色的出場,筆者給學(xué)生2分鐘用“等待時間”控件來嘗試,筆者在表揚學(xué)生解決問題后,提問學(xué)生“老師現(xiàn)在是導(dǎo)演,我覺得第一位小貓的表演時間太短了,我要讓它多表演5秒鐘,可以嗎?想想你們的程序是否會有問題?”很多學(xué)生很快就反應(yīng)過來,后面每一個角色的每一個“等待時間”都要加5秒。筆者進而引出本節(jié)課的重點“廣播和接收消息”能更好地實現(xiàn)角色按順序演出的問題。

4.繪制流程圖,注重程序執(zhí)行跳轉(zhuǎn)順序的梳理

畫流程圖的目的是為了幫助學(xué)生理解程序,更好地梳理編程思路,課堂時間寶貴,不能為了畫流程圖而畫流程圖,那么如何讓流程圖不流于形式呢?教師應(yīng)該幫助學(xué)生去理解流程圖,尤其是要幫助學(xué)生梳理程序執(zhí)行的跳轉(zhuǎn)順序。對于小學(xué)生而言,當(dāng)程序出現(xiàn)多次重復(fù)迭代、多次條件判斷等語句時,大部分學(xué)生的編程思路會有所混亂,對此筆者主要以下有兩點建議:

(1)注重流程圖繪制的規(guī)范化

在流程圖中,箭頭表示執(zhí)行的順序和方向、菱形表示條件判斷、矩形表示要執(zhí)行的指令、圓角矩形表示開始或結(jié)束。規(guī)范的流程圖表示對于學(xué)生以后閱讀流程圖十分重要。

(2)將流程圖中的跳轉(zhuǎn)邏輯表示方法與編程指令建立關(guān)聯(lián)

在Scratch中,“如果……那么……”在流程圖中的表示為菱形框;“重復(fù)執(zhí)行”語句的流程圖語句一般會根據(jù)某個條件判斷,有一個箭頭回指等。這樣在平時規(guī)范地滲透給學(xué)生后,學(xué)生就可以將流程圖的判斷邏輯、重復(fù)邏輯映射到對應(yīng)的編碼實現(xiàn)。有利于學(xué)生以清晰的思路完成程序的編寫,也有利于學(xué)生今后學(xué)習(xí)新的編程語言。

如在《穿越迷宮》一課中,有多個子需求:“如果小貓碰到鼠標(biāo)就跟隨鼠標(biāo)移動”“如果小貓碰到黑線就返回起點”“如果小貓碰到終點角色就獲勝”。筆者在教學(xué)中發(fā)現(xiàn)大部分學(xué)生能夠用Scratch順利搭建出條件判斷語句,但學(xué)生往往將如果語句直接拼接在綠旗啟動的下面,此時的程序功能就無法如學(xué)生預(yù)期的那樣執(zhí)行了。出現(xiàn)這樣的問題很正常,是因為學(xué)生對于程序執(zhí)行的順序理解不夠深入,此時利用流程圖幫助學(xué)生理解程序執(zhí)行的順序是否有效。在流程圖中“重復(fù)執(zhí)行”的回指箭頭可以幫助學(xué)生理解游戲中的這些條件判斷需要不斷地進行,所以在編寫的腳本中,如果語句需要放在一個重復(fù)執(zhí)行里面。流程圖在這里起到“一圖勝千言”的效果。

5.“需求分析引導(dǎo)”和“流程圖梳理”引導(dǎo)要結(jié)合使用,靈活變通

“需求分析引導(dǎo)”和“流程圖梳理”并不是涇渭分明的兩個環(huán)節(jié),而是可以隨時融合在一起的。流程圖的使用要根據(jù)實際情況而定:①學(xué)生還不太熟練或者編程的算法比較復(fù)雜時,教師可以引導(dǎo)得多一些。②學(xué)生對于編程已經(jīng)達到一定的熟練度,教師可以放手讓學(xué)生自主描述、繪制流程圖,最后再編寫代碼。這在練習(xí)課時比較常用。

如《賽車游戲》一課中,引導(dǎo)學(xué)生分析出“自動行駛的關(guān)鍵是讓賽車能夠根據(jù)彎道(左/右)相應(yīng)地(左/右)轉(zhuǎn)彎”這個子需求后,由于涉及“重復(fù)執(zhí)行和判斷語句”等復(fù)雜的邏輯,教師可以和學(xué)生在板書中一起逐步繪制流程圖。

6.編程教學(xué)更要注重過程性評價,鼓勵編程過程中養(yǎng)成調(diào)試程序的習(xí)慣

計算機程序的運行是一個邏輯極其嚴(yán)格的自動化過程。這就導(dǎo)致程序中如果有一個小小的邏輯錯誤,往往就會導(dǎo)致程序的結(jié)果與預(yù)期效果相差很遠(yuǎn),可謂“失之毫厘,謬以千里”,所以編程需要反復(fù)調(diào)試。但課堂上學(xué)生在編程時,往往因為時間有限來不及仔細(xì)調(diào)試,這就要求教師在對學(xué)生作品評價時更要使用過程性評價。 除了對學(xué)生程序功能是否完成做評價之外,教師更要注重對學(xué)生在需求分析中的表述、繪制的流程圖、學(xué)生編寫的腳本等多個方面進行評價,以鼓勵性的評價為主。此外,對于常見的編程失誤,如初始化考慮不周、邏輯判斷寫錯等問題,教師要細(xì)心指導(dǎo),鼓勵學(xué)生在編程的過程反復(fù)運行調(diào)試程序,觀察學(xué)生的編程習(xí)慣,對于有自主調(diào)試程序習(xí)慣的學(xué)生要多表揚。

四、結(jié)束語

計算思維是一種抽象的思維,它的特點是抽象、自動化。如何在小學(xué)階段培養(yǎng)學(xué)生的這種思維呢?筆者根據(jù)教學(xué)經(jīng)驗,提出的“需求分析引導(dǎo)+流程圖梳理”的編程教學(xué)方法,可以將這種抽象層面思想進行形象化的表達。這對于小學(xué)階段的編程教育是十分有效的,此外這種方式可以延伸到更高一級的編程教學(xué)中,為學(xué)生今后的編程學(xué)習(xí)做好準(zhǔn)備。

參考文獻:

[1]Wing J M. Computational thinking[J].Communications of the ACM,2006,49(3):33-35.

[2]張立國,王國華.計算思維:信息技術(shù)學(xué)科核心素養(yǎng)培養(yǎng)的核心議題[J].電化教育研究,2018,39(5):115-121.

[3]車敏,安利,張紅梅.計算思維能力培養(yǎng)在程序設(shè)計課程中的落地實施[J].計算機教育,2017(4):9-11.

[4]陳彥壘.小學(xué)兒童學(xué)習(xí)與發(fā)展的心理分析——基于兒童學(xué)習(xí)動力不足問題的思索[J].教育導(dǎo)刊,2013(7):57-60.

[5]胡文科.學(xué)習(xí)流程圖,發(fā)展高階思維——例談流程圖在小學(xué)高段信息技術(shù)學(xué)習(xí)中的使用[J].中國信息技術(shù)教育,2016(7):37-39.

(編輯:李曉萍)

猜你喜歡
需求分析計算思維信息技術(shù)教學(xué)
高職院校信息技術(shù)課程教學(xué)內(nèi)容革新的探索與研究
大學(xué)師生需求發(fā)展分析
基于UML技術(shù)的高校貧困生管理系統(tǒng)建模分析
指揮信息系統(tǒng)模擬訓(xùn)練評估需求分析
程序設(shè)計課程中計算思維和應(yīng)用能力培養(yǎng)問題研究
應(yīng)用型本科大學(xué)英語后續(xù)課程建設(shè)之必要性探討
運用“分層教學(xué)”優(yōu)化信息技術(shù)課堂教學(xué)設(shè)計
民族高校C語言程序設(shè)計課程教學(xué)改革的研究
略談中小學(xué)信息技術(shù)教學(xué)中微視頻的應(yīng)用
算法的案例教學(xué)探析
奇台县| 马公市| 凉城县| 莲花县| 太和县| 龙江县| 晋州市| 龙川县| 报价| 那坡县| 大田县| 湘阴县| 三原县| 汤原县| 贵州省| 留坝县| 垣曲县| 明溪县| 新建县| 鹿邑县| 张家港市| 临江市| 长治县| 甘德县| 罗定市| 湖南省| 南汇区| 天水市| 邛崃市| 启东市| 龙里县| 三门县| 蒲城县| 监利县| 山丹县| 新巴尔虎右旗| 开化县| 西华县| 象山县| 保德县| 高碑店市|