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

?

以計(jì)算思維能力培養(yǎng)為核心的案例式程序設(shè)計(jì)教學(xué)探索與實(shí)踐

2021-08-18 22:51:09宋建萍李雪嬌鄭曉東
電腦知識與技術(shù) 2021年18期
關(guān)鍵詞:案例式教學(xué)計(jì)算思維程序設(shè)計(jì)

宋建萍 李雪嬌 鄭曉東

摘要:計(jì)算思維能力是高校大學(xué)生尤其是工科類學(xué)生的一項(xiàng)不可或缺的素質(zhì),該項(xiàng)能力的養(yǎng)成也有賴于教師在授課過程中的刻意引導(dǎo)和強(qiáng)化訓(xùn)練。筆者結(jié)合所在獨(dú)立學(xué)院工科類專業(yè)開設(shè)的程序設(shè)計(jì)類課程的教學(xué)現(xiàn)狀,探討了在該類課程中融入計(jì)算思維能力訓(xùn)練的案例式教學(xué)法的應(yīng)用和實(shí)踐過程。通過創(chuàng)設(shè)形象生動的情景案例,使學(xué)生更易于理解和分析問題;通過對簡單案例改造升級,提升難度,強(qiáng)化學(xué)生分析問題、設(shè)計(jì)求解過程的抽象思維能力;通過設(shè)計(jì)綜合型應(yīng)用案例,加強(qiáng)學(xué)生對軟件項(xiàng)目開發(fā)的整體性思維鍛煉。實(shí)踐表明:教師通過優(yōu)化課程教學(xué)案例、強(qiáng)調(diào)計(jì)算思維訓(xùn)練,對學(xué)生的計(jì)算思維能力提升及運(yùn)用編程思維求解問題,起到了積極的促進(jìn)作用。

關(guān)鍵詞:計(jì)算思維;能力培養(yǎng);程序設(shè)計(jì);案例式教學(xué)

中圖分類號:TP3文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2021)18-0155-03

開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):

2006年3月,美國卡內(nèi)基·梅隆大學(xué)周以真(Jeannette M. Wing)教授在《Communications of the ACM》雜志上發(fā)表論文,首次提出“計(jì)算思維(Computational Thinking)”這一概念進(jìn)行定義:“計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計(jì)以及人類行為理解等涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動?!辈⒒谶@一定義給出了一系列詳細(xì)觀點(diǎn)。一些學(xué)者結(jié)合計(jì)算機(jī)學(xué)科對周教授的觀點(diǎn)進(jìn)行簡化,提煉為“問題分解、算法、抽象和自動化”,進(jìn)一步凸顯了計(jì)算機(jī)學(xué)科中“計(jì)算思維”的特點(diǎn)。

21世紀(jì)初,我國計(jì)算機(jī)學(xué)科的教育專家開始倡導(dǎo)在高等教育階段的計(jì)算機(jī)基礎(chǔ)課教學(xué)中開展計(jì)算思維教育。不少教學(xué)研究者也將計(jì)算思維引入計(jì)算機(jī)學(xué)科的一些課程中,重點(diǎn)研究計(jì)算思維在計(jì)算機(jī)教育領(lǐng)域的應(yīng)用,如:在教材編寫中,《新編計(jì)算機(jī)導(dǎo)論:基于計(jì)算思維》(鄭阿奇著,電子科技大學(xué)出版社,2013)、《數(shù)據(jù)庫原理與應(yīng)用(SQL Server2012)——基于計(jì)算思維》(劉征海主編,上海交通大學(xué)出版社,2018)等教材,充分展示了基于計(jì)算思維的課程教材建設(shè)的新思路;也有許多教學(xué)工作者積極探索并將計(jì)算思維融入課程教學(xué)和資源建設(shè)的實(shí)踐中,形成了自己的研究成果,如:牟琴老師《基于計(jì)算思維的探究教學(xué)模式研究》[1]等基于“計(jì)算思維”的系列成果;姚天昉老師的《在程序設(shè)計(jì)課程中引入“計(jì)算思維”的實(shí)踐》[2];葉軍老師《以培養(yǎng)計(jì)算思維能力為導(dǎo)向的“C語言”教學(xué)資源設(shè)計(jì)》[3]等??梢?,在計(jì)算機(jī)教育教學(xué)領(lǐng)域,“計(jì)算思維與課程教學(xué)”“計(jì)算思維與教學(xué)改革”等一直是計(jì)算思維研究的關(guān)注熱點(diǎn)[4]。

