楊日璟(大連民族大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 大連 116605)
2006年美國(guó)卡內(nèi)基梅隆大學(xué)周以真教授首次提出了計(jì)算思維的概念:計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念求解問(wèn)題、設(shè)計(jì)系統(tǒng)和理解人類行為的科學(xué)方法[1]。2010 年11 月,陳國(guó)良院士第一次正式提出了將“計(jì)算思維能力培養(yǎng)”作為計(jì)算機(jī)基礎(chǔ)課程教學(xué)改革切入點(diǎn)的倡議[2]。2010 年7月,全國(guó)9所高等學(xué)校聯(lián)盟發(fā)表了聯(lián)合聲明,聲明的核心要點(diǎn)是必須正確認(rèn)識(shí)大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)的重要地位,把培養(yǎng)學(xué)生的“計(jì)算思維”能力作為計(jì)算機(jī)基礎(chǔ)教學(xué)的核心任務(wù)[3]。計(jì)算和計(jì)算思維是計(jì)算機(jī)基礎(chǔ)課程的基本理論和基本思維,科學(xué)家已經(jīng)將計(jì)算思維和理論思維、實(shí)驗(yàn)思維并列為人類三大科學(xué)思維[4]。計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)課程中許多知識(shí)點(diǎn)都為培養(yǎng)學(xué)生的計(jì)算思維能力提供了很好的案例。在教學(xué)過(guò)程中完善和應(yīng)用“計(jì)算思維”方法,將有助于計(jì)算機(jī)程序設(shè)計(jì)課程教學(xué)的發(fā)展與完善,也將有利于高校培養(yǎng)應(yīng)用性、復(fù)合型人才。本文針對(duì)非計(jì)算機(jī)專業(yè)程序設(shè)計(jì)基礎(chǔ)課程的教學(xué)現(xiàn)狀,探究了在教學(xué)過(guò)程中培養(yǎng)學(xué)生計(jì)算思維能力的可行性和方法。
非計(jì)算機(jī)專業(yè)學(xué)生的程序設(shè)計(jì)基礎(chǔ)課程一般都是多班一起授課,教師在理論課上講授理論知識(shí),按照教材講授程序設(shè)計(jì)的語(yǔ)法基礎(chǔ)、程序基本結(jié)構(gòu)、數(shù)組、過(guò)程、文件讀寫等知識(shí)點(diǎn),在上機(jī)實(shí)驗(yàn)課讓學(xué)生通過(guò)上機(jī)練習(xí)來(lái)鞏固理論課講授內(nèi)容。這種模式注重的是知識(shí)傳授,不僅缺乏趣味性,更缺乏應(yīng)用計(jì)算思維的培養(yǎng)和創(chuàng)新。在實(shí)際的教學(xué)過(guò)程中教學(xué)效果很不理想。
(1)灌輸式教學(xué)忽視計(jì)算思維能力培養(yǎng)。以教師為中心的灌輸式教學(xué),忽略了學(xué)生主體的作用。雖然能保證教學(xué)內(nèi)容的系統(tǒng)性和連貫性,但很容易陷入程序語(yǔ)言為中心的誤區(qū)。在教學(xué)中出現(xiàn)“重結(jié)果、輕過(guò)程”“重編碼、輕算法”的現(xiàn)象,忽視了對(duì)學(xué)生計(jì)算思維能力的培養(yǎng)。
(2)被動(dòng)學(xué)習(xí)阻礙計(jì)算思維能力培養(yǎng)。學(xué)生被動(dòng)地聽(tīng)和記憶,難以激發(fā)學(xué)生學(xué)習(xí)興趣,更難以體會(huì)到程序設(shè)計(jì)中問(wèn)題分析、邏輯推導(dǎo)、程序思維及構(gòu)造的方法。學(xué)生普遍反映課程內(nèi)容枯燥、難懂,不感興趣,學(xué)生學(xué)習(xí)主動(dòng)性差。不少學(xué)生對(duì)計(jì)算機(jī)理論知識(shí)儲(chǔ)備不夠,入門較慢。學(xué)習(xí)上不得要領(lǐng),在學(xué)習(xí)過(guò)程中叫苦不迭,對(duì)計(jì)算機(jī)的“思維方式”難以理解。
(3)脫離應(yīng)用限制計(jì)算思維能力培養(yǎng)。知識(shí)點(diǎn)聯(lián)系不夠緊密,缺乏對(duì)知識(shí)的綜合應(yīng)用。將學(xué)習(xí)重心放到對(duì)基礎(chǔ)語(yǔ)法的學(xué)習(xí)上,不注重總結(jié)問(wèn)題的求解過(guò)程。教材中的例題往往是為了說(shuō)明某個(gè)知識(shí)點(diǎn),而例題之間缺少聯(lián)系,缺少對(duì)知識(shí)點(diǎn)的整合。學(xué)生很難將所學(xué)到的知識(shí)點(diǎn)串聯(lián)起來(lái)并解決實(shí)際問(wèn)題。由于缺乏與后續(xù)專業(yè)課程學(xué)習(xí)的銜接,影響了許多學(xué)生學(xué)習(xí)計(jì)算機(jī)公共基礎(chǔ)課程的積極性,限制了計(jì)算思維能力培養(yǎng)。
高校非計(jì)算機(jī)專業(yè)計(jì)算機(jī)公共基礎(chǔ)課程近年來(lái)普遍采用三個(gè)層次的課程體系和教學(xué)模式,其中第二個(gè)層次就是計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)相關(guān)課程,是三個(gè)層次中比較重要的環(huán)節(jié)。在此環(huán)節(jié)針對(duì)不同專業(yè)類別設(shè)置知識(shí)模塊。大連民族大學(xué)非計(jì)算機(jī)專業(yè)學(xué)生計(jì)算機(jī)公共基礎(chǔ)課第二層次的課程設(shè)置見(jiàn)表1。
表1 大連民族大學(xué)計(jì)算機(jī)公共基礎(chǔ)課程設(shè)置
案例教學(xué)法的特點(diǎn)是“以案例任務(wù)為主線、學(xué)生為主體、教師為主導(dǎo)”,與傳統(tǒng)的“教師講、學(xué)生聽(tīng)”的教學(xué)模式相比,用案例作為任務(wù),形成以學(xué)生自主學(xué)習(xí)為主,研究性學(xué)習(xí)、探索性學(xué)習(xí)及合作學(xué)習(xí)互補(bǔ)的學(xué)習(xí)氛圍,可以讓學(xué)生準(zhǔn)確理解計(jì)算機(jī)處理問(wèn)題的思路和方法,培養(yǎng)計(jì)算思維能力。
從培養(yǎng)計(jì)算思維的角度出發(fā),按照問(wèn)題求解的步驟來(lái)重構(gòu)課程中的典型案例。例如循環(huán)是一種很重要的程序控制結(jié)構(gòu),能使學(xué)生很好地理解計(jì)算機(jī)解決問(wèn)題的特點(diǎn),也是學(xué)習(xí)的難點(diǎn)。講解循環(huán)結(jié)構(gòu)的案例,是對(duì)自然數(shù)1到10的求和,從求和引出“循環(huán)”的概念,學(xué)生在用 FOR循環(huán)求累加后,又提出求10的階乘的問(wèn)題,這樣可以根據(jù)階乘的定義,從累加運(yùn)算過(guò)渡到累乘運(yùn)算,問(wèn)題就迎刃而解了。這個(gè)案例的兩個(gè)問(wèn)題,既有用循環(huán)求解的共性,又有求累加與求階乘在設(shè)置循環(huán)變量初值時(shí)的區(qū)別,使學(xué)生體會(huì)到計(jì)算機(jī)編程必須嚴(yán)謹(jǐn)又可以靈活應(yīng)用。又如降序輸出全班50學(xué)生某課程的成績(jī),要求每一行輸出10個(gè)同學(xué)的成績(jī),并統(tǒng)計(jì)成績(jī)的最高分、最低分及平均分。這個(gè)案例包含了循環(huán)和數(shù)組的基本概念和應(yīng)用操作,同時(shí)強(qiáng)化了冒泡排序和選擇排序兩大排序操作。由問(wèn)題引入學(xué)習(xí)的知識(shí)點(diǎn),以興趣帶動(dòng)學(xué)生主動(dòng)學(xué)習(xí),將問(wèn)題求解提升到計(jì)算思維的高度使學(xué)生在求解實(shí)際問(wèn)題的過(guò)程中,能逐步地領(lǐng)會(huì)、理解計(jì)算思維的本質(zhì),并把這樣的思維方式和方法慢慢滲透到自己日常學(xué)習(xí)中。
案例的設(shè)計(jì)結(jié)合知識(shí)點(diǎn),但又不局限教學(xué)內(nèi)容的順序,從不同章節(jié)抽取知識(shí)點(diǎn)進(jìn)行重新整合。學(xué)生們對(duì)案例中的程序設(shè)計(jì)更有興趣,在程序結(jié)構(gòu)、數(shù)組等以前難以掌握的知識(shí)方面所花費(fèi)的時(shí)間要少得多,而且掌握得更加扎實(shí)。案例設(shè)計(jì)不僅要讓學(xué)生掌握編程的基本語(yǔ)法知識(shí),更為重要的是掌握算法,算法的推導(dǎo)和設(shè)計(jì)正是計(jì)算思維的具體體現(xiàn)。解決案例問(wèn)題,要有一些的知識(shí)擴(kuò)充,也要給學(xué)生推薦一些輔助學(xué)習(xí)的網(wǎng)絡(luò)資源,方便學(xué)生進(jìn)行自主學(xué)習(xí)。
案例驅(qū)動(dòng)任務(wù)的方法改變了以往“教師講,學(xué)生聽(tīng)”的教學(xué)模式。有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,對(duì)同一案例可以引導(dǎo)學(xué)生主動(dòng)地思考,嘗試多種解決方案,多角度地訓(xùn)練學(xué)生思維,逐步培養(yǎng)學(xué)生分析問(wèn)題、解決問(wèn)題的能力。可使學(xué)生既掌握基本知識(shí),又學(xué)會(huì)用知識(shí)來(lái)解決問(wèn)題,從而有效地培養(yǎng)了學(xué)生的計(jì)算思維,提高了計(jì)算機(jī)的應(yīng)用能力。
程序設(shè)計(jì)課程最后的落腳點(diǎn)是應(yīng)用,而上機(jī)實(shí)驗(yàn)是加深對(duì)程序設(shè)計(jì)理解并逐步培養(yǎng)“計(jì)算思維”的最基本途徑。通過(guò)實(shí)驗(yàn)課將計(jì)算思維訓(xùn)練應(yīng)用到問(wèn)題的分析與求解過(guò)程中。
非計(jì)算機(jī)專業(yè)學(xué)生的計(jì)算機(jī)基礎(chǔ)差別較大,在實(shí)驗(yàn)教學(xué)中采用分層次教學(xué)法和小組討論法。
(1)基礎(chǔ)層次主要是對(duì)基本理論的驗(yàn)證實(shí)驗(yàn),單知識(shí)點(diǎn)實(shí)驗(yàn),培養(yǎng)學(xué)生的操作能力。主要是針對(duì)計(jì)算機(jī)基礎(chǔ)較差的同學(xué),通過(guò)實(shí)驗(yàn),初步掌握計(jì)算思維方法。
(2)第二層次增加了應(yīng)用,將不同的知識(shí)點(diǎn)綜合應(yīng)用到實(shí)驗(yàn)題目中,培養(yǎng)學(xué)生的應(yīng)用能力。針對(duì)同一個(gè)實(shí)驗(yàn)任務(wù),鼓勵(lì)學(xué)生使用不同的方法實(shí)現(xiàn),可以培養(yǎng)學(xué)生計(jì)算思維的多樣性和靈活性。隨著學(xué)習(xí)的深入,要求學(xué)生總結(jié)比較不同方法,在總結(jié)過(guò)程中提高學(xué)生舉一反三的能力。
(3)第三層次是綜合設(shè)計(jì)性實(shí)驗(yàn)。鼓勵(lì)學(xué)生設(shè)計(jì)與專業(yè)結(jié)合的內(nèi)容,進(jìn)一步激發(fā)學(xué)生的創(chuàng)造力,培養(yǎng)學(xué)生的創(chuàng)新技能。在綜合性實(shí)驗(yàn)教學(xué)中強(qiáng)調(diào)算法的多樣性和解決問(wèn)題的復(fù)雜性,培養(yǎng)、激勵(lì)學(xué)生的創(chuàng)新意識(shí)、探索精神和問(wèn)題求解能力。
學(xué)生根據(jù)自己的情況自主選擇進(jìn)行實(shí)驗(yàn),充分體現(xiàn)學(xué)生的自主性,使不同基礎(chǔ)的學(xué)生都有所收獲。
在實(shí)驗(yàn)中采用分組討論學(xué)習(xí),學(xué)生在課下組成小組,以組為單位在討論中互相交流,比較處理問(wèn)題的不同方法,在討論過(guò)程中提高計(jì)算思維能力。分組學(xué)習(xí),可以使許多計(jì)算機(jī)基礎(chǔ)較差的同學(xué),快速地提高應(yīng)用能力。實(shí)驗(yàn)最后,教師會(huì)通過(guò)一些綜合應(yīng)用類的典型案例,引導(dǎo)同學(xué)們觀察、思考,用提問(wèn)、比較、總結(jié)歸納等多種手段,將零星、分散的知識(shí)點(diǎn)以及各知識(shí)點(diǎn)之間的聯(lián)系進(jìn)行總結(jié)歸納,最終達(dá)到靈活運(yùn)用的目的[5]。
在程序設(shè)計(jì)過(guò)程中,教師在尊重每位學(xué)生的個(gè)體差異的前提下,對(duì)于不同的學(xué)生要鼓勵(lì)其從不同角度認(rèn)識(shí)問(wèn)題,使用不同的方式描述算法,用不同方法求解問(wèn)題,同時(shí)給予適當(dāng)?shù)摹⒖茖W(xué)的評(píng)價(jià)[6]。
充分利用網(wǎng)絡(luò)教學(xué)平臺(tái)資源,計(jì)算機(jī)公共基礎(chǔ)網(wǎng)絡(luò)教學(xué)平臺(tái)具有教學(xué)視頻、網(wǎng)上答疑、網(wǎng)絡(luò)考試系統(tǒng)等功能,為學(xué)生自主學(xué)習(xí)提供了方便,是課堂學(xué)習(xí)的有效補(bǔ)充。
將案例的制作過(guò)程錄制成視頻文件,供學(xué)生課下自主學(xué)習(xí)使用;教師網(wǎng)上答疑,有效解決了公共基礎(chǔ)課程多班授課教師與學(xué)生溝通難的問(wèn)題;考試系統(tǒng),分階段的多次單元測(cè)試,可以使學(xué)生及時(shí)了解知識(shí)點(diǎn)的掌握情況,有效地督促學(xué)生及時(shí)復(fù)習(xí),減輕學(xué)生期末一次性考試負(fù)擔(dān),提高了學(xué)習(xí)效率。
在計(jì)算機(jī)程序設(shè)計(jì)課程的教學(xué)中逐步滲透計(jì)算思維思想,通過(guò)案例驅(qū)動(dòng)、分層次實(shí)驗(yàn)教學(xué)等多角度的方法在潛移默化中培養(yǎng)學(xué)生的計(jì)算思維能力,取得了良好的效果。學(xué)生的分析問(wèn)題和解決問(wèn)題的能力明顯提高,使他們養(yǎng)成新的思維方式,更好地應(yīng)用計(jì)算思維來(lái)解決問(wèn)題,在一定程度上可以提高學(xué)生的應(yīng)用能力和創(chuàng)新能力,為培養(yǎng)創(chuàng)新型復(fù)合型人才打下良好的基礎(chǔ)。
參考文獻(xiàn):
[1] 周以真.計(jì)算思維[J].中國(guó)計(jì)算機(jī)學(xué)會(huì)通訊,2007,3(11):77-79.
[2] 陳國(guó)良,董榮勝.計(jì)算思維與大學(xué)計(jì)算機(jī)基礎(chǔ) [J].中國(guó)大學(xué)教學(xué),2011(1):7-11.
[3] 何欽銘,陸漢權(quán),馮博琴.計(jì)算機(jī)基礎(chǔ)教學(xué)的核心任務(wù)是計(jì)算思維能力的培養(yǎng)[J].中國(guó)大學(xué)教學(xué),2010(9):5-9.
[4] 朱亞宗.論計(jì)算思維:計(jì)算思維的科學(xué)定位、基本原理及創(chuàng)新路徑[J].計(jì)算機(jī)科學(xué),2009,36(4):53-55.
[5] 羅瑞紅,劉柄松.案例教學(xué)法在VB程序設(shè)計(jì)課程教學(xué)中的應(yīng)用[J].科教文匯, 2014(8):78-79.
[6]臧勁松.培養(yǎng)學(xué)生計(jì)算思維的程序設(shè)計(jì)課程教學(xué)[J].計(jì)算機(jī)教育,2012(2):78-80.