賀清碧
摘要: 培養(yǎng)學(xué)生計(jì)算思維能力是計(jì)算機(jī)基礎(chǔ)課程教學(xué)中的核心任務(wù)之一,而計(jì)算機(jī)程序設(shè)計(jì)課程在計(jì)算機(jī)能力培養(yǎng)方面發(fā)揮著極其重要的作用。本文就針對于如何培養(yǎng)學(xué)生計(jì)算思維能力的問題,在計(jì)算機(jī)程序設(shè)計(jì)課程的教學(xué)中,從轉(zhuǎn)變教學(xué)觀念、因類施教、任務(wù)驅(qū)動教學(xué)模式和實(shí)踐環(huán)節(jié)等方面提出了具體的策略。
Abstract: The cultivation of students' computational thinking ability is one of the core tasks of the teaching of basic computer courses, and computer programming courses in computer skills training play an extremely important role. In this paper for how to cultivate the students' computational thinking ability in the teaching of computer program design course, put forward the concrete strategies from the transformation of teaching idea, class teaching, task driven teaching mode and practice etc.
關(guān)鍵詞: 計(jì)算思維;創(chuàng)新思維;任務(wù)驅(qū)動
Key words: computational thinking;creative thinking;task driven
中圖分類號:TP311.1;G642.3 文獻(xiàn)標(biāo)識碼:A 文章編號:1006-4311(2017)02-0249-02
0 引言
計(jì)算思維實(shí)質(zhì)上就是一種人們對于一個(gè)問題的描述、建立模型以及問題的最后求解這一過程的科學(xué)思維能力[1],它已經(jīng)成為人們本質(zhì)的、必須具備的一種最基礎(chǔ)、最普遍、最適用和不可缺少的基礎(chǔ)思維方式和能力,就如同人們閱讀、寫字、做算術(shù)一樣,它將是現(xiàn)代社會中每個(gè)公民必需的生存技能和工具。計(jì)算機(jī)思維是一種現(xiàn)代科學(xué)思維能力,該思維強(qiáng)調(diào)的是計(jì)算過程的具體實(shí)現(xiàn)以及如何利用程序語言控制機(jī)器來解決實(shí)際問題[2]。周以真教授提出的觀點(diǎn)是:“計(jì)算思維是人類實(shí)現(xiàn)問題求解的一種途徑,但決非要使人類像計(jì)算機(jī)那樣思考。與計(jì)算機(jī)相比,人類富于創(chuàng)造力和想象力,使用計(jì)算設(shè)備,人們可以運(yùn)用自己的智慧去解決那些在計(jì)算時(shí)代之前不敢嘗試的問題”[3]。
因此,可以認(rèn)為計(jì)算思維具有抽象和自動化的本質(zhì),是人們必須具備的一種最基礎(chǔ)、最基本的思維方式和能力,在現(xiàn)代信息化社會中起到重大作用。所以在計(jì)算機(jī)程序設(shè)計(jì)課程體系中,如何引入計(jì)算思維理念,如何培養(yǎng)計(jì)算思維,有助于提高教育教學(xué)水平,同時(shí)促進(jìn)計(jì)算思維在國內(nèi)的進(jìn)一步研究與傳播,為計(jì)算機(jī)基礎(chǔ)課程教學(xué)改革提供新的思路與視角。
1 計(jì)算思維
計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問題求解、系統(tǒng)設(shè)計(jì)以及人類行為理解等涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動[4]。早在2006年3月,在美國計(jì)算機(jī)權(quán)威雜志ACM上,卡內(nèi)基·梅隆大學(xué)計(jì)算機(jī)科學(xué)系周以真(Jeannette M.Wing)教授就率先提出了這一概念,隨后在國內(nèi)外掀起了有關(guān)計(jì)算思維的廣泛研究與探討。比如,在2007年3月,“微軟-卡內(nèi)基梅隆計(jì)算思維中心”成立,是由微軟公司和卡內(nèi)基·梅隆大學(xué)聯(lián)合組建。同時(shí),美國計(jì)算機(jī)協(xié)會(ACM)也隨后提出在“計(jì)算機(jī)導(dǎo)論”課程中融入“計(jì)算思維”的理念[5]。
計(jì)算思維常用抽象與分解的方法來處理復(fù)雜的問題或系統(tǒng),通過對問題進(jìn)行合適的表達(dá)以及對問題建模來使問題變得容易解決,其本質(zhì)是抽象和自動化,如同每個(gè)人都應(yīng)該具備“讀、寫、算”能力一樣,它是人類改造世界的最基本的思維模式[6]。然而計(jì)算思維的抽象是用符號來代替現(xiàn)實(shí)問題中的各種變量,它的自動化體現(xiàn)在程序的機(jī)械式執(zhí)行方面。
2 程序設(shè)計(jì)課程中培養(yǎng)計(jì)算思維能力的策略
2.1 轉(zhuǎn)變教師的教學(xué)觀念
當(dāng)今科學(xué)技術(shù)和社會的加速發(fā)展,給教育不斷提出了很多新的需求,迫使教育工作者們教育觀念必須與時(shí)俱進(jìn)。遵照計(jì)算機(jī)學(xué)科的“構(gòu)造性”和“能行性”特征,就需要強(qiáng)化基于計(jì)算思維能力的計(jì)算機(jī)基礎(chǔ)課理論教育。在計(jì)算機(jī)程序設(shè)計(jì)課程的教學(xué)中,在學(xué)時(shí)壓縮和社會高需求下,培養(yǎng)學(xué)生抽象的歸納力和理解力等計(jì)算思維能力,比如,如何喚醒學(xué)生潛在的力量,提起他們的興趣、鼓勵(lì)其積極性,訓(xùn)練其自我性和主動性,成為我們教學(xué)研究的重點(diǎn)。所以我們必須在教學(xué)觀念上研究如何做到以人為本,針對在較大程度上又是以思維方式的數(shù)學(xué)化為支撐的計(jì)算思維能力,如何在教學(xué)的每一個(gè)環(huán)節(jié)去思考計(jì)算思維能力的培養(yǎng)。比如,在計(jì)算機(jī)程序設(shè)計(jì)課程的教學(xué)過程中強(qiáng)化計(jì)算思維訓(xùn)練的時(shí)候,計(jì)算思維就其嚴(yán)謹(jǐn)[7]性的特點(diǎn),要求在描述問題時(shí),必須采用確定的、形式化的、不能有二義性的語言,當(dāng)學(xué)生在編寫程序時(shí)使用了錯(cuò)誤的符號或者語法,這個(gè)時(shí)候就要耐心引導(dǎo)學(xué)生一起幫助他們?nèi)シ治霭l(fā)現(xiàn)問題存在的錯(cuò)誤,找出原因并加以修正,這樣可以培養(yǎng)學(xué)生良好的編程習(xí)慣和嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度,強(qiáng)化計(jì)算思維的嚴(yán)謹(jǐn)性。計(jì)算思維有一個(gè)非常明確的目標(biāo)即解決問題。所以在計(jì)算機(jī)程序設(shè)計(jì)課程的教學(xué)過程中,引導(dǎo)學(xué)生在現(xiàn)有的知識體系上,大膽地提出問題,用抽象化和程序化的形式將問題描述出來,然后用計(jì)算機(jī)程序語言來解決,通過這種方式可以培養(yǎng)學(xué)生自己提出問題和解決問題的能力。同時(shí)計(jì)算思維又是機(jī)械化的[8],在訓(xùn)練學(xué)生所用計(jì)算思維的算法來描述問題、解決問題時(shí),要充分利用現(xiàn)代計(jì)算機(jī),從而培養(yǎng)學(xué)生掌握使用機(jī)械化思維進(jìn)行信息處理的能力。
2.2 因類施教
大類教學(xué)現(xiàn)在是我國各個(gè)高校課程體系改革的發(fā)展方向,根據(jù)各個(gè)大類(例如,理學(xué)類、藝體類、工程類和文史類)中學(xué)生的特點(diǎn)和各個(gè)專業(yè)的需要,在計(jì)算機(jī)程序設(shè)計(jì)教學(xué)中,首先在教學(xué)內(nèi)容的選取上加以區(qū)別對待,在各個(gè)學(xué)科大類中,都利用計(jì)算機(jī)語言編寫程序,用計(jì)算機(jī)這個(gè)先進(jìn)的智力工具來解決各種問題,突出各個(gè)專業(yè)特色和各個(gè)學(xué)科與計(jì)算機(jī)通用理論體系的交叉性。
其次,對計(jì)算機(jī)程序設(shè)計(jì)的實(shí)驗(yàn)教學(xué)內(nèi)容,結(jié)合各個(gè)學(xué)科特點(diǎn),設(shè)計(jì)一些跨學(xué)科的綜合性實(shí)驗(yàn)。在師資隊(duì)伍方面,組成一個(gè)跨專業(yè)背景的教學(xué)團(tuán)隊(duì)。為了使學(xué)生熟悉理解計(jì)算機(jī)學(xué)科的普適思維方式[9],課堂上采用本學(xué)科的案例教學(xué)來培養(yǎng)學(xué)生計(jì)算思維的方式,包括對問題進(jìn)行邏輯和科學(xué)的分析,基本概念、基本方法、問題解決的方法(抽象到數(shù)學(xué)層次上去解決)以及編程的思路等。這樣讓學(xué)生感知計(jì)算機(jī)在本學(xué)科領(lǐng)域的強(qiáng)大應(yīng)用,加深對本專業(yè)領(lǐng)域中計(jì)算機(jī)應(yīng)用的感性認(rèn)識和理解,同時(shí)掌握問題解決是所用到的計(jì)算方法與思想。
2.3 任務(wù)驅(qū)動教學(xué)模式
在計(jì)算機(jī)程序設(shè)計(jì)教學(xué)中,采用任務(wù)驅(qū)動教學(xué)模式培養(yǎng)學(xué)生計(jì)算思維,就是在提出任務(wù)、實(shí)施任務(wù)、完成任務(wù)等各個(gè)環(huán)節(jié)中,注重培養(yǎng)學(xué)生如何用計(jì)算思維的方法去分析問題、解決問題。其中精心設(shè)計(jì)提出任務(wù)是實(shí)施任務(wù)驅(qū)動教學(xué)模式的關(guān)鍵。設(shè)計(jì)任務(wù)時(shí)注意選擇貼近生活和能讓學(xué)生感興趣的內(nèi)容,給學(xué)生提供計(jì)算思維的創(chuàng)新空間。注意任務(wù)的典型性,同時(shí)兼顧知識的覆蓋面,學(xué)生利用現(xiàn)有的能力能夠?qū)崿F(xiàn),同時(shí)要具有一定的代表性,對解決其它相似問題具有指導(dǎo)意義。在任務(wù)的實(shí)施過程中,為提高學(xué)生的計(jì)算思維能力,教師要起好引導(dǎo)作用,引導(dǎo)學(xué)生利用所學(xué)知識,一步步分析任務(wù),提出問題,充分調(diào)動學(xué)生的好奇心和求知欲,發(fā)揮個(gè)人潛能去分析并尋找解決問題的方法,提高自主思維的能力,引導(dǎo)學(xué)生用計(jì)算機(jī)編程在計(jì)算機(jī)上加以調(diào)試實(shí)現(xiàn)。學(xué)生完成一項(xiàng)任務(wù)后,要分組交流、討論一下任務(wù)的情況,作好總結(jié),指導(dǎo)教師及時(shí)對完成情況做出正確評價(jià)。通過這種任務(wù)驅(qū)動教學(xué)一方面使學(xué)生進(jìn)一步鞏固和提高了所掌握的知識與技能,同時(shí)又給學(xué)生創(chuàng)造了一個(gè)集思廣益、開拓思路的寬松的學(xué)習(xí)氛圍。通過這種基于計(jì)算思維的任務(wù)驅(qū)動教學(xué)模式,可培養(yǎng)學(xué)生發(fā)現(xiàn)問題并解決問題的計(jì)算思維能力。
2.4 強(qiáng)化實(shí)踐環(huán)節(jié)
計(jì)算思維突出的特點(diǎn)是借用計(jì)算機(jī)這一強(qiáng)大優(yōu)勢的計(jì)算工具來解決問題。因此,面對要求解的問題,人們常常將分析后的問題最后抽象成一個(gè)數(shù)學(xué)模型,即抽象到數(shù)學(xué)層次上,想出該問題的計(jì)算步驟,用計(jì)算機(jī)語言編程,最后在機(jī)器上驗(yàn)證其可行與否,正確與否。計(jì)算機(jī)程序設(shè)計(jì)課程中的編程能力又綜合體現(xiàn)出學(xué)生所具有的計(jì)算思維和技能化知識,其計(jì)算思維的正確性還要通過反復(fù)的上機(jī)實(shí)踐加以證明,所以在計(jì)算機(jī)程序設(shè)計(jì)課程中必須大力強(qiáng)化實(shí)踐環(huán)節(jié)。
在實(shí)踐環(huán)節(jié)中,為了培養(yǎng)學(xué)生個(gè)體思維和操作能力,實(shí)驗(yàn)內(nèi)容分為三種,即驗(yàn)證性實(shí)驗(yàn),設(shè)計(jì)性實(shí)驗(yàn)和調(diào)試性實(shí)驗(yàn),另外在配有課后強(qiáng)化計(jì)算思維訓(xùn)練的實(shí)驗(yàn)思考。在每次實(shí)驗(yàn)中,教師引導(dǎo)學(xué)生養(yǎng)成良好的計(jì)算思維和編程的好習(xí)慣,有意識地訓(xùn)練學(xué)生仔細(xì)閱讀題目,找出問題的關(guān)鍵并抽象為數(shù)學(xué)模型,思考數(shù)學(xué)模型求解的步驟,用所學(xué)的計(jì)算機(jī)編程語言將算法編寫一個(gè)源程序在計(jì)算機(jī)上調(diào)試運(yùn)行,并能對每個(gè)程序的結(jié)果加以分析,引導(dǎo)學(xué)生對已有算法的優(yōu)缺點(diǎn)進(jìn)行思考和分析,并如何進(jìn)行簡化和優(yōu)化,最好能給出一些能優(yōu)化改進(jìn)的算法。鼓勵(lì)學(xué)生要有發(fā)散性思維,提倡算法的多樣化。通過以上方法強(qiáng)化實(shí)踐教學(xué)環(huán)節(jié),從而培養(yǎng)學(xué)生在問題求解和機(jī)器實(shí)現(xiàn)方面的計(jì)算思維能力。
3 結(jié)束語
在計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)中融入計(jì)算思維的理念,在教學(xué)過程中將教學(xué)重心從計(jì)算機(jī)語言、語法和規(guī)則等的講解轉(zhuǎn)移到培養(yǎng)計(jì)算思維的各個(gè)學(xué)科案例和實(shí)踐任務(wù)中;以培養(yǎng)計(jì)算思維能力為核心,從思維方法的高度培養(yǎng)學(xué)生,培養(yǎng)學(xué)生在考慮問題時(shí),能主動地、自主地、習(xí)慣地采用計(jì)算思維來解決各個(gè)領(lǐng)域的實(shí)際問題,以滿足國家對培養(yǎng)創(chuàng)新型人才的需要。
參考文獻(xiàn):
[1]牟琴,譚良.計(jì)算思維的研究及其進(jìn)展[J].計(jì)算機(jī)科學(xué),2011(3):10-15.
[2]Wing J M,譚良.Computational Thinking[J].Communication of the ACM,2006,49(3):33-35.
[3]王移芝,魯凌云,周圍.以計(jì)算思維為航標(biāo),拓展計(jì)算機(jī)基礎(chǔ)課程改革的新思路[J].中國大學(xué)教學(xué),2012(6):39-41.
[4]Jeannette M W. Computational Thinking[J]. Communications of ACM. 2006,49(3):33-35.
[5]陳國良,董榮勝.計(jì)算思維與大學(xué)計(jì)算機(jī)基礎(chǔ)教育[J].中國大學(xué)教學(xué),2011(1):9.
[6]牟琴,譚良.計(jì)算思維的研究及其進(jìn)展[J].計(jì)算機(jī)科學(xué),2011(3):10-15.
[7]董榮勝.計(jì)算機(jī)科學(xué)導(dǎo)論:思想與方法[M].北京:高等教育出版社,2007:101-102.
[8]陳杰華.程序設(shè)計(jì)課程中強(qiáng)化計(jì)算思維訓(xùn)練的實(shí)踐探索[J]. 電化教育研究,2009(10):84-85.
[9]朱鳴華,趙銘偉,趙晶,等.計(jì)算機(jī)基礎(chǔ)教學(xué)中計(jì)算思維能力培養(yǎng)的探討[J].中國大學(xué)教學(xué),2012(3):33-35.