1獨(dú)立學(xué)院程序設(shè)計(jì)課教學(xué)現(xiàn)狀分析

目前,在不同層次的高校,計(jì)算機(jī)程序設(shè)計(jì)課程是工科類專業(yè)普遍開設(shè)的一門通識教育課,同時也是最能體現(xiàn)信息素質(zhì)教育和計(jì)算思維能力培養(yǎng)的課程之一。該課程開設(shè)的主要目的是通過課程教學(xué),使學(xué)生學(xué)習(xí)、掌握和運(yùn)用計(jì)算思維中的抽象、遞歸、復(fù)用等思維方法,進(jìn)行問題分析和程序設(shè)計(jì),進(jìn)一步利用計(jì)算機(jī)來解決實(shí)際工作或工程方面的問題。在教學(xué)過程中,通過強(qiáng)化計(jì)算思維訓(xùn)練,促使學(xué)生逐步形成“分析”問題的整體性思維,能夠“設(shè)計(jì)”問題的求解過程,并“運(yùn)用”計(jì)算機(jī)語言和軟件等相關(guān)技術(shù)去解決實(shí)際問題,應(yīng)作為該類課程的核心教學(xué)目標(biāo)。

在程序設(shè)計(jì)學(xué)習(xí)中,如果將學(xué)生的編程行為分為兩個階段,則“知道與理解”構(gòu)成編程行為的基礎(chǔ)性認(rèn)知(屬于低階思維層次),“分析與應(yīng)用”是編程行為的核心(屬于高階思維層次)[5]。筆者結(jié)合所在獨(dú)立學(xué)院該類課程的教學(xué)現(xiàn)狀,觀察發(fā)現(xiàn):在編程課中,多數(shù)學(xué)生能夠通過學(xué)習(xí),“知道與理解”編程語言本身的語法、語句結(jié)構(gòu),具備較為簡單的算法思維,而在“分析與應(yīng)用”的高階思維層次需要花費(fèi)更多的時間進(jìn)行思考和求解,對一些較復(fù)雜或有些許難度的問題可能表現(xiàn)得無從下手。究其原因:一方面,由于學(xué)院對部分通識課程壓縮學(xué)時,教師難以在有限的課堂教學(xué)時間里對學(xué)生進(jìn)行計(jì)算思維的充分訓(xùn)練和強(qiáng)化;而另一方面,教師所采用的教學(xué)思路教學(xué)方法也非常關(guān)鍵。目前,多數(shù)學(xué)生在編程學(xué)習(xí)上屬零基礎(chǔ),對于編程語言本身的學(xué)習(xí)和運(yùn)用有一個適應(yīng)過程,而教師在授課中若著力于編程語言本身、按照一般教材的系統(tǒng)性知識結(jié)構(gòu)進(jìn)行教學(xué),則會感覺課時更加不夠用,而學(xué)生則會感覺細(xì)節(jié)太多、造成“編程真復(fù)雜”的不良印象,從而降低學(xué)習(xí)課程的興趣,有些學(xué)生則因課程學(xué)習(xí)后不能解決問題、參加編程競賽與獎項(xiàng)無緣、連考級也難以過關(guān)等種種困難,吐槽“編程課難學(xué)”“學(xué)了沒用”……教學(xué)相長無從談起,教學(xué)效果難以評價(jià)。

為此,筆者結(jié)合多年編程教學(xué)經(jīng)歷及學(xué)院的課程教學(xué)現(xiàn)狀,不斷改進(jìn)教學(xué)思路和教學(xué)方法,研究以“實(shí)用性”和“應(yīng)用性”為目標(biāo),采用案例教學(xué)法,強(qiáng)化問題分析、過程設(shè)計(jì)和編碼求解各環(huán)節(jié)的訓(xùn)練,在案例求解中加強(qiáng)對語言本身運(yùn)用的同時,重點(diǎn)強(qiáng)化學(xué)生的計(jì)算思維訓(xùn)練。

2以計(jì)算思維能力培養(yǎng)為核心,優(yōu)化教學(xué)案例設(shè)計(jì)

在程序設(shè)計(jì)課中,我們的教學(xué)目標(biāo)應(yīng)著眼于讓學(xué)生在發(fā)現(xiàn)問題、分析問題和解決問題的過程中強(qiáng)化計(jì)算思維,可采用的教學(xué)方法和策略也有多種。筆者以學(xué)院開設(shè)的“計(jì)算機(jī)語言C”課程為例,以案例式教學(xué)法為基礎(chǔ),突出知識的“實(shí)用性”和“應(yīng)用性”,在案例設(shè)計(jì)上主要采用了如下策略:

