• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      程序設計課程教學中計算思維能力的培養(yǎng)

      2014-04-25 22:20:56劉遠軍黃同成謝兵牛莉
      計算機教育 2014年3期
      關(guān)鍵詞:計算思維程序設計能力培養(yǎng)

      劉遠軍 黃同成 謝兵 牛莉

      摘要:分析當前程序設計課程教學的現(xiàn)狀,研討計算思維方法的內(nèi)涵和優(yōu)點,設計一套旨在培養(yǎng)學生計算思維能力的教學方案,指出該方案能有效提高學生的學習興趣和思維的活躍度,對學生的程序設計能力的提高起到有益作用。

      關(guān)鍵詞:程序設計;教學改革;計算思維;能力培養(yǎng)

      0 引言

      隨著社會信息化的日益發(fā)展,計算機能力成為所有大學生必須掌握的一項基本能力和技能。幾乎所有的高校都開設了大學計算機基礎類課程,它包含計算機基礎、程序設計語言、數(shù)據(jù)庫基礎、辦公軟件應用、網(wǎng)頁設計等多門不同的課程。本類課程的開設旨在為非計算機專業(yè)的學生學習計算機的基礎知識、掌握計算機的基本技能并運用計算機工具獲取知識提供一個入門的指導。而在上述課程中,難度最大、要求最高、對學生影響最大的課程是程序設計課程。

      現(xiàn)今,中小學日益提倡素質(zhì)教育,加強了對信息技術(shù)的課程建設,初中、高中都開設了信息技術(shù)課程,原本很多應該在大學教授的計算機的基本知識和基本操作,已經(jīng)前移到了中學階段。但是,中學階段的信息技術(shù)課程以教授計算機的基本知識和基本操作技能為主,很少涉及程序設計的內(nèi)容。所以,大學計算機基礎類的課程,應該重點加強程序設計類課程的建設。在程序設計課程的教學中,我們不僅要教會學生使用一門程序設計語言(如c語言、c++、C#、VB等),更重要的是提高學生利用計算機思維來解決問題的能力。所以,必須將計算思維引入到程序設計課程的教學中來,實現(xiàn)由單純的程序設計語言的學習向計算思維能力培養(yǎng)的轉(zhuǎn)變。

      1 計算思維的內(nèi)容

      1.1 計算思維的理解

      計算思維其實自古既有,并且無所不在。從中國古代的算籌、算盤到近代西方國家的加法器,無不閃爍著計算思維的火花,但是一直缺少一個對計算思維完整清晰的定義。2006年3月,美國卡內(nèi)基·梅隆大學計算機科學系主任周以真教授首次在權(quán)威雜志Communications of the ACM上提出了“計算思維”(Computational Thinking):計算思維是運用計算機科學的基礎概念進行問題求解、系統(tǒng)設計以及人類行為理解的思維活動。按周以真教授的解釋,計算思維是建立在計算過程的理論上的,但是又超越了計算機本身。計算過程并非一定都是在計算機上完成,也可以在人腦中完成,所以,計算思維最本質(zhì)的內(nèi)容是抽象(Abstraction)和自動化(Automation)。

      從現(xiàn)實角度講,計算思維就是將問題引入、歸納、求解、引申的過程,也就是將未知問題歸納成若干已知問題,從而求解的過程。在程序設計語言的課程中,漢諾塔問題(Hanoi Tower Problem)的求解過程,就是對歸納法求解的一個最典型的詮釋。

      筆者認為,運用計算思維解題時,有一個很重要的問題,就是問題的表述。計算思維最終還是通過數(shù)學模型或者邏輯模型來解題的,所以怎樣將問題轉(zhuǎn)換成合適的模型表示,關(guān)系到問題是否能夠得解,是否能夠在預期的時間內(nèi)得出結(jié)論。這個建模的過程,涵蓋了編碼/解碼、約簡、遞歸、歸化、仿真、推理等多種思維過程和轉(zhuǎn)換模式,是計算思維的一個重要組成部分。建模能力的強弱,直接影響了計算思維能力的高低。

      1.2 計算思維的不同層次要求

      計算思維不是一個單獨的、和其他思維方法毫無關(guān)聯(lián)的孤立方法。計算思維產(chǎn)生于計算機科學,而與計算機科學聯(lián)系最緊密的思維方法是數(shù)學思維、邏輯思維和工程思維。我們可以將計算思維看作計算機科學與數(shù)學思維、邏輯思維和工程思維的交集,而它們也代表了計算思維的不同層次要求,如圖1所示。

      2 引入計算思維的程序設計課程教學改革實踐

      2.1 計算機能力的3個層次

      (1)計算機使用能力(Computer Literary)。就是利用計算機進行各種操作以獲取信息或者計算結(jié)果的能力,這是最低要求層面的計算機能力。例如,利用Excel進行班級成績統(tǒng)計分析,利用Intemet查詢、下載所需資料,編寫小程序?qū)崿F(xiàn)萬年歷的顯示等。

      (2)計算機系統(tǒng)認知能力(ComputerFluency)。這是對計算機系統(tǒng)的理解和應用能力,建立在對計算機系統(tǒng)的全面理解的基礎上,它是較高的要求,一般是學習計算機專業(yè)的學生所要求的,需要開設很多門計算機專業(yè)課程才能達到這個效果。對于非計算機專業(yè)學生而言,這種能力毋須做太多關(guān)注。

      (3)計算思維能力(Computer Thinldng)。計算思維的內(nèi)涵在上文中已經(jīng)詳細闡述,計算思維能力是適合于所有學生的一種普遍的思維能力。

      程序設計課程是大學計算機基礎教學中重要的一個環(huán)節(jié),其目的是培養(yǎng)學生的編程能力。而編程過程是編寫一系列的計算機指令代碼,讓計算機執(zhí)行指令以完成特定的功能或者解決規(guī)定的問題,所以,編程能力實質(zhì)上就是利用計算機解決問題的能力。從這一點看,編程能力可以歸結(jié)于計算機使用能力,而怎樣編程,這個過程需要計算思維來詮釋,這可以從計算思維能力的高度來加以分析和討論。所以,我們要培養(yǎng)學生的計算機使用能力,更要培養(yǎng)學生的計算思維能力。

      2.2 引入計算思維后的教學組織與實施過程

      筆者在2011級擔任教學任務的4個班級中,選取了2個班進行了教學改革研究(以下稱為實驗組),在這2個班中,對授課內(nèi)容和授課計劃進行了調(diào)整,引入了計算思維的培養(yǎng)過程,在授課中,采用了“問題引入一問題歸納一建模求解一問題引申”的教學模式。授課方式和課堂語言組織上,重點突出了對學生思維的誘導、指引和總結(jié)歸納,使學生從“要做什么”向“要怎么做”轉(zhuǎn)變。另外兩個班依然采用“教師講解一學生練習一教師總結(jié)”的傳統(tǒng)教學方法(以下稱為對照組)。

      2.2.1 課堂教學實施過程

      筆者以程序設計課程(c語言)中“函數(shù)的遞歸調(diào)用”這一內(nèi)容的授課過程來說明教學過程中計算思維能力的培養(yǎng)。endprint

      1)問題的引入。

      首先,在投影上給出漢諾塔問題(HanoiTower Problem)的畫面,漢諾塔問題是一個源于印度的古老的益智問題:有3個塔(分別為A塔,B塔和c塔)。開始時,有n個圓盤以大的在下,小的在上的次序疊放在A塔上。現(xiàn)要將A塔上的所有圓盤,借助B塔,全部移動到c塔上,且仍按照原來的次序疊放。移動的規(guī)則如下:這些圓盤只能在3個塔間進行移動,一次只能移動一個盤子,且任何時候都不允許將較大的盤子壓在比它小的盤子的上面。這個問題的提出,馬上就引起了學生的興趣,我們先讓學生拋棄程序設計語言本身,僅從數(shù)學思維上對這個問題進行思考和討論,為下一步的教學做好準備。

      2)問題的歸納與約簡。

      計算思維的一個特點就是將要求解的問題歸納、約簡為簡單、已知的問題。對上述提出的問題,我們引導學生進行歸納和約簡,先假設A塔上只有大小2個圓盤,引導學生對這個問題進行思考。因為n個圓盤被簡化成只有2個圓盤,這樣問題的規(guī)模小得多,學生很快就能找到問題的解法,先將A塔上面的小圓盤移動到B塔,再把A塔下面的大圓盤移動到c塔,最后將B塔上的小圓盤移動到c塔(如圖2所示)。能找到這個解法,就為下一步的解題打下了理論基礎。

      3)問題的求解。

      根據(jù)上一步的工作,學生已經(jīng)找出了將2個圓盤從一個塔移動到另外一個塔的算法。那么繼續(xù)進行引導,如果A塔是3個圓盤呢?那么首先要把A塔上面的2個圓盤看作一個整體,將它們移動到B塔,然后把A塔最底下那個最大的圓盤移動到c塔,最后把B塔上的2個圓盤再移動到c塔。也就是說3個圓盤的移動可以分解成上面2個圓盤的移動和下面1個圓盤的移動,而怎樣移動2個圓盤的算法在上一步已經(jīng)得解,所以,3個圓盤的漢諾塔問題得解(如圖3所示)。進而繼續(xù)思考,如果是4個圓盤,那么可以分解成上面3個圓盤和下面1個圓盤的移動,而3個圓盤的解法已經(jīng)在上一步得出,依此類推,任意,2個圓盤的移動都可以看做上面n-1個圓盤的移動和下面1個圓盤的移動,這樣,所有的問題都能逐步簡化,最終歸納為2個圓盤從一個塔往另一個塔移動的問題。

      4)問題的引申。

      解決完上述問題后,我們可以提出一些更深層次的問題來啟發(fā)學生的思維。例如,我們可以設計一個四柱漢諾塔問題,有A、B、c、D 4個塔,要把A塔上的圓盤全部轉(zhuǎn)移到D塔,可以借助B塔和c塔,規(guī)則同三柱漢諾塔。通過讓學生自主思考并嘗試解答以上問題,能讓學生實現(xiàn)更深的思維練習,培養(yǎng)出學生良好的計算思維能力。

      2.2.2 實踐效果

      經(jīng)過1學年的教學改革實踐,采用了計算思維培養(yǎng)模式的實驗組與傳統(tǒng)操作技能培養(yǎng)為主的對照組相比,具有以下一些區(qū)別:

      (1)從課堂氛圍來看,實驗組比對照組明顯要思維活躍,回答教師問題更積極,質(zhì)量更高。學生逃課和開小差的情況明顯減少,思維活躍度的差別表現(xiàn)明顯。這說明引入計算思維以后,更能激發(fā)學生的學習興趣,使學生開動思維,緊跟教師上課節(jié)奏,這具有明顯的積極意義。

      (2)從考核結(jié)果來看,實驗組比對照組的成績有較明顯的提高,尤其對于考試中一些教師平時沒有講過的新題型、新題目,實驗組的正確率明顯要高于對照組。

      (3)從對后續(xù)學習的影響來看,實驗組比對照組更有主動性和自覺性,且效率更高。程序設計課程于6月份結(jié)束,4個月后,在10月份,筆者分別抽取了實驗組和對照組的10名學生進行回訪,實驗組中有8名學生在課程結(jié)束后,仍然利用網(wǎng)絡資源和參考書繼續(xù)學習程序設計的相關(guān)知識,實驗組的10人中有7人通過了全國計算機等級考試二級c語言的考試。而對照組的10名學生中只有4名學生繼續(xù)自學程序設計的相關(guān)知識,他們當中只有3人通過了全國計算機等級考試二級c語言的考試。這說明計算思維能力對學生的自學能力的提高也有較大的作用。

      3 結(jié)語

      計算思維自2006年被提出并被明確定義以后,逐漸成為計算機科學領域和計算機教育界最先進、最流行的思想之一。在程序設計課程教學中,著力于學生計算思維的培養(yǎng),不僅對學生學好程序設計語言本身有積極的作用,更對改進學生思維習慣,幫助學生以計算機科學的概念和方法對問題進行建模求解有非常重要的促進作用。而這種思維,必將會給學生今后的工作和學習帶來巨大的幫助。

      (見習編輯:劉麗麗;編輯:孫怡銘)endprint

      猜你喜歡
      計算思維程序設計能力培養(yǎng)
      基于Visual Studio Code的C語言程序設計實踐教學探索
      計算機教育(2020年5期)2020-07-24 08:52:56
      從細節(jié)入手,談PLC程序設計技巧
      電子制作(2019年9期)2019-05-30 09:42:04
      高職高專院校C語言程序設計教學改革探索
      程序設計課程中計算思維和應用能力培養(yǎng)問題研究
      計算機教育(2016年7期)2016-11-10 08:16:19
      民族高校C語言程序設計課程教學改革的研究
      軟件工程(2016年8期)2016-10-25 16:03:32
      算法的案例教學探析
      淺談藝術(shù)專業(yè)學生計算思維能力的培養(yǎng)
      數(shù)學歸納法在高中數(shù)學教學中的應用研究
      成才之路(2016年25期)2016-10-08 10:15:46
      信息技術(shù)教學中學生自主探究能力的培養(yǎng)探析
      成才之路(2016年25期)2016-10-08 10:15:03
      基于CDIO的大學生職業(yè)素養(yǎng)培養(yǎng)研究
      成才之路(2016年25期)2016-10-08 09:59:12
      大丰市| 无极县| 藁城市| 堆龙德庆县| 五台县| 元江| 鹿邑县| 安丘市| 绍兴市| 措美县| 新郑市| 湖州市| 区。| 绍兴县| 德保县| 绥芬河市| 新沂市| 饶阳县| 顺平县| 永年县| 兴山县| 怀集县| 山阳县| 蕲春县| 十堰市| 锦屏县| 青田县| 桃源县| 苍山县| 南靖县| 都江堰市| 明溪县| 信宜市| 博爱县| 潍坊市| 东兰县| 麻城市| 阳曲县| 剑河县| 平昌县| 英山县|