摘要:在“卓越計(jì)劃”的背景下,針對(duì)石油相關(guān)專(zhuān)業(yè)C語(yǔ)言程序設(shè)計(jì)課程教學(xué)中存在的問(wèn)題,在探討課程教學(xué)主線(xiàn)的基礎(chǔ)上,從教學(xué)內(nèi)容、教學(xué)方法及教學(xué)手段等多個(gè)方面對(duì)課程改革的措施進(jìn)行詳細(xì)闡述,提出培養(yǎng)學(xué)生的計(jì)算思維、創(chuàng)新意識(shí)以及工程能力的方法。
關(guān)鍵詞:C語(yǔ)言程序設(shè)計(jì);卓越計(jì)劃;計(jì)算思維;教學(xué)實(shí)踐;創(chuàng)新;研究型;工程能力
0.引言
2010年我國(guó)教育部聯(lián)合其他有關(guān)部委,共同制定了“卓越計(jì)劃”的培養(yǎng)目標(biāo)及實(shí)施方案,其目的是加速我國(guó)由工程教育大國(guó)向工程教育強(qiáng)國(guó)的轉(zhuǎn)變。為貫徹落實(shí)“卓越計(jì)劃”及《國(guó)家中長(zhǎng)期教育改革和發(fā)展規(guī)劃綱要(2010-2020年)》的有關(guān)精神,培養(yǎng)學(xué)生創(chuàng)新意識(shí)和自主學(xué)習(xí)能力,中國(guó)石油大學(xué)(北京)從2010級(jí)開(kāi)始,在石油工程、地質(zhì)工程、化學(xué)工程等專(zhuān)業(yè)中新增了兩種重要的人才培養(yǎng)模式:創(chuàng)新班和卓越班。其目的是嘗試進(jìn)行研討式、交流式小班授課,通過(guò)大量的課堂互動(dòng),強(qiáng)化學(xué)生的實(shí)習(xí)、設(shè)計(jì)和實(shí)踐能力。C語(yǔ)言程序設(shè)計(jì)作為學(xué)校的一門(mén)重要公共基礎(chǔ)課,在石油專(zhuān)業(yè)的本科教學(xué)中占有重要地位。由于學(xué)生在學(xué)習(xí)該課程之前,缺乏嚴(yán)格的程序設(shè)計(jì)訓(xùn)練,傳統(tǒng)的教學(xué)模式也由于缺少有效的溝通而無(wú)法激發(fā)學(xué)生的學(xué)習(xí)興趣,導(dǎo)致學(xué)生的抽象思維能力和動(dòng)手實(shí)踐能力都出現(xiàn)一些問(wèn)題。為了適應(yīng)石油行業(yè)發(fā)展對(duì)高素質(zhì)人才多樣化的需求和貫徹研究型教學(xué)的要求,有必要針對(duì)創(chuàng)新班和卓越班學(xué)生的特點(diǎn),制訂出更加切實(shí)可行的研究型的C語(yǔ)言程序設(shè)計(jì)教學(xué)內(nèi)容和實(shí)踐方案。
1.課程教學(xué)存在的問(wèn)題
傳統(tǒng)的C語(yǔ)言程序設(shè)計(jì)教學(xué)存在以下問(wèn)題:
1)教育模式單一。
C語(yǔ)言概念多,應(yīng)用靈活,傳統(tǒng)的教學(xué)方法注重講解C語(yǔ)言的基本語(yǔ)法,教師所選編程實(shí)例大多用于語(yǔ)法規(guī)則的驗(yàn)證和說(shuō)明,學(xué)生很難將所掌握的理論知識(shí)應(yīng)用到實(shí)踐中。
2)缺乏計(jì)算思維。
石油專(zhuān)業(yè)學(xué)生對(duì)計(jì)算機(jī)課程的學(xué)習(xí)方法還不太適應(yīng)。由于學(xué)生編程的邏輯思維方法還沒(méi)有形成,很難正確理解計(jì)算機(jī)學(xué)科的基礎(chǔ)概念,更不要說(shuō)靈活運(yùn)用各種思想、方法和技術(shù)解決實(shí)際能源行業(yè)的問(wèn)題了。
3)師生之間缺乏實(shí)時(shí)溝通平臺(tái)與手段。
師生交流多局限在課堂上圍繞課程進(jìn)行,對(duì)學(xué)生在課后的學(xué)習(xí)和實(shí)踐缺乏有效指導(dǎo)。學(xué)生遇到問(wèn)題不能及時(shí)解決會(huì)嚴(yán)重影響學(xué)習(xí)進(jìn)度,甚至影響學(xué)習(xí)的積極性。
4)課堂教學(xué)與專(zhuān)業(yè)背景脫節(jié)。
石油行業(yè)各相關(guān)專(zhuān)業(yè)的教育對(duì)信息技術(shù)的要求越來(lái)越高,而行業(yè)內(nèi)不同專(zhuān)業(yè)之間對(duì)信息基礎(chǔ)教育的需求又存在著較大的差異。作為大學(xué)公共基礎(chǔ)課程的C語(yǔ)言程序設(shè)計(jì)是一門(mén)理論性和實(shí)踐性很強(qiáng)的課程,如何適應(yīng)石油行業(yè)內(nèi)各類(lèi)專(zhuān)業(yè)要求,做到與專(zhuān)業(yè)背景盡可能“無(wú)縫連接”,是亟待解決的特殊課題。
針對(duì)上述問(wèn)題,如何培養(yǎng)石油專(zhuān)業(yè)學(xué)生將計(jì)算機(jī)科學(xué)知識(shí)運(yùn)用到專(zhuān)業(yè)實(shí)踐中去?需要我們?cè)诮虒W(xué)中將理論與學(xué)生專(zhuān)業(yè)背景相融合,讓學(xué)生結(jié)合專(zhuān)業(yè)知識(shí)加深對(duì)語(yǔ)言功能的理解,使他們真正體會(huì)到該課程是為專(zhuān)業(yè)實(shí)踐服務(wù)的。由于計(jì)算機(jī)在石油科技中的應(yīng)用范圍十分廣泛,幾乎涉及石油科技領(lǐng)域的各個(gè)方面,作為石油專(zhuān)業(yè)本科生的C語(yǔ)言程序設(shè)計(jì)課程就必須涉及這些內(nèi)容。因此,在理論和實(shí)驗(yàn)課中如何聯(lián)系實(shí)際,激發(fā)石油專(zhuān)業(yè)學(xué)生的學(xué)習(xí)興趣,是教學(xué)改革的一個(gè)重點(diǎn)。同時(shí),如何培養(yǎng)學(xué)生的計(jì)算思維,使他們將這種思維有效地運(yùn)用在專(zhuān)業(yè)實(shí)踐中,也成為教學(xué)內(nèi)容改革的指南和研究重點(diǎn)。
2.確立C語(yǔ)言教學(xué)主線(xiàn)
C語(yǔ)言基礎(chǔ)是語(yǔ)法,學(xué)生只有掌握了必要的語(yǔ)法知識(shí),才能進(jìn)行后續(xù)算法的學(xué)習(xí)。面對(duì)繁雜的C語(yǔ)言語(yǔ)法知識(shí),教師如能將各章節(jié)的知識(shí)點(diǎn)串聯(lián)起來(lái),形成一個(gè)“教學(xué)主線(xiàn)”,再配合計(jì)算機(jī)的內(nèi)存變化,就可以幫助學(xué)生理解和記憶各知識(shí)點(diǎn)。因此,“教學(xué)主線(xiàn)”是綱,緊緊抓住“內(nèi)存變化”這個(gè)主要矛盾,就可以達(dá)到“綱舉目張”效果。
C語(yǔ)言的核心內(nèi)容有三個(gè):數(shù)組、指針和函數(shù)。因此,在教學(xué)中只要抓住“數(shù)組一函數(shù)一指針”這條主線(xiàn),通過(guò)示意圖描述數(shù)據(jù)在內(nèi)存中的存儲(chǔ)和變化,就可以將紛繁的知識(shí)點(diǎn)化簡(jiǎn)規(guī)約,從而形成清晰的知識(shí)脈絡(luò)。數(shù)組是具有相同數(shù)據(jù)類(lèi)型的變量的集合。函數(shù)在程序設(shè)計(jì)過(guò)程中的主要任務(wù)是可以分解成多個(gè)功能獨(dú)立的模塊來(lái)實(shí)現(xiàn),這體現(xiàn)了“分而治之”的思想。函數(shù)的參數(shù)可以是普通變量、數(shù)組名或指針變量。當(dāng)在函數(shù)間傳遞數(shù)字或字符的集合時(shí)可以采用數(shù)組名或指針變量作為函數(shù)參數(shù)進(jìn)行地址傳遞,這樣實(shí)參與形參組合形式可以表達(dá)為:
①實(shí)參(數(shù)組)——形參(數(shù)組);
②實(shí)參(數(shù)組)——形參(指針);
③實(shí)參(指針)——形參(數(shù)組);
④實(shí)參(指針)——形參(指針)。
通過(guò)編寫(xiě)經(jīng)典的交換數(shù)據(jù)函數(shù)Swap就可以將函數(shù)調(diào)用以及數(shù)組和指針變量的4種組合形式聯(lián)合起來(lái)。
C語(yǔ)言最大的特點(diǎn)是程序能夠直接對(duì)內(nèi)存地址進(jìn)行操作。而對(duì)內(nèi)存的操作主要是通過(guò)變量來(lái)實(shí)現(xiàn)的,變量代表了內(nèi)存中具有特定屬性的一個(gè)存儲(chǔ)單元,用來(lái)存放程序運(yùn)行期間的數(shù)據(jù),即變量的值。要正確推算到程序運(yùn)行的結(jié)果,就必須掌握程序運(yùn)行過(guò)程中內(nèi)存空間值的演變過(guò)程,即變量值的變化過(guò)程。為此,我們?cè)诮虒W(xué)中采用樣例程序(如圖1所示)結(jié)合變量?jī)?nèi)存空間分配(如表1所示)的方式講述變量在內(nèi)存中的變化狀態(tài),取得了較好的教學(xué)效果。
3.豐富教學(xué)方法與手段
德國(guó)教育學(xué)家第斯多惠曾說(shuō)過(guò):“教學(xué)的藝術(shù)不在于傳授本領(lǐng),而在于激勵(lì)、呼喚和鼓舞?!被凇白吭接?jì)劃”的學(xué)生創(chuàng)新意識(shí)和自主學(xué)習(xí)能力的培養(yǎng)需經(jīng)過(guò)一個(gè)長(zhǎng)期的訓(xùn)練過(guò)程。創(chuàng)新班和卓越班提供了一種探究式人才培養(yǎng)模式,其特點(diǎn)是促進(jìn)人才培養(yǎng)模式由以課本和課堂為中心轉(zhuǎn)向以學(xué)習(xí)和學(xué)生為中心。在教學(xué)過(guò)程中,教師除了講授基本知識(shí)和程序設(shè)計(jì)方法外,更要注重培養(yǎng)學(xué)生的計(jì)算思維。在教學(xué)中如何引導(dǎo)學(xué)生的學(xué)習(xí)興趣,實(shí)現(xiàn)由“學(xué)會(huì)”到“會(huì)學(xué)”的轉(zhuǎn)變,是創(chuàng)新班和卓越班教學(xué)改革的主要目的。為此,我們采取以下幾方面措施。
3.1注重啟發(fā)引導(dǎo)
創(chuàng)新班和卓越班的教學(xué)目標(biāo)應(yīng)從注重知識(shí)傳授轉(zhuǎn)到注重智能的培養(yǎng)上來(lái)。在講授具體的知識(shí)點(diǎn)時(shí),要注意加強(qiáng)前后知識(shí)的連貫性,對(duì)重點(diǎn)、難點(diǎn)問(wèn)題要舉一反三,從多角度、多側(cè)面去闡述,將知識(shí)點(diǎn)擴(kuò)展為知識(shí)面,擴(kuò)大學(xué)生的思維空間。在此過(guò)程中,計(jì)算思維的培養(yǎng)是核心問(wèn)題。通過(guò)多提問(wèn)、鼓勵(lì)一題多解等措施,啟發(fā)學(xué)生運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念去求解問(wèn)題、設(shè)計(jì)信息系統(tǒng),并在此基礎(chǔ)上促使他們了解信息技術(shù)在能源領(lǐng)域的廣泛應(yīng)用,為將來(lái)創(chuàng)新性地解決石油行業(yè)問(wèn)題奠定基礎(chǔ)。
3.2實(shí)行導(dǎo)師制
創(chuàng)新班和卓越班實(shí)行導(dǎo)師引導(dǎo)式培養(yǎng)方式,教師和學(xué)生實(shí)行雙向選擇,學(xué)生根據(jù)所在專(zhuān)業(yè)教師的研究方向和特點(diǎn)選擇相應(yīng)的指導(dǎo)教師,指導(dǎo)老師也可以根據(jù)學(xué)生的能力和素養(yǎng)指定所帶學(xué)生。指導(dǎo)教師按照“傳幫帶”的培養(yǎng)方式,提出典型問(wèn)題,讓學(xué)生進(jìn)行抽象、分析和歸納,培養(yǎng)思維方式,凝練專(zhuān)業(yè)問(wèn)題,提高掌握本學(xué)科前沿知識(shí)的能力,使其盡早進(jìn)入科研狀態(tài)。同時(shí),創(chuàng)新班實(shí)行小班上課模式,以利于學(xué)生和教師之間的良好互動(dòng)。
3.3采用榜樣示范教學(xué)法
在C語(yǔ)言程序設(shè)計(jì)課程中,榜樣示范教學(xué)法是提高學(xué)生分析和解決問(wèn)題能力的有效辦法。大學(xué)生的行為習(xí)慣多源于模仿他人,由于處在確立“事業(yè)觀”的關(guān)鍵時(shí)期,榜樣的力量對(duì)他們尤為重要。為此,我們邀請(qǐng)企業(yè)資深的工程師、校軟件協(xié)會(huì)的優(yōu)秀學(xué)生以及中國(guó)石油大學(xué)(北京)畢業(yè)的學(xué)長(zhǎng)為學(xué)生做講座,探討C語(yǔ)言在石油領(lǐng)域的應(yīng)用方向,以及企業(yè)需求和學(xué)校教學(xué)在C語(yǔ)言上的差異,為學(xué)生進(jìn)一步學(xué)習(xí)指明了目標(biāo)。如我院與中關(guān)村信息產(chǎn)業(yè)園中的許多公司建立良好的合作關(guān)系,就程序代碼編寫(xiě)規(guī)范以及C語(yǔ)言實(shí)訓(xùn)等內(nèi)容進(jìn)行了廣泛的交流合作。從分析實(shí)際應(yīng)用問(wèn)題開(kāi)始,到對(duì)問(wèn)題的解決進(jìn)行整體規(guī)劃,在需求分析、系統(tǒng)設(shè)計(jì)到系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測(cè)試等多個(gè)方面,鍛煉學(xué)生實(shí)際動(dòng)手能力。在教學(xué)中融入軟件工程思想,使學(xué)生在掌握C語(yǔ)言的基本語(yǔ)法知識(shí)的同時(shí),更深入理解程序設(shè)計(jì)的最終目的是解決實(shí)際應(yīng)用問(wèn)題。
3.4面向ACM程序大賽,構(gòu)建研究型、小組討論的學(xué)習(xí)模式
為了能夠及時(shí)、全面地關(guān)注到每位學(xué)生的學(xué)習(xí)狀態(tài),充分調(diào)動(dòng)學(xué)生的積極性,我們采取分組方式進(jìn)行教學(xué)控制和管理。4名學(xué)生構(gòu)成1組,每組設(shè)組長(zhǎng)1名,組長(zhǎng)由組員輪流擔(dān)任,每人任期4周。老師每周抽出固定時(shí)間對(duì)組長(zhǎng)進(jìn)行培訓(xùn),讓他們做一些ACM程序大賽訓(xùn)練中難度較高、與實(shí)際生活接近的題目,并加以輔導(dǎo),引導(dǎo)他們掌握良好的編程思想,選拔其中的優(yōu)秀組參加ACM程序大賽。在課堂研討和實(shí)踐課時(shí)間,由組長(zhǎng)全權(quán)負(fù)責(zé)本小組的學(xué)習(xí)探究,這有利于培養(yǎng)學(xué)生的組織領(lǐng)導(dǎo)才能以及團(tuán)結(jié)協(xié)作精神。這種變被動(dòng)接受為“自主研究”型的學(xué)習(xí)模式,滿(mǎn)足了學(xué)生學(xué)習(xí)方式的個(gè)性化。
3.5實(shí)施項(xiàng)目驅(qū)動(dòng)教學(xué)法
為提升學(xué)生運(yùn)用計(jì)算思維處理專(zhuān)業(yè)問(wèn)題的創(chuàng)新綜合能力,在實(shí)踐教學(xué)環(huán)節(jié),我們采用結(jié)合學(xué)生專(zhuān)業(yè)的項(xiàng)目驅(qū)動(dòng)模式,根據(jù)學(xué)生具體專(zhuān)業(yè)設(shè)置選取適當(dāng)?shù)捻?xiàng)目,從編寫(xiě)簡(jiǎn)單的小程序逐步過(guò)渡到解決一定難度的實(shí)際問(wèn)題上。為了最大限度地涉及專(zhuān)業(yè)內(nèi)容,我們?cè)趯?shí)驗(yàn)指導(dǎo)書(shū)中簡(jiǎn)要介紹了常用石油儀器的實(shí)際采集數(shù)據(jù)格式,對(duì)石油數(shù)據(jù)處理方法應(yīng)用進(jìn)行一定深度的展開(kāi),并在具體數(shù)據(jù)以及數(shù)據(jù)之間的關(guān)系上進(jìn)行廣度的拓展。同時(shí),對(duì)石油科技中用到的計(jì)算模型進(jìn)行了分類(lèi)歸納,引導(dǎo)學(xué)生將同類(lèi)問(wèn)題放在一起進(jìn)行分析比較。每類(lèi)模型充分體現(xiàn)了計(jì)算思維的思想并經(jīng)過(guò)有限次操作就能夠完成,有利于提高學(xué)生實(shí)際處理問(wèn)題的能力,培養(yǎng)其敏銳的思維能力。
4.改革教學(xué)條件與環(huán)境
4.1融合Prezi與FreeMind的教學(xué)方式
多種教學(xué)手段相互補(bǔ)充,適時(shí)融入特點(diǎn)突出的教學(xué)手段。多媒體教學(xué)方式的特點(diǎn)是信息量大,圖文直觀,便于算法的動(dòng)態(tài)演示。目前,比較主流的輔助手段是運(yùn)用Powerpoint制作課件,但Powerpoint不能很好地體現(xiàn)人的思維過(guò)程,學(xué)生在單頁(yè)中得到的只是具體的信息,想要理清課件的基本思路,需要繁瑣的翻頁(yè)操作,不利于學(xué)生對(duì)教學(xué)內(nèi)容的宏觀理解和整體把握。為此我們制作了基于Prezi的教學(xué)輔助課件,在一頁(yè)當(dāng)中呈現(xiàn)全部的授課內(nèi)容以及授課的基本思路,以一種符合人類(lèi)思維習(xí)慣的呈現(xiàn)方式與學(xué)生進(jìn)行交互。同時(shí),把C語(yǔ)言程序設(shè)計(jì)課程的邏輯思維圖中各個(gè)知識(shí)環(huán)節(jié)按照概念導(dǎo)圖的方式進(jìn)行組織、關(guān)聯(lián)和鋪展,由此形成了基于FreeMind的思維導(dǎo)圖。它包括一個(gè)課程邏輯思維圖和多個(gè)章節(jié)知識(shí)結(jié)點(diǎn)的邏輯思維圖,可以讓整張思維導(dǎo)圖“活”起來(lái),隨著授課過(guò)程可以任意地伸展每一個(gè)關(guān)鍵分支。
4.2常規(guī)教學(xué)與“教學(xué)網(wǎng)站+飛信”互動(dòng)教學(xué)相結(jié)合
以常規(guī)教學(xué)滿(mǎn)足大多數(shù)學(xué)生的學(xué)習(xí)需求,在保留傳統(tǒng)的教師與學(xué)生面對(duì)面答疑方式的基礎(chǔ)上,以“教學(xué)網(wǎng)站+飛信”交流平臺(tái)作為課堂教學(xué)和實(shí)驗(yàn)教學(xué)的有益補(bǔ)充。平臺(tái)支持在線(xiàn)答疑方式,使答疑不受時(shí)間和空間的限制,很好地支撐了學(xué)生的自主學(xué)習(xí)。
4.3搭建基于Sloodle的C語(yǔ)言綜合網(wǎng)絡(luò)管理平臺(tái)
Sloodle平臺(tái)整合了多用戶(hù)分布式虛擬學(xué)習(xí)環(huán)境Second Life和Moodle學(xué)習(xí)管理系統(tǒng),為學(xué)生和教師提供了逼真、直觀、沉浸式的學(xué)習(xí)環(huán)境。將基于Sloodle的部分虛擬現(xiàn)實(shí)技術(shù)應(yīng)用到C語(yǔ)言程序設(shè)計(jì)課程的教學(xué)活動(dòng)中,可豐富教學(xué)環(huán)境,突破傳統(tǒng)教科書(shū)和某些硬件設(shè)施短缺的限制,多角度地展示教學(xué)內(nèi)容。如在中海油工程專(zhuān)業(yè),教師為了展示海上石油鉆井平臺(tái)的結(jié)構(gòu)和構(gòu)造,不可能將真實(shí)的整套井架系統(tǒng)拆開(kāi)來(lái)講解和示范,但是基于Sloodle平臺(tái),教師用3D虛擬世界展示實(shí)物配件,將實(shí)際操作中的海上平臺(tái)控制模塊映射到虛擬現(xiàn)實(shí)世界里。為了完善Sloodle平臺(tái)的Moodle學(xué)習(xí)管理部分,使之具有在線(xiàn)程序測(cè)試評(píng)價(jià)功能,我們開(kāi)發(fā)了程序在線(xiàn)評(píng)測(cè)插件,除了用于ACM大賽以及學(xué)?;?qū)W院舉辦的程序設(shè)計(jì)競(jìng)賽外,還具有程序教學(xué)輔助功能。教師通過(guò)查看學(xué)生提交的代碼長(zhǎng)度、執(zhí)行時(shí)間、占用內(nèi)存值和提交時(shí)間等信息,能快速地發(fā)現(xiàn)代碼拷貝現(xiàn)象。同時(shí)通過(guò)觀察學(xué)生提交的正確的和錯(cuò)誤的代碼,總結(jié)出一般性問(wèn)題,在課堂上有針對(duì)性地講解,以達(dá)到更好的教學(xué)效果。該平臺(tái)經(jīng)過(guò)進(jìn)一步完善,還將被引入到C語(yǔ)言的后續(xù)課程,如高級(jí)語(yǔ)言程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、算法分析等實(shí)踐教學(xué)中。
5.結(jié)語(yǔ)
石油行業(yè)“卓越計(jì)劃”是高等工程教育滿(mǎn)足國(guó)家能源戰(zhàn)略需求,強(qiáng)化學(xué)生主動(dòng)服務(wù)石油企業(yè)思想,完善校企聯(lián)合培養(yǎng)人才機(jī)制的新型教改課題。我們通過(guò)改革教學(xué)方法與手段、改善教學(xué)條件來(lái)培養(yǎng)石油院校學(xué)生的計(jì)算思維和工程意識(shí),教學(xué)實(shí)踐表明,這些改革措施有利于學(xué)生深入了解和掌握與本專(zhuān)業(yè)相關(guān)的計(jì)算機(jī)知識(shí)和技能,大大激發(fā)了他們的求知欲。當(dāng)然,作為新生事物的“卓越計(jì)劃”的實(shí)施仍然任重道遠(yuǎn),還需要不斷完善并建立科學(xué)的實(shí)踐教學(xué)體系。我們將繼續(xù)在C語(yǔ)言程序設(shè)計(jì)的教學(xué)改革上拓展新的領(lǐng)域,在能源行業(yè)尋求新的信息化切入點(diǎn),將課程的理論教學(xué)和工程實(shí)際應(yīng)用更協(xié)調(diào)、更緊密地結(jié)合起來(lái),培養(yǎng)出更多適應(yīng)信息化社會(huì)的能源類(lèi)復(fù)合型、應(yīng)用型人才。
(編輯:彭遠(yuǎn)紅)