2.1深入淺出,創(chuàng)設(shè)情境化案例,使待解決的問題易于理解、便于分析

創(chuàng)設(shè)情境化案例的目的,是將編程問題和生活中的一些生動場景結(jié)合起來,增加學(xué)生學(xué)習(xí)的興趣,通過對應(yīng)用場景模擬再現(xiàn)及分析,讓學(xué)生自行尋找解決問題的思路,并梳理組織為求解步驟,形成案例問題的完整解決方案。然后,再編制程序代碼進(jìn)行驗(yàn)證。在案例求解過程中,若遇到需用的新的知識模塊或知識點(diǎn),則可順勢引入學(xué)習(xí)并及時運(yùn)用。

例如,在學(xué)到“選擇結(jié)構(gòu)”及“循環(huán)結(jié)構(gòu)”這兩個模塊時,筆者聯(lián)系到生活中可兩人一起玩的小游戲:從一組撲克牌中隨機(jī)抽取一張牌,讓對方猜是哪張牌?假設(shè)出牌人是甲,猜牌人是乙,將游戲設(shè)置為4種場景,最終目標(biāo)是用程序來模擬游戲過程:

(1)由甲從一組牌中隨機(jī)抽一張,乙來猜測,僅給乙一次機(jī)會;

(2)甲抽牌,乙猜牌,可給3次機(jī)會,乙猜對或機(jī)會用盡為止;

(3)甲抽牌,乙猜牌,不限猜測次數(shù),乙猜對或不想再猜為止。

(4)將“甲出牌、乙來猜”升級為多輪游戲。

首先,第(1)種場景的關(guān)鍵信息:甲出牌、乙猜測、一次機(jī)會。在這個游戲中,乙只能猜一次,可能猜對或猜不對,這是需要判斷的,則使用分支結(jié)構(gòu)即可解決。學(xué)生在分支結(jié)構(gòu)學(xué)習(xí)基礎(chǔ)上能順利解決。

第(2)種場景:甲出牌、乙猜測、最多可猜3次,此時乙每猜一次則需判斷是否猜對并作相應(yīng)的處理。此種場景,讓學(xué)生自行分析選擇使用何種結(jié)構(gòu)進(jìn)行求解?顯然,需要處理乙可能多次猜測及判斷,循環(huán)結(jié)構(gòu)是最佳處理方式,且需要進(jìn)行有限次循環(huán)控制。通過引導(dǎo)學(xué)生分析一次猜測過程中的需要進(jìn)行的操作,將第(1)種場景的分支處理步驟引入,進(jìn)而設(shè)計(jì)求解步驟編制程序并驗(yàn)證。

第(3)種場景下,關(guān)鍵信息提?。杭壮雠?、乙猜測、無限次機(jī)會。此時,重點(diǎn)引導(dǎo)學(xué)生思考分析兩個問題:一次猜數(shù)的過程中可能發(fā)生哪些情形,分析不同的情況下怎樣進(jìn)行處理?無限次機(jī)會情況下,游戲怎樣結(jié)束?比如:在用戶猜對的時候,進(jìn)行提示并中斷循環(huán);在用戶猜錯的時候提示“是否再猜一次?”并需要用戶選擇,如果繼續(xù)猜,則進(jìn)入下一次循環(huán),如果不繼續(xù)猜則中斷循環(huán)。并啟發(fā)學(xué)生進(jìn)行求解步驟的設(shè)計(jì)并編制程序驗(yàn)證。

多輪模式的游戲,則需要再加入外循環(huán)控制,問題可交給學(xué)生討論分析和設(shè)計(jì)。

情境化案例法的策略運(yùn)用有助于提高學(xué)生學(xué)習(xí)的興趣和積極性,同時可在生活化場景化案例模擬中強(qiáng)化問題分析與設(shè)計(jì)思路,聯(lián)系課程的知識點(diǎn)并加以運(yùn)用,也能快速促進(jìn)學(xué)生對所運(yùn)用的知識模塊及知識點(diǎn)的理解和吸收運(yùn)用。

2.2以簡單案例為基礎(chǔ),改造案例升級難度,實(shí)現(xiàn)抽象思維訓(xùn)練螺旋式上升

