計(jì)算思維程序設(shè)計(jì)課程改革研究-教學(xué)改革論文-教育論文
發(fā)布時(shí)間:2020-11-02 來源: 入黨申請 點(diǎn)擊:
計(jì)算思維的程序設(shè)計(jì)課程改革研究- 教學(xué)改革論文- 教育論文 ——文章均為 WORD 文檔,下載后可直接編輯使用亦可打印——
摘要:通過分析程序設(shè)計(jì)課程教學(xué)現(xiàn)狀,提出了基于計(jì)算思維的程序設(shè)計(jì)課程教學(xué)改革方向。探討將計(jì)算思維引入程序設(shè)計(jì)課程教學(xué),并進(jìn)行強(qiáng)化訓(xùn)練的教學(xué)方法與實(shí)踐。教師從計(jì)算思維的角度重新審視和組織程序設(shè)計(jì)基礎(chǔ)的課堂和實(shí)踐教學(xué),可以讓學(xué)生樹立用計(jì)算機(jī)求解問題的意識,實(shí)現(xiàn)教學(xué)由傳授知識到培養(yǎng)能力的轉(zhuǎn)變。
關(guān)鍵詞:程序設(shè)計(jì)課程;計(jì)算思維;教學(xué)改革;教學(xué)方法與實(shí)踐
0 引言
程序設(shè)計(jì)課程屬于高校非計(jì)算機(jī)專業(yè)的必修公共課,主要基礎(chǔ)課程有“C 語言程序設(shè)計(jì)”、“VisualBasic 程序設(shè)計(jì)”、“VisualFoxPro 程序設(shè)計(jì)”、“VisualC++程序設(shè)計(jì)”等,對于培養(yǎng)大學(xué)生的邏輯思維、抽象思維、創(chuàng)新精神與創(chuàng)新能力,以及提高綜合素質(zhì)起著十分重要的作用。在我校,非計(jì)算機(jī)專業(yè)學(xué)生占全體學(xué)生比例約為 90%,其程序設(shè)計(jì)課程一般采取大班上課,學(xué)生剛開始對程序設(shè)計(jì)課程頗有興趣,但隨著知識點(diǎn)的增多,難以理解和記憶的新概念、新術(shù)語、新規(guī)則大量出現(xiàn)后,逐漸感覺課程難度加大,且認(rèn)為與后續(xù)專業(yè)課程結(jié)合不夠緊密,未正確認(rèn)識到計(jì)算科學(xué)在本專業(yè)領(lǐng)域中的重要作用,所以學(xué)習(xí)的主動性、自覺性不斷下降,學(xué)習(xí)效益低。最終導(dǎo)致學(xué)生實(shí)踐能力不足,綜合分析能力及創(chuàng)新能力欠缺,難以滿足當(dāng)今社會對人才的要求。因此,程序設(shè)計(jì)課程的教學(xué)改革勢在必行。
1 計(jì)算思維
目前,計(jì)算思維的培養(yǎng)成為國際和國內(nèi)計(jì)算機(jī)教育界關(guān)注的熱點(diǎn)。計(jì)算思維概念的提出,國際上廣泛認(rèn)同的是 2006 年美國卡內(nèi)基梅隆大 學(xué) 計(jì) 算 機(jī) 系 主 任 JeannetteM.Wing 教 授 在 ACM 上 發(fā) 表 的
《ComputationalThinking》(計(jì)算思維,簡稱 CT),她提出:“CT 是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計(jì),以及人類行為理解的涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動*1+”,她認(rèn)為計(jì)算思維是除閱讀、寫作、算數(shù)外,每個人必須掌握的技能之一。在我國,2010年《九校聯(lián)盟(C9)計(jì)算機(jī)基礎(chǔ)教學(xué)發(fā)展戰(zhàn)略聯(lián)合聲明》的核心要點(diǎn)也強(qiáng)調(diào)“需要把培養(yǎng)學(xué)生的‘計(jì)算思維’能力作為計(jì)算機(jī)基礎(chǔ)教學(xué)的核心任務(wù)*2+”。從國家層面上講,大學(xué)計(jì)算機(jī)基礎(chǔ)教育這門課程的定位就是基礎(chǔ)課程,也就是與數(shù)學(xué)、物理同等地位。既然是基礎(chǔ)課程,其教學(xué)方法和教學(xué)理念就應(yīng)該像數(shù)學(xué)與物理一樣,將學(xué)科的基本理論、基本思維教授給學(xué)生。計(jì)算和計(jì)算思維是計(jì)算機(jī)基礎(chǔ)課程的基本理論和基本思維,科學(xué)家已將計(jì)算思維和理論思維、實(shí)驗(yàn)思維并列為人類三大科學(xué)思維。因此,在大學(xué)計(jì)算機(jī)基礎(chǔ)教育中強(qiáng)調(diào)和深化“計(jì)算思維”的培養(yǎng),既有助于計(jì)算機(jī)基礎(chǔ)教育學(xué)科的健康、持續(xù)發(fā)展,又有助于 型人才的培養(yǎng)。程序設(shè)計(jì)課程是大學(xué)計(jì)算機(jī)基礎(chǔ)課程的重要分支,也是許多高校非計(jì)算機(jī)專業(yè)進(jìn)行計(jì)算機(jī)基礎(chǔ)教育的重要課程之一。程序設(shè)計(jì)課程的學(xué)習(xí)主要有二個內(nèi)容:第一,算法學(xué)習(xí),即學(xué)習(xí)問題求解的方法;第二,編程實(shí)現(xiàn),即理解計(jì)算機(jī)是如何實(shí)現(xiàn)算法的,利用計(jì)算機(jī)編程實(shí)現(xiàn)算法。課程學(xué)習(xí)不只是編寫程序,而是算法思想與問題求解的思路。總之,要教會學(xué)生使用計(jì)算機(jī)編程,逐步形成計(jì)算思維。
2 程序設(shè)計(jì)教學(xué)與計(jì)算思維
程序設(shè)計(jì)課程是訓(xùn)練學(xué)生思維能力的一個最直接最重要的平臺,而計(jì)算思維則提供了重新審視程序設(shè)計(jì)教學(xué)的視角,將計(jì)算思維融入到程序設(shè)計(jì)教學(xué)中是改革的必然趨勢。計(jì)算思維的本質(zhì)是抽象和自動化,計(jì)算思維的抽象是使用符號代替實(shí)際問題中的各種變量,每個程序包括各種標(biāo)識符、常量、變量、數(shù)組、函數(shù)和結(jié)構(gòu)體等符號語言,這些組合在一起就構(gòu)成了程序設(shè)計(jì)語言。計(jì)算思維的自動化則體現(xiàn)在程序的機(jī)械式執(zhí)行,這也是馮諾伊曼計(jì)算機(jī)體系的本質(zhì)特征。要實(shí)現(xiàn)自動化,就必須要設(shè)計(jì)精確的算法和嚴(yán)格的程序語言體系。計(jì)算思維的主要特征有三點(diǎn)。⑴嚴(yán)謹(jǐn)規(guī)整。完備的算法是計(jì)算機(jī)程序解決問題的基本要求,它的實(shí)現(xiàn)必然要使用嚴(yán)格的數(shù)學(xué)符號描述。計(jì)算思維要求用確定、形式化并且無二義性的語言描述問題,這就要求在程序設(shè)計(jì)課程教學(xué)過程中強(qiáng)化計(jì)算思維訓(xùn)練。例如學(xué)生在編寫程序時(shí)使用了錯誤的符號或者語法,都會在編譯或運(yùn)行時(shí)提示錯誤,教師要引導(dǎo)學(xué)生糾正自己的錯誤,培養(yǎng)他們嚴(yán)謹(jǐn)?shù)目茖W(xué)實(shí)證精神和編程的良好習(xí)慣,這些都屬于強(qiáng)化計(jì)算思維嚴(yán)謹(jǐn)性的范疇[3]。⑵目標(biāo)明確。計(jì)算思維是用來解答問題的,它將實(shí)際生活中的問題以抽象化和程序化的形式表示出來。通常解答問題的過程如下:發(fā)現(xiàn)問題—分析問題—思考問題
—解決問題—反思。程序設(shè)計(jì)課程要注意培養(yǎng)學(xué)生依據(jù)已有的知識體系,提出問題、解決問題的能力,著重強(qiáng)化利用計(jì)算思維的方式描述問題和使用機(jī)器語言解決問題的訓(xùn)練。例如,成績 5 級計(jì)分制就是我們在日常生活中感受到的問題,學(xué)生可根據(jù)自己對成績等級計(jì)分的理解寫出數(shù)學(xué)式,然后用多分支結(jié)構(gòu)算法進(jìn)行描述,最后上機(jī)實(shí)現(xiàn)。⑶機(jī)械化。用來描述問題和解決問題的算法有三種形式[4]。①生活算法:完成某項(xiàng)任務(wù)的計(jì)劃,例如一個學(xué)期的學(xué)習(xí)計(jì)劃。②數(shù)學(xué)算法:對一類計(jì)算問題確定統(tǒng)一的求解方法,例如一元二次方程組的求解公式。③計(jì)算思維算法:精確描述問題和求解問題的自動化形式語言,比如高級程序設(shè)計(jì)語言。計(jì)算思維算法強(qiáng)調(diào)利用計(jì)算機(jī)的速度和存儲優(yōu)勢,通過嚴(yán)格機(jī)械化的操作時(shí)序解決實(shí)際問題。比如“雞兔同籠”問題可以使用兩個二元方程組進(jìn)行數(shù)學(xué)求解,但是計(jì)算機(jī)算法則可以使用窮舉法進(jìn)行簡單重復(fù)的操作求解,充分利用了計(jì)算機(jī)的計(jì)算速度優(yōu)勢。在程序設(shè)計(jì)課程中強(qiáng)化計(jì)算思維訓(xùn)練,可以讓學(xué)生掌握使用機(jī)械化思維進(jìn)行信息處理的能力[5]。
3 基于計(jì)算思維的程序設(shè)計(jì)課程教學(xué)實(shí)踐
對于非計(jì)算機(jī)專業(yè)的學(xué)生來說,學(xué)習(xí)程序設(shè)計(jì)的目的是學(xué)會用計(jì)算機(jī)去分析問題和解決問題的思維方法,因此計(jì)算思維可以貫穿于程序設(shè)計(jì)課程的整個教學(xué)過程。
3.1 計(jì)算思維視角下的課程引入
首先,在引入程序設(shè)計(jì)類課程之前告訴學(xué)生編程能力是計(jì)算思維的具體表現(xiàn)。學(xué)生不僅要掌握計(jì)算機(jī)語言的相關(guān)知識,而且要能夠應(yīng)用程序設(shè)計(jì)的思想與方法分析和解決問題。例如,VisualBasic 程序設(shè)計(jì)基礎(chǔ)就是 VisualBasic 語言。正像自然語言的產(chǎn)生是人類社會活動發(fā)展的客觀要求和必然結(jié)果,同樣,計(jì)算機(jī)語言的產(chǎn)生和發(fā)展則是人類使用計(jì)算機(jī)的客觀要求和必然結(jié)果。從計(jì)算機(jī)語言的基本語法到其整體結(jié)構(gòu),都滲透著許多計(jì)算思維。因此,將“計(jì)算思維”引入“VisualBasic程序設(shè)計(jì)”教學(xué)就是:在講解相關(guān)知識點(diǎn)的同時(shí),也要講授其中所反映的計(jì)算思維,通過思維強(qiáng)化知識,通過知識培養(yǎng)思維。人們利用計(jì)算機(jī)就是為了處理信息數(shù)據(jù),而不同類型的信息數(shù)據(jù),其表達(dá)方式不盡相同,其處理方式也會有所不同,那么,計(jì)算機(jī)是如何實(shí)現(xiàn)信息數(shù)據(jù)的表示、存儲和處理的,這其中蘊(yùn)含的計(jì)算思維又是什么。首先,
根據(jù)馮諾依曼計(jì)算機(jī)體系結(jié)構(gòu):從軟件方面考慮,可通過聲明或定義不同類型數(shù)據(jù)以表示不同類型的信息;從硬件方面考慮,可通過存儲元件可實(shí)現(xiàn)信息數(shù)據(jù)的存儲,不同類型的數(shù)據(jù)占用不同長度的存儲單元。但僅僅完成信息數(shù)據(jù)的表示和存儲是遠(yuǎn)遠(yuǎn)不夠的,而要真正實(shí)現(xiàn)數(shù)據(jù)處理,由此便產(chǎn)生了計(jì)算機(jī)語言,即利用計(jì)算機(jī)語言編寫的數(shù)據(jù)處理程序指揮 CPU(中央處理器)完成相應(yīng)的數(shù)據(jù)處理。這個通過人、機(jī)共同努力完成的“問題求解”過程,就是一個計(jì)算思維的實(shí)現(xiàn)過程。顯然,實(shí)現(xiàn)這樣一個信息處理的計(jì)算思維,是需要計(jì)算機(jī)語言的技術(shù)支持即:數(shù)據(jù)表示(數(shù)據(jù)類型)、數(shù)據(jù)存儲(變(常)量)和數(shù)據(jù)處理(表達(dá)式和控制結(jié)構(gòu)),并由此引出 VisualBasic 語言基礎(chǔ)知識的學(xué)習(xí)。
3.2 梳理內(nèi)容,加強(qiáng)基于計(jì)算思維的關(guān)聯(lián)案例庫建設(shè),創(chuàng)新教學(xué)方法
筆者在深入研究非計(jì)算機(jī)專業(yè)學(xué)生認(rèn)知規(guī)律、思維模式和專業(yè)背景后,站在計(jì)算思維的層面上按照課程知識的內(nèi)在體系結(jié)構(gòu)梳理教學(xué)內(nèi)容,突出“案例化、實(shí)用化”,強(qiáng)調(diào)基于計(jì)算思維的關(guān)聯(lián)案例庫的建
設(shè)。關(guān)聯(lián)案例,一方面是指案例中的知識點(diǎn)相互關(guān)聯(lián),另一方面是指案例和生活、專業(yè)領(lǐng)域中的應(yīng)用相關(guān)聯(lián)。例如,在“VisualBasic 程序設(shè)計(jì)”課程中,可以根據(jù)課程知識點(diǎn),按代表性、實(shí)用性、趣味性原則來設(shè)計(jì)關(guān)聯(lián)案例,如計(jì)算器、字幕、鬧鐘、文本編輯器、菜單、數(shù)據(jù)庫管理系統(tǒng)等,將設(shè)計(jì)全過程呈現(xiàn)在大屏幕上,讓學(xué)生親身感受并參與其中,激發(fā)了學(xué)生的求知 。筆者在“VisualBasic 程序設(shè)計(jì)”課程第一堂課中就展示經(jīng)典案例及上屆學(xué)生的優(yōu)秀作品,使學(xué)生對本課程產(chǎn)生濃厚的興趣,接著以一個簡單實(shí)用的例子展示了“VB”小程序的制作,介紹了 VB 編程環(huán)境和 VB 編程四部曲,說明 VB 編程上手的容易,克服學(xué)生的畏難情緒,幫助學(xué)生更快地入門。在課堂教學(xué)中,筆者貫穿“案例引導(dǎo),精講多練,教學(xué)互動”的教學(xué)原則,探索和自創(chuàng)出一套適合程序設(shè)計(jì)課程的關(guān)聯(lián)案例式教學(xué)方法(“關(guān)聯(lián)案例展示—案例剖析—講解相關(guān)知識點(diǎn)-知識點(diǎn)在實(shí)踐中的應(yīng)用”),即在傳統(tǒng)教學(xué)方法的基礎(chǔ)上,將關(guān)聯(lián)案例式教學(xué)法引入到課堂教學(xué)中來。例如,在VisualBasic 程序設(shè)計(jì)課程教學(xué)中,可以用案例“登陸界面的制作”講解基本控件(form、label、text、command 等),用案例“出租車計(jì)費(fèi)問題”講解分支結(jié)構(gòu),用案例“計(jì)算器”講解控件數(shù)組,用案例“成績管理系統(tǒng)”講解菜單和多重窗體程序制作等。這些實(shí)例滲透了“知識來源于生活”的教學(xué)思想,能使學(xué)生意識到學(xué)習(xí)知識的目的是為了解決生活中的實(shí)際問題。此外,還可以嘗試從社會實(shí)際、學(xué)生實(shí)際出發(fā),采取多種直觀、具體、多樣化的教學(xué)方法,去激發(fā)、調(diào)動學(xué)生的學(xué)習(xí)熱情和興趣。比如講授 for 循環(huán)語句時(shí),盡量采用啟發(fā)式教學(xué),老師多提問,
引導(dǎo)學(xué)生積極思考答案,自己得出結(jié)論,最后再由老師補(bǔ)充完善。例如,我們可以從最簡單的計(jì)算 1+2+3+……+10 這個問題開始,然后讓學(xué)生計(jì)算 10!=1×2×3×……×10,再讓學(xué)生計(jì)算 1!+2!+……+10!,這樣不斷地制造問題,讓學(xué)生不斷地想辦法去解決問題,用改變循環(huán)體的方法,化特殊為一般;用比喻的方法降低學(xué)生對累加器的理解難度,化抽象為具體,不斷地感覺到學(xué)習(xí)程序設(shè)計(jì)的用途和樂趣,積極地思考、分析、歸納,從而使計(jì)算思維得到訓(xùn)練。又如講到數(shù)組中對數(shù)據(jù)的排序問題時(shí),可以采用啟發(fā)式、游戲法和課件演示教學(xué)法,游戲法是讓幾個同學(xué)上來,站成一排,然后按身高進(jìn)行排序,課件演示教學(xué)法師則用 Flash 動畫把排序過程詳細(xì)展示,幫助學(xué)生更好地理解,促使學(xué)生利用自己已有的知識結(jié)構(gòu)和邏輯思維對問題進(jìn)行分析和歸納。通過這樣的思維訓(xùn)練,讓學(xué)生在思考中學(xué)習(xí),在學(xué)習(xí)中運(yùn)用新的方法破解難題,培養(yǎng)學(xué)生分析問題、解決問題的能力,鍛煉學(xué)生數(shù)學(xué)建模能力,鞏固知識的同時(shí)拓展技能和技巧。
3.3 以上機(jī)實(shí)驗(yàn)為重點(diǎn),思維多樣化的計(jì)算思維強(qiáng)化訓(xùn)練
⑴以上機(jī)實(shí)驗(yàn)為重點(diǎn)筆者在講授程序設(shè)計(jì)課程的教學(xué)過程中,采
用以上機(jī)實(shí)驗(yàn)為重點(diǎn)的計(jì)算思維訓(xùn)練模式,讓學(xué)生在動手實(shí)踐中掌握知識、消化知識,強(qiáng)化計(jì)算思維。實(shí)驗(yàn)內(nèi)容采用“驗(yàn)證-調(diào)試-設(shè)計(jì)”的形式進(jìn)行設(shè)計(jì);上機(jī)實(shí)驗(yàn)采用流程化管理的方式,對于任何實(shí)驗(yàn)內(nèi)容,都要求學(xué)生按照“閱讀題目-分析總結(jié)-設(shè)計(jì)算法-編寫實(shí)現(xiàn)代碼-上機(jī)調(diào)試-優(yōu)化程序”的順序進(jìn)行,引導(dǎo)他們養(yǎng)成良好的思維能力和編程習(xí)慣;在實(shí)驗(yàn)過程中遇到困難和錯誤,不輕易 和批評學(xué)生,而是指導(dǎo)他們分析難點(diǎn)和錯誤,自己解決。同時(shí),給學(xué)生提出新的解決方案或排除未知問題的滿足感,激發(fā)他們的學(xué)習(xí)積極性,大膽創(chuàng)新。強(qiáng)化計(jì)算思維,實(shí)驗(yàn)內(nèi)容的設(shè)計(jì)非常重要。教師要不斷學(xué)習(xí)和創(chuàng)作適合學(xué)生知識和心理特點(diǎn)的實(shí)驗(yàn)內(nèi)容。實(shí)驗(yàn)內(nèi)容不應(yīng)是課堂內(nèi)容的簡單復(fù)習(xí),要給學(xué)生提供計(jì)算思維的創(chuàng)新空間。課堂內(nèi)容要符合實(shí)驗(yàn)內(nèi)容,要給學(xué)生留問題,讓他們自己分析總結(jié),在實(shí)驗(yàn)上機(jī)時(shí)解決,提高自主思維能力。例如,實(shí)驗(yàn)案例:公主出嫁。美麗的公主伊麗莎白長大成人,鄰國的六個王子來提親,公主有三位侍女,她們猜測哪位王子會得到公主的芳心。侍女一說:“我認(rèn)為公主會嫁給科爾王子,或者是威廉王子。”侍女二說:“我想公主一定不會選擇亞瑟王子,因?yàn)樗纳聿膶?shí)在太矮了。”侍女三說:“不管怎么說,公主肯定不會嫁給菲利普、查理、路易斯三位王子,因?yàn)樗麄兊膰艺郎?zhǔn)備和我們打仗。”事實(shí)上,三個侍女中只有一人猜對了。試編寫程序,找出哪位王子能與公主喜結(jié)良緣。為了找出伊麗莎白的白馬王子,從計(jì)算思維的角度進(jìn)行邏輯推理。首先引入邏輯運(yùn)算符和邏輯表達(dá)式,規(guī)定一些符號變換規(guī)則,將三個侍女的話分別轉(zhuǎn)換成邏輯表達(dá)式,給出綜合判斷條件,再
借助這些符號和規(guī)則將邏輯推理過程在形式上變得像代數(shù)演算一樣。比如定義 6 個整型變量——A、B、C、D、E、F 分別代表 6 位男嘉賓,變量取值為 0 表示不是伊麗莎白的白馬王子,為 1 表示是白馬王子。每位男嘉賓都有兩種可能:“是(1)”或者“不是(0)”,6 位男嘉賓按 A、B、C、D、E、F 順序,有 種取值:000000,000001,…,111111。對案例分析的目的是讓學(xué)生懂得:①掌握解題的重要一步是將人的想法寫成計(jì)算機(jī)能夠處理的表達(dá)式或操作步驟,要用到關(guān)系運(yùn)算、邏輯運(yùn)算和算術(shù)運(yùn)算;②用計(jì)算機(jī)解題經(jīng)常需要從多種可能性中尋找其中的一種或幾種,因此,要用“枚舉法”,當(dāng)遇到大量重復(fù)計(jì)算時(shí),自然就引出了循環(huán)結(jié)構(gòu);③分支是計(jì)算思維的重要方式。筆者借助這個案例題把程序設(shè)計(jì)的基本概念和方法傳授給學(xué)生,當(dāng)學(xué)生建立起這種認(rèn)識之后,在潛移默化中也就培養(yǎng)了邏輯思維和計(jì)算思維。學(xué)生通過上機(jī)實(shí)踐可以體會到計(jì)算思維的精髓[6]。上機(jī)實(shí)踐要有目的地訓(xùn)練五種能力:①分析題目,找到問題,并將其抽象為數(shù)學(xué)模型;②構(gòu)思算法;③編寫程序;④調(diào)試程序;⑤分析運(yùn)行結(jié)果,一旦出錯,應(yīng)該仔細(xì)認(rèn)真找出原因,提出改正的意見。大多數(shù)學(xué)生對許多問題的看法是在實(shí)驗(yàn)課的討論中逐漸清晰和升華,對思想啟發(fā)、計(jì)算思維的培養(yǎng)起到推動作用。依據(jù)非計(jì)算機(jī)專業(yè)學(xué)生認(rèn)知的規(guī)律,我們設(shè)計(jì)了生活化、趣味化的實(shí)驗(yàn)內(nèi)容,如俄羅斯方塊游戲、計(jì)算器、打字游戲等。⑵以思維多樣化為核心點(diǎn)由于學(xué)生認(rèn)知方式和心理特征存在個體差異,在程序設(shè)計(jì)課程的教學(xué)過程中必然會出現(xiàn)思維多樣化的現(xiàn)象。教師要尊重這種認(rèn)知方式的差異,倡導(dǎo)多樣化的算法思維,即“一題多
解”,鼓勵學(xué)生根據(jù)自己的興趣,從不同角度發(fā)現(xiàn)問題和分析問題,用不同的算法解決問題,用不同的程序?qū)崿F(xiàn)算法,培養(yǎng)學(xué)生的探索精神和創(chuàng)新意識。強(qiáng)調(diào)多樣化的算法思維,可以有效地強(qiáng)化計(jì)算思維,讓學(xué)生明白“條條大路通羅馬”的道理。好的算法不一定適用于每個問題和每個學(xué)生,并且?guī)缀跛械乃惴ǘ加芯窒扌。在設(shè)計(jì)上機(jī)實(shí)驗(yàn)內(nèi)容時(shí),教師要考慮給出一些可供學(xué)生重構(gòu)的程序片段,培養(yǎng)他們的思維創(chuàng)新能力。所謂重構(gòu),就是在已有的程序基礎(chǔ)上衍生出的新的解決問題算法實(shí)現(xiàn)。這種通過分析已有程序的優(yōu)缺點(diǎn),修改并把自己的思維融入新程序的過程,就是 的鍛煉計(jì)算思維的訓(xùn)練手段。教師還應(yīng)引導(dǎo)學(xué)生進(jìn)行反思和創(chuàng)新聯(lián)系,達(dá)到簡化和優(yōu)化算法的目的。這個簡化和優(yōu)化算法的過程可以很好地強(qiáng)化計(jì)算思維訓(xùn)練,幫助學(xué)生舉一反三地學(xué)好程序設(shè)計(jì)課程。比如“百雞百錢”問題,大多數(shù)學(xué)生都采用三重循環(huán)的算法實(shí)現(xiàn)。我們就可以提出改進(jìn)方案,鼓勵學(xué)生積極思考如何采用二重循環(huán)的方式實(shí)現(xiàn),然后再比較兩種算法的性能,三重循環(huán)的次數(shù)達(dá)到了 100 萬次,而二次循環(huán)是 1 萬次,性能提升了 99%。一個簡單的循環(huán)就可以讓學(xué)生認(rèn)識算法優(yōu)化的魅力,這就可以讓他們繼續(xù)思考如何簡化問題,公雞數(shù)量不可超過 32,就可以在循環(huán)中把公雞數(shù)量由 100 降到 32,同理,母雞也降到 98,這樣循環(huán)又降低了10000-32×98=68 次,比之前的二重循環(huán)又減少了 70%左右,這一系列的簡優(yōu)化處理,對于增強(qiáng)計(jì)算思維能力有極大的促進(jìn)作用。
4 結(jié)束語
本文通過分析程序設(shè)計(jì)課程教學(xué)現(xiàn)狀和計(jì)算思維的特征,提出了基于計(jì)算思維的程序設(shè)計(jì)課程教學(xué)改革方向。并進(jìn)行了基于計(jì)算思維的程序設(shè)計(jì)課程教學(xué)研究與實(shí)踐:如計(jì)算思維視角下的課程引入;重新梳理和組織教學(xué)內(nèi)容,加強(qiáng)基于計(jì)算思維的關(guān)聯(lián)案例庫建設(shè),創(chuàng)新教學(xué)方法;以上機(jī)實(shí)驗(yàn)為重點(diǎn)、思維多樣化為核心點(diǎn)的計(jì)算思維強(qiáng)化訓(xùn)練等。將計(jì)算思維貫穿于程序設(shè)計(jì)課程的整個教學(xué)過程。實(shí)踐證明,這種教學(xué)模式對學(xué)生計(jì)算思維和創(chuàng)新能力的培養(yǎng)大有裨益。將計(jì)算思維引入程序設(shè)計(jì)課程教學(xué)的整個過程是必要的也是可行的,教師從計(jì)算思維的角度重新審視和組織程序設(shè)計(jì)基礎(chǔ)的課堂和實(shí)踐教學(xué),提煉課程中含有的計(jì)算思維的基本概念、方法和思想,通過精心的課程教學(xué)設(shè)計(jì)和實(shí)驗(yàn)指導(dǎo),可以讓學(xué)生樹立用計(jì)算機(jī)求解問題的意識,認(rèn)識到計(jì)算機(jī)對于人的優(yōu)勢和局限性,最終自覺地運(yùn)用計(jì)算思維來看問題、思考問題和解決問題,從而實(shí)現(xiàn)教學(xué)由傳授知識到培養(yǎng)能力的轉(zhuǎn)變。我們不僅要在程序設(shè)計(jì)課程中強(qiáng)化計(jì)算思維,還應(yīng)努力把它推廣到更多的計(jì)算機(jī)課程中去,真正地把強(qiáng)化計(jì)算思維做到實(shí)處。
參考文獻(xiàn)
[1]JeannetteMW.ComputationalThinking[J].Communica-tionsofACM,2006.49(3):33-35
[2]陳國良,董榮勝.計(jì)算思維與大學(xué)計(jì)算機(jī)基礎(chǔ)教育[J].中國大學(xué)教學(xué),2011.1:9
[3]董榮勝,古天龍.計(jì)算思維與計(jì)算機(jī)方法論[J].計(jì)算機(jī)科學(xué),2009.1:1-4
[4]陳杰華,戴麗娟.以培養(yǎng)計(jì)算思維為核心的程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)[J].實(shí)驗(yàn)技術(shù)與管理,2011.1:125-127
[5]臧勁松.培養(yǎng)學(xué)生計(jì)算思維的程序設(shè)計(jì)課程教學(xué)[J].計(jì)算機(jī)教育,2012.2:78-80
[6]于寧,崔武子,蔡春,戴紅.突出計(jì)算思維訓(xùn)練的 VB 程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)[J].實(shí)驗(yàn)技術(shù)與管理,2016.9:182-185
相關(guān)熱詞搜索:論文 教學(xué)改革 程序設(shè)計(jì)
熱點(diǎn)文章閱讀