素?cái)?shù)判斷問題是編程中的典型案例,素?cái)?shù)問題本質(zhì)上是物質(zhì)的幾何學(xué)問題,如著名的黎曼猜想、孿生素?cái)?shù)猜想、哥德巴赫猜想均涉及素?cái)?shù),這些問題既有趣也值得探討,運(yùn)用編程方法驗(yàn)證或求解,也有助于抽象思維能力的鍛煉。在C語言課程教學(xué)中,筆者以最基本的素?cái)?shù)判斷案例為基礎(chǔ),將案例升級改造成不同版本,做了系列素?cái)?shù)問題的探討,從簡單到復(fù)雜,舉例如下:

(初級版)案例1:找出[m,n]范圍的所有素?cái)?shù)。

(初級版)案例2:找出[m,n]范圍的孿生素?cái)?shù)對。

(中級版)案例3:在[m,n]范圍中,找出長度為3的連續(xù)素?cái)?shù)等差序列。

(高級版)案例4:在[m,n]范圍中,找出最長的連續(xù)素?cái)?shù)等差數(shù)列。

案例1重點(diǎn)引導(dǎo)學(xué)生明確“需要在指定的整數(shù)范圍內(nèi)循環(huán)取數(shù),并判斷取到的數(shù)是否素?cái)?shù),是則輸出”的求解思路。

案例2的目標(biāo)是要找“孿生素?cái)?shù)對”,若整數(shù)x和x+2均是素?cái)?shù),則這兩整數(shù)即構(gòu)成孿生素?cái)?shù)對,這也是該問題的切入點(diǎn)??梢龑?dǎo)學(xué)生自行分析并設(shè)計(jì)求解過程,在[m,n]范圍內(nèi)取數(shù)置于變量i中,判斷條件isPrime(i) &&isPrime(i+2)是否成立:若成立,則輸出孿生素?cái)?shù)對(i, i+2);否則,繼續(xù)取下一個數(shù)置于變量i進(jìn)行判斷;直至該范圍的數(shù)全部判斷完為止。

案例3的目標(biāo)是:在指定整數(shù)范圍內(nèi),要找連續(xù)素?cái)?shù)等差數(shù)列,且數(shù)列中素?cái)?shù)的個數(shù)為3。分析該問題,在[m,n]范圍內(nèi)可能存在多個素?cái)?shù),而形成“長度為3的連續(xù)素?cái)?shù)等差序列”的前提是:連續(xù)的3個素?cái)?shù)每相鄰兩個的差相等(將該差稱為“步長”)。假設(shè)這3個素?cái)?shù)中的第一個是x,步長是step,則后續(xù)的2個素?cái)?shù)也應(yīng)滿足每相鄰兩個的差值等于step,這便是問題的切入點(diǎn)。Step的值通過計(jì)算前兩個相鄰素?cái)?shù)的差求得??紤]是在一個素?cái)?shù)列中找尋連續(xù)等差數(shù)列,找出[m, n]范圍內(nèi)的素?cái)?shù)列并存入數(shù)組空間,更便于后續(xù)判斷。

案例4屬于面向算法競賽類型的問題,由于分析過程和設(shè)計(jì)較復(fù)雜一些,且篇幅所限,在此不展開敘述。

綜上,針對較為抽象的問題,如何設(shè)計(jì)問題求解過程,并在此過程中對學(xué)生強(qiáng)化思維訓(xùn)練?可參考以下步驟:(1)分析問題,明確結(jié)果;(2)思考需求的知識或搜索新知識;(3)思考切入點(diǎn);(4)嘗試解決問題的一部分;(5)重復(fù)前4步。

當(dāng)然,許多問題的解決過程并非只有一種,我們更應(yīng)注重引導(dǎo)學(xué)生發(fā)散思維,提倡多種解決辦法,并通過比較找到更優(yōu)化的解決方案。

2.3用綜合型案例加強(qiáng)知識綜合應(yīng)用,強(qiáng)化問題抽象、分解及復(fù)用思維

隨著知識的積累、思維訓(xùn)練的循序推進(jìn),學(xué)生也將面臨更為復(fù)雜的問題求解,新的問題可能更抽象和需求更多。如何思考和解決更復(fù)雜的問題呢?一個很重要的能力是:問題分析與拆解能力。在程序設(shè)計(jì)課中,我們可借助綜合型案例來強(qiáng)化學(xué)生對復(fù)雜問題的分析、分解和設(shè)計(jì)等能力的訓(xùn)練,逐步建立軟件工程的思維。編程中綜合性應(yīng)用案例如“學(xué)生成績管理”“通訊錄管理”“銀行排隊(duì)叫號系統(tǒng)”等,均可對基礎(chǔ)知識梳理和應(yīng)用、問題分解思想起到較好的訓(xùn)練作用。在綜合型案例中,更強(qiáng)調(diào)問題的分解抽象及模塊復(fù)用思想,將學(xué)過的知識模塊進(jìn)行串聯(lián)應(yīng)用,既鞏固前期所學(xué),也充分鍛煉學(xué)生面對復(fù)雜問題時的分析與拆解能力,建立工科類學(xué)生需具備的工程性思維。

3結(jié)語

筆者認(rèn)為,在程序設(shè)計(jì)教學(xué)中,對學(xué)生進(jìn)行計(jì)算思維能力訓(xùn)練強(qiáng)化,是對現(xiàn)有課程的優(yōu)化,且完全可以融入課程中通過潛移默化的方式進(jìn)行。經(jīng)過持續(xù)的教學(xué)摸索和實(shí)踐,筆者發(fā)現(xiàn),使用案例教學(xué)法組織教學(xué)過程,對學(xué)生不斷強(qiáng)化計(jì)算思維訓(xùn)練,學(xué)生的編程能力較之傳統(tǒng)教學(xué)法有更快的提升,在面對模糊的、復(fù)雜的或開放性的問題時也不再畏懼恐慌,增強(qiáng)了解決問題的自信心,運(yùn)用編程解決問題的能力也顯著提高了。

參考文獻(xiàn):

[1] 牟琴,譚良.基于計(jì)算思維的探究教學(xué)模式研究[J].中國遠(yuǎn)程教育,2010(11):40-45.

[2] 姚天昉.在程序設(shè)計(jì)課程中引入“計(jì)算思維”的實(shí)踐[J].中國大學(xué)教學(xué),2012(2):61-62,76.

[3] 葉軍,汪一心,王磊.以培養(yǎng)計(jì)算思維能力為導(dǎo)向的“C語言”教學(xué)資源設(shè)計(jì)[J].江西廣播電視大學(xué)學(xué)報(bào),2018,20(4):82-87.

[4] 羅力強(qiáng),王冬青,方遠(yuǎn)豪,等.我國計(jì)算思維的研究熱點(diǎn)及趨勢分析[J].中國教育信息化,2020(2):1-6.

[5] 姜強(qiáng),王利思,趙蔚,等.認(rèn)知水平與計(jì)算思維間的隱含關(guān)系挖掘——基于編程行為表征視角[J].現(xiàn)代遠(yuǎn)程教育研究,2020,32(2):94-103.

【通聯(lián)編輯:張薇】

猜你喜歡
案例式教學(xué)計(jì)算思維程序設(shè)計(jì)
基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
從細(xì)節(jié)入手,談PLC程序設(shè)計(jì)技巧
電子制作(2019年9期)2019-05-30 09:42:04
緊扣案例特點(diǎn),開展有效教學(xué)
考試周刊(2016年101期)2017-01-07 08:29:16
輻射專業(yè)《測量學(xué)》課程改革方法的探討
亞太教育(2016年35期)2016-12-21 20:18:55
獸醫(yī)臨床診斷學(xué)案例式教學(xué)模式的探索與體會
考試周刊(2016年90期)2016-12-01 22:24:24
高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
程序設(shè)計(jì)課程中計(jì)算思維和應(yīng)用能力培養(yǎng)問題研究
民族高校C語言程序設(shè)計(jì)課程教學(xué)改革的研究
軟件工程(2016年8期)2016-10-25 16:03:32
算法的案例教學(xué)探析
淺談藝術(shù)專業(yè)學(xué)生計(jì)算思維能力的培養(yǎng)
大城县| 梧州市| 治多县| 贵定县| 七台河市| 陵川县| 犍为县| 屏边| 聊城市| 武山县| 阳东县| 洛南县| 克东县| 广东省| 青川县| 新津县| 辉县市| 汕尾市| 龙州县| 鄄城县| 运城市| 咸阳市| 三亚市| 瑞金市| 石河子市| 织金县| 鄱阳县| 南涧| 徐汇区| 喜德县| 布尔津县| 靖安县| 剑河县| 沙田区| 滦南县| 芮城县| 泗阳县| 阳江市| 始兴县| 汶上县| 灵寿县|