首頁 > 公文范文 > c語言課程設(shè)計(jì)論文
時(shí)間:2022-05-06 03:23:42
序論:寫作是一種深度的自我表達(dá)。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內(nèi)心深處的真相,好投稿為您帶來了一篇c語言課程設(shè)計(jì)論文范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創(chuàng)作。
[摘要]本文通過對(duì)C語言課程設(shè)計(jì)中的教學(xué)方法、考核手段的介紹,探討了在實(shí)踐中逐步提高學(xué)生軟件開發(fā)能力的方法。
[關(guān)鍵詞]課程設(shè)計(jì) 教學(xué)方法 考核手段 能力培養(yǎng)
一、引言
近年來,各高校越來越重視對(duì)學(xué)生實(shí)踐能力的培養(yǎng),各類課程設(shè)計(jì)在教學(xué)中所占的比重明顯增加。對(duì)于計(jì)算機(jī)系的學(xué)生,尤其是以培養(yǎng)應(yīng)用型人才為目標(biāo)的學(xué)生,開設(shè)各類課程設(shè)計(jì)課就顯得尤為重要。
本文以C語言課程設(shè)計(jì)為例,介紹了在實(shí)際教學(xué)中所采用的教學(xué)計(jì)劃、教學(xué)方法以及考核手段,通過對(duì)各個(gè)教學(xué)環(huán)節(jié)的分析和總結(jié),探討了如何在實(shí)踐中培養(yǎng)學(xué)生的軟件開發(fā)能力的方法。
二、C語言課程設(shè)計(jì)教學(xué)計(jì)劃
C語言技術(shù)是計(jì)算機(jī)最重要的應(yīng)用領(lǐng)域之一,也是發(fā)展較快的領(lǐng)域之一。其應(yīng)用早已滲透到各個(gè)行業(yè),C語言系統(tǒng)的開發(fā)、管理與維護(hù)是計(jì)算機(jī)專業(yè)人員必須要掌握的基本技能。因此在完成了理論教學(xué)之后,后續(xù)的C語言課程設(shè)計(jì)的安排是很關(guān)鍵的。
我們根據(jù)學(xué)生的實(shí)際情況,制定了相應(yīng)的教學(xué)計(jì)劃。要求選修C語言課程設(shè)計(jì)的同學(xué)必須先修C語言原理,具有程序設(shè)計(jì)的基礎(chǔ)。課程的主要內(nèi)容包括C語言設(shè)計(jì)概述、需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、C語言的物理設(shè)計(jì)、C語言的實(shí)施和C語言系統(tǒng)的管理維護(hù)。本課程以實(shí)踐為主,教學(xué)目標(biāo)是使學(xué)生能獨(dú)立設(shè)計(jì)C語言應(yīng)用系統(tǒng),掌握C語言設(shè)計(jì)的過程和方法。根據(jù)本課程的特點(diǎn),充分重視上機(jī)實(shí)踐的環(huán)節(jié),課程在機(jī)房上,有利于學(xué)生學(xué)習(xí)。
本課程安排在一個(gè)學(xué)期內(nèi),教學(xué)周數(shù)為18周,每周6學(xué)時(shí)。每周具體內(nèi)容安排如表1。
三、各階段教學(xué)方法
由于各階段的任務(wù)不同,要求也不相同,因此分階段采用不同的教學(xué)方法,以一個(gè)學(xué)生熟悉的、容易理解的C語言項(xiàng)目開發(fā)過程為主線,貫穿整個(gè)教學(xué)過程,將相對(duì)枯燥的理論知識(shí)與實(shí)踐聯(lián)系起來。
題目選取階段是C語言課程設(shè)計(jì)的初始階段,也是決定能否達(dá)到教學(xué)目標(biāo)的關(guān)鍵性階段。如果題目選取得太大、太難,或者是學(xué)生不熟悉、很難接觸到的領(lǐng)域,做起來太困難,會(huì)影響學(xué)生的積極性,勢必會(huì)影響到后期的學(xué)習(xí)效果。而題目太簡單,又達(dá)不到教學(xué)標(biāo)準(zhǔn)。因此在本階段,采取教師提供參考題目,學(xué)生自主選擇的方法。教師根據(jù)開題報(bào)告整理出小組題目以及成員,并簡要分析選題的難易程度。在第二周的開題討論上讓每小組派代表進(jìn)行發(fā)言,大家分析討論題目的可行性,對(duì)于選題不合理的,重新修改。這階段可以充分調(diào)動(dòng)學(xué)生的積極性,活躍大家的思維,實(shí)際教學(xué)效果良好,很多學(xué)生的選題都具有現(xiàn)實(shí)應(yīng)用意義。
題目確定完之后,就要進(jìn)行需求分析。很多學(xué)生認(rèn)識(shí)不到這部分的重要性,選定題目后就想開始代碼的編寫工作,往往做了一半就進(jìn)行不下去。因此教師在課堂上要通過實(shí)例充分講解需求的分析重要性,講解具體的需求分析方法,使學(xué)生理解需求分析是整個(gè)設(shè)計(jì)過程的基礎(chǔ),同時(shí)掌握基本的需求分析技能。在需求分析階段,要盡可能收集課題的完備需求,可以利用不同小組互相模擬實(shí)際用戶的形式,增加學(xué)生的交流能力和開發(fā)興趣。在需求分析階段,要完成系統(tǒng)的數(shù)據(jù)流圖和數(shù)據(jù)字典。高質(zhì)量的完成需求分析工作可以鞏固學(xué)生在理論課上學(xué)到的數(shù)據(jù)流圖、數(shù)據(jù)字典等基礎(chǔ)理論知識(shí),并提高學(xué)生的歸納總結(jié)能力。
確定用戶需求后,進(jìn)入系統(tǒng)設(shè)計(jì)階段。系統(tǒng)設(shè)計(jì)階段要完成應(yīng)用系統(tǒng)的設(shè)計(jì)和C語言設(shè)計(jì)。應(yīng)用系統(tǒng)的設(shè)計(jì)要完成課題應(yīng)用軟件的架構(gòu)設(shè)計(jì)和具體功能模塊的劃分。C語言設(shè)計(jì)要結(jié)合應(yīng)用系統(tǒng)的設(shè)計(jì),逐步完成C語言的概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和物理設(shè)計(jì)。概念結(jié)構(gòu)設(shè)計(jì)階段是整個(gè)C語言設(shè)計(jì)的關(guān)鍵,該階段通過對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型;邏輯結(jié)構(gòu)設(shè)計(jì)階段要將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化;物理設(shè)計(jì)階段要為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)。C語言設(shè)計(jì)不但可以加深學(xué)生對(duì)ER圖等理論知識(shí)的理解,還有助于提高學(xué)生的軟件系統(tǒng)設(shè)計(jì)能力。
系統(tǒng)實(shí)現(xiàn)階段,教師對(duì)采用的教學(xué)案例代碼進(jìn)行演示,針對(duì)不同的程序設(shè)計(jì)語言對(duì)C語言的連接部分進(jìn)行講解,并給出相應(yīng)的示例代碼。此階段主要是學(xué)生動(dòng)手編寫代碼,完成系統(tǒng)功能。要指導(dǎo)學(xué)生編寫高質(zhì)量的代碼,包括變量的命名方法、代碼的書寫規(guī)則、代碼的注釋規(guī)則等。這階段教師可采用啟發(fā)式教學(xué),對(duì)于學(xué)生在設(shè)計(jì)中遇到的問題,要引導(dǎo)他們學(xué)會(huì)查找資料,自己思考解決。
系統(tǒng)測試階段,包括單元測試和集成測試。要指導(dǎo)學(xué)生進(jìn)行測試用例的編寫,掌握正確的測試方法。對(duì)于C語言系統(tǒng),還要進(jìn)行C語言的性能測試和容量測試。通過系統(tǒng)測試,使學(xué)生掌握正確的測試方法,有效提高軟件的質(zhì)量。
四、考核方式
教師在每個(gè)階段都會(huì)進(jìn)行檢查,對(duì)完成情況進(jìn)行記錄。開題階段,要求學(xué)生以小組為單位,完成開題報(bào)告,并確定選題是否合理。在需求分析階段,要求每組上交需求分析。在接下來的系統(tǒng)設(shè)計(jì)、實(shí)現(xiàn)及測試階段,要求學(xué)生詳細(xì)記錄設(shè)計(jì)思想、設(shè)計(jì)方法、實(shí)現(xiàn)過程及測試結(jié)果,整理出完整的課程設(shè)計(jì)報(bào)告書。最后由教師綜合考慮以下幾方面的因素,給出總評(píng)成績,包括文檔的完成情況、開發(fā)環(huán)境的選取、系統(tǒng)功能實(shí)現(xiàn)情況、用戶界面的設(shè)計(jì)以及現(xiàn)場演示答辯的效果。通過以上方式,較綜合、客觀地評(píng)價(jià)了學(xué)生的文字及語言的表達(dá)能力以及系統(tǒng)設(shè)計(jì)、程序開發(fā)的能力。
五、結(jié)束語
教學(xué)實(shí)踐表明,這種形式的C語言課程設(shè)計(jì),可以使學(xué)生有效地鞏固對(duì)基礎(chǔ)理論知識(shí)的掌握,可以使學(xué)生系統(tǒng)地了解軟件開發(fā)流程,提高學(xué)生的軟件工程化開發(fā)能力,增強(qiáng)學(xué)生的就業(yè)競爭力,并且可以建立學(xué)生的團(tuán)隊(duì)意識(shí),提高學(xué)生的交流和協(xié)作能力。
回想學(xué)習(xí)C語言的過程中,既有快樂又有煩惱。
從領(lǐng)到書的那一刻,我就很郁悶,《C語言程序設(shè)計(jì)》到底事學(xué)什么的,有什么用。剛開始上課時(shí),還在迷茫這門課程是用來做什么的。不過,這些感受都是在對(duì)這門課程不了解的情況下產(chǎn)生的。后來慢慢的接觸多了,聽老師講的多了,了解多了,漸漸的產(chǎn)生了興趣。尤其是學(xué)到語句和函數(shù)時(shí),上機(jī)操作程序,經(jīng)過編譯,調(diào)試和運(yùn)行后,出現(xiàn)界面,當(dāng)時(shí)覺得很好奇,想真正的學(xué)好這門課程。通過半個(gè)學(xué)期的學(xué)習(xí),我掌握了基本知識(shí)。
下學(xué)期開始時(shí),被通知要進(jìn)行三周的課程設(shè)計(jì)。當(dāng)時(shí)有點(diǎn)懵,感覺學(xué)的東西很少,很零散,不知該怎么練到一起,就要課程設(shè)計(jì),是不是太難為我們了。
第一天基本上都是在看書,把基本知識(shí)再熟悉一邊。到了下午的時(shí)候,老師發(fā)過來三道練習(xí)題,從這幾道練習(xí)題上我得到了不少啟發(fā),然后我們組把整個(gè)程序的思路理清了,開始著手寫程序。
第一周結(jié)束的時(shí)候,我感覺自己收獲挺大的,從一開始的迷茫,不知道從何下手到把程序中的幾個(gè)模塊編寫出來,心里挺開心的。但是,到了第二周,我們由不得不再次陷入困境。在整個(gè)程序的編寫過程中。最難的就是修改和刪除這兩個(gè)模塊,這也是我們第二周要解決的重點(diǎn)問題。
開始編寫修改和刪除時(shí),很頭疼,去向其他人尋求幫助,在別人的幫助和提示下,我編完了修改程序,但編譯時(shí)老出錯(cuò),修改后的內(nèi)容將文本內(nèi)的信息全部覆蓋了。困難之時(shí),我們組的其他人,幫助了我,完成了修改和刪除。這樣的話,整個(gè)程序基本上全部完成了,就剩下完善工作了。我們組寫了兩個(gè)程序,最后,兩個(gè)程序相互組合,互補(bǔ),大功告成
雖然設(shè)計(jì)時(shí)完成了,但是我覺得其中還是由一些不足之處:
1.警告句。程序中缺少一些警告句,例如:“是否真的刪除(y/n)?”。
2.重名的情況。由于考慮的不周全,沒有設(shè)計(jì)遇到重名的情況該怎么處理。
3.選擇單一。我們?cè)O(shè)計(jì)的程序中,只設(shè)計(jì)了按名字選擇,進(jìn)行操作,忽略了重名的情況。
整個(gè)程序完成了,還有很多不完善的地方,希望自己以后辦事的時(shí)候要認(rèn)真,仔細(xì),考慮周全。
短短的三周課程設(shè)計(jì)結(jié)束了,但是這段時(shí)間里,我又學(xué)到了更多C知識(shí),如:對(duì)象數(shù)組,string類,文件流等,同時(shí)我也被提醒以后辦事的時(shí)候要認(rèn)真,仔細(xì),考慮周全。,也看到了團(tuán)隊(duì)精神和互幫互助的重要性。這一點(diǎn)會(huì)讓我終生受益。通過三周的課程設(shè)計(jì),我覺得自己肚子里的墨水多了,收獲也挺大的,這三周過的挺充實(shí)!
1合理組織教學(xué)內(nèi)容
我校C語言教研組在指定教學(xué)計(jì)劃、教學(xué)大綱時(shí),明確了教學(xué)目標(biāo)是“通過講授C語言的特點(diǎn)以及各種語句和基本函數(shù)的使用,使學(xué)生學(xué)會(huì)基本的C語言程序的編寫、調(diào)試等操作,領(lǐng)會(huì)結(jié)構(gòu)化程序設(shè)計(jì)的內(nèi)涵,訓(xùn)練程序設(shè)計(jì)的基本思想和方法,為今后開發(fā)軟件打下基礎(chǔ),為學(xué)習(xí)后續(xù)課程(如數(shù)據(jù)結(jié)構(gòu))作好準(zhǔn)備”。不僅要求學(xué)生學(xué)習(xí)理論,還必須能較熟練地上機(jī)操作,有較強(qiáng)的動(dòng)手能力。作為工科專業(yè)接觸的第一門工具語言,最能反映理論與實(shí)踐的相結(jié)合。本課程所選用的教材在內(nèi)容組織上,雖然依邏輯思維方式進(jìn)行了歸類,但難點(diǎn)還是較為集中,跨度大;概念講得多,分析少;語言深硬,不夠形象,較難理解。針對(duì)該問題,C語言教研組對(duì)教學(xué)內(nèi)容重新進(jìn)行了規(guī)劃。第一,適當(dāng)壓縮部分難度較大,但實(shí)用性不強(qiáng)的內(nèi)容,如:文件指針。第二,擴(kuò)充部分難度較大且十分重要的內(nèi)容,如:傳值與傳地址的對(duì)比。第三,充分利用互聯(lián)網(wǎng)資源,總結(jié)歸類相關(guān)知識(shí)點(diǎn),如:可以將運(yùn)算符優(yōu)先級(jí)總結(jié)為朗朗上口的七字口訣:單算關(guān)邏條賦逗。第四、將全國計(jì)算機(jī)二級(jí)C語言等級(jí)考試真題融入理論和實(shí)踐教學(xué)中。采用上述手段之后,明顯發(fā)現(xiàn)學(xué)生對(duì)學(xué)好C語言的信心增加許多,學(xué)習(xí)積極性也就隨之得到了提高。
2靈活使用教學(xué)方法
由于C語言程序設(shè)計(jì)是學(xué)生接觸到的第一門語言工具類課程,難度大、學(xué)生不易接受,為此我校C語言全體任課教師進(jìn)行集體備課,積極與學(xué)生保持互動(dòng)溝通,隨時(shí)根據(jù)大多數(shù)學(xué)生實(shí)際接受情況適當(dāng)調(diào)整教學(xué)計(jì)劃,靈活使用教學(xué)方法,如下所示:在理論課上,采取的是激發(fā)學(xué)生學(xué)習(xí)動(dòng)機(jī)的教學(xué)方法。在課堂上,要充分認(rèn)識(shí)到學(xué)生是主題,教師主要是起引導(dǎo)作用,引導(dǎo)學(xué)生自發(fā)學(xué)習(xí)、自主思考。因此,需要改變以往“填鴨式”教學(xué)方法,充分調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性。為此,在每次上課之前,都需要做好充分的準(zhǔn)備,精心的設(shè)計(jì)好教學(xué)案例,這些案例最好能夠“看得見,摸得著,和生活密切相關(guān)”。例如,講到子函數(shù)時(shí),在做課堂引入的時(shí)候,可以先給學(xué)生們演示一個(gè)五子棋的程序,讓學(xué)生直觀的了解到每個(gè)C語言程序都是由一個(gè)main函數(shù)和若干個(gè)子函數(shù)構(gòu)成。在上機(jī)課上,采取的是分組討論式的教學(xué)方法,將所有同學(xué)分成若干個(gè)小組,沒個(gè)小組設(shè)置一個(gè)組長,所安排的每個(gè)組長都必須具備兩個(gè)條件:掌握VC6.“0斷點(diǎn)”調(diào)試方法,理論知識(shí)扎實(shí)。我認(rèn)為上機(jī)課主要是鍛煉代碼的編寫、調(diào)試能力,所以應(yīng)該采取討論為主、講授為輔的方式。
3充分利用教學(xué)手段
在教學(xué)過程中,運(yùn)用多媒體技術(shù)輔助教學(xué),有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,能發(fā)展學(xué)生的主體能力;同時(shí)由于多媒體信息量大,也能夠優(yōu)化教學(xué)過程。第一、依托利用Claroline開源平臺(tái)建立了C語言網(wǎng)絡(luò)課程,詳見南京理工大學(xué)泰州科技學(xué)院網(wǎng)絡(luò)教學(xué)平臺(tái),設(shè)置有課程簡介、課程資料、課程計(jì)劃、學(xué)習(xí)討論等模塊,為學(xué)生提供了“第二課堂”,可以很好的彌補(bǔ)課堂教學(xué)的不足。第二,利用QQ、微信等即時(shí)通訊軟件進(jìn)行多渠道答疑,增強(qiáng)師生之前的溝通與交流。第三,開設(shè)網(wǎng)絡(luò)教學(xué)博客,對(duì)日常學(xué)生反饋較多的問題予以解答。
4結(jié)束語
作為一名C語言課程的教師,對(duì)教學(xué)模式的探索與研究是永無止境的,在今后的教學(xué)過程中,一定要繼續(xù)關(guān)注“C語言課程設(shè)計(jì)”的基本概念和程序設(shè)計(jì)方法,讓學(xué)生掌握分析問題、解決問題的能力,還需要通過加強(qiáng)上機(jī)環(huán)節(jié)來增強(qiáng)學(xué)生的動(dòng)手能力。只有不斷的探索行之有效的教學(xué)方法,吸取前人的教學(xué)經(jīng)驗(yàn)與教訓(xùn),才能在今后的教學(xué)工作中不斷突破自我,邁入新的臺(tái)階。
作者:譚立興 單位:南京理工大學(xué)泰州科技學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系
1課程設(shè)計(jì)平臺(tái)的改革
為了激發(fā)學(xué)生的興趣,可以采用Funcode平臺(tái)進(jìn)行課程設(shè)計(jì)。Funcode平臺(tái)是一款基于游戲設(shè)計(jì)和動(dòng)畫界面的C\C++\Java綜合實(shí)驗(yàn)教學(xué)平臺(tái),該平臺(tái)以游戲設(shè)計(jì)為“噱頭”,吸引學(xué)生的學(xué)習(xí)興趣,雖然如此,該平臺(tái)通過精選大量的游戲案例,還是很好地將程序設(shè)計(jì)知識(shí)點(diǎn)和游戲設(shè)計(jì)緊密地結(jié)合起來,始終緊扣C語言知識(shí)點(diǎn),為C語言課程設(shè)計(jì)教學(xué)提供了一個(gè)很好的工具。
1.1圖形方式的游戲界面編輯Funcode平臺(tái)采用圖形界面方式的游戲編輯環(huán)境,直觀、美觀、簡潔易用。圖1所示為正在設(shè)計(jì)中的游戲,左側(cè)矩形框中為最終運(yùn)行時(shí)可見的游戲界面,可以從右側(cè)中的“魚”(Funcode中稱為“精靈”,任何類似的圖片都是精靈,不同的精靈以精靈名區(qū)分)中任意拖拽一條“魚”到左側(cè)矩形框中,即可在游戲界面中增加一條魚。
1.2提供功能函數(shù),屏蔽對(duì)圖形的復(fù)雜處理Funcode平臺(tái)提供了大量功能函數(shù),屏蔽對(duì)圖形對(duì)象的復(fù)雜處理,使學(xué)生能夠?qū)W⒂诔绦蛟O(shè)計(jì)和游戲邏輯功能的實(shí)現(xiàn)。例如:功能函數(shù)voiddSetSpriteLinearVelocityX(constchar*szName,constfloatfVelX)可以使精靈以某一速度水平運(yùn)動(dòng)。讓圖1左側(cè)中的魚(假設(shè)該魚命名為fish0)游動(dòng)起來,學(xué)生只需用一條函數(shù)調(diào)用語句dSetSpriteLinearVeloctyX(“fish0”,30)即可實(shí)現(xiàn);亦可通過調(diào)用功能函數(shù)dSetSpriteLinearVelocity(“fish0”,30,30)使魚水平方向和垂直方向分速度均為30,即在屏幕上“斜向”游動(dòng);功能函數(shù)dSetSpriteFlipX(“fish0”,true)調(diào)用可以使魚水平翻轉(zhuǎn),即實(shí)現(xiàn)“掉頭”功能。
1.3整體邏輯框架簡潔,功能強(qiáng)大Funcode平臺(tái)整體邏輯框架由7個(gè)主要函數(shù)模塊組成,分別是主函數(shù)模塊、鼠標(biāo)移動(dòng)事件模塊、鼠標(biāo)單擊事件模塊、按鍵事件模塊、按鍵彈起事件模塊、對(duì)象碰撞事件模塊、對(duì)象與邊界碰撞事件模塊。其主函數(shù)模塊如以下程序代碼所示,通過主函數(shù)模塊控制整個(gè)游戲的運(yùn)行和界面刷新。其他的6個(gè)函數(shù)模塊幾乎包含了游戲設(shè)計(jì)中需要處理的所有事件,并且向?qū)W生屏蔽了事件激發(fā)所需要的復(fù)雜判斷過程,所有的鼠標(biāo)事件、鍵盤事件、碰撞事件均為自動(dòng)激發(fā),這很大程度上降低了設(shè)計(jì)難度,使學(xué)生可以專注于游戲邏輯功能的實(shí)現(xiàn)。例如:要實(shí)現(xiàn)圖1中的“魚”游到右側(cè)邊界時(shí)掉頭向左游邏輯功能,在Funcode平臺(tái)下,當(dāng)圖1中的“魚”游到右側(cè)邊界時(shí),“對(duì)象與邊界碰撞”模塊將會(huì)自動(dòng)激發(fā),該模塊的初始程序代碼如下所示。此時(shí),學(xué)生無需判斷和處理“魚”是否游到邊界(這對(duì)大學(xué)一年級(jí)學(xué)生而言比較困難),只需要知道“魚”游到邊界后會(huì)自動(dòng)調(diào)用“對(duì)象與邊界碰撞”模塊對(duì)應(yīng)的dOnSpriteColWorldLimit函數(shù)即可。因此,學(xué)生只要能夠根據(jù)游戲功能在該函數(shù)中正確地編寫相應(yīng)的代碼就可以了,具體實(shí)現(xiàn)“掉頭向左游”邏輯功能的完整程序代碼如下所示。顯然,這樣就極大地簡化了對(duì)圖形對(duì)象和事件的處理,學(xué)生就可以把更多的精力投入到游戲邏輯功能的實(shí)現(xiàn)和代碼的編寫和調(diào)試中。
1.4開放式環(huán)境,極大地激發(fā)學(xué)生創(chuàng)新能力Funcode提供了開放式的開發(fā)環(huán)境,除了完成Funcode提供的課程設(shè)計(jì)案例以外,學(xué)生也可以按照自己的思路,添加素材,大膽創(chuàng)新,設(shè)計(jì)和開發(fā)真正屬于自己的游戲,這樣能極大地激發(fā)學(xué)生的程序設(shè)計(jì)熱情。例如:一組學(xué)生開發(fā)的“大魚吃小魚”游戲,當(dāng)大魚吃小魚得分達(dá)到一定的分值時(shí),可以生出“魚寶寶”,尾隨大魚游動(dòng),生動(dòng)有趣。
2教學(xué)內(nèi)容和方法的改革
基于Funcode平臺(tái),在教學(xué)內(nèi)容和方法的改革上,以激發(fā)學(xué)生興趣,調(diào)動(dòng)學(xué)生學(xué)習(xí)主動(dòng)性為主要目標(biāo),在此基礎(chǔ)上,貫穿整個(gè)課程設(shè)計(jì)的各個(gè)階段,采用多種教學(xué)方式和方法培養(yǎng)學(xué)生各方面的綜合素質(zhì)。
2.1選題階段在選題內(nèi)容上,典型游戲設(shè)計(jì)和自主創(chuàng)新相結(jié)合。改變?cè)械脑O(shè)計(jì)內(nèi)容變?yōu)榛贔uncode平臺(tái)游戲設(shè)計(jì)。設(shè)計(jì)內(nèi)容分為兩類:一類是典型的可在Funcode平臺(tái)上實(shí)現(xiàn)的游戲,比如坦克大戰(zhàn)、打地鼠等;另一類是學(xué)生自選題目,要學(xué)生根據(jù)Funcode平臺(tái)功能,發(fā)揮自己的想象力,創(chuàng)造自己的游戲。教師要通過討論、引導(dǎo)等方式,鼓勵(lì)學(xué)生自己設(shè)計(jì)游戲,培養(yǎng)其創(chuàng)新意識(shí)和創(chuàng)新能力。題目選定之后,要求學(xué)生將游戲整體功能用功能模塊和流程圖的方式清楚地表示出來,并且要能夠準(zhǔn)確地描述各模塊之間的關(guān)系,鍛煉學(xué)生的抽象思維和邏輯思維能力。在選題方式上,要堅(jiān)持組內(nèi)討論和師生互動(dòng)相結(jié)合。組內(nèi)討論有利于游戲功能的完善,有利于發(fā)揮所有同學(xué)的創(chuàng)新潛力,有利于調(diào)動(dòng)學(xué)生參與的積極性。通過教師和學(xué)生的討論交流,教師要控制游戲功能的實(shí)現(xiàn)復(fù)雜度,既要保證設(shè)計(jì)的工作量,又要保證控制在可實(shí)現(xiàn)的范圍內(nèi)。
2.2設(shè)計(jì)階段在課程設(shè)計(jì)過程中,要避免“學(xué)生問,教師答”的教學(xué)模式,教師要積極地參與到所有學(xué)生的設(shè)計(jì)中,主動(dòng)和學(xué)生交流討論,掌握他們的設(shè)計(jì)情況;善于通過引導(dǎo)啟發(fā),培養(yǎng)學(xué)生各方面的綜合素質(zhì)。在設(shè)計(jì)中,要及時(shí)發(fā)現(xiàn)并指出存在的問題;對(duì)于學(xué)生提出的問題,要善于引導(dǎo)他們積極獨(dú)立思考,盡量讓其自主分析,找到原因,進(jìn)而找到解決問題的方法,這一方面可以培養(yǎng)學(xué)生獨(dú)立思考,分析問題和解決問題的能力,另一方面可以增強(qiáng)學(xué)生的成就感和自信心,有利于調(diào)動(dòng)學(xué)生參與實(shí)踐的熱情。對(duì)于游戲功能的實(shí)現(xiàn),要讓學(xué)生畫出流程圖或?qū)崿F(xiàn)步驟,體會(huì)程序設(shè)計(jì)中的抽象思維和邏輯思維。比如對(duì)于“打飛蟲”游戲,當(dāng)“拍子”拍中“飛蟲”時(shí),對(duì)應(yīng)Funcode抽象概念為“拍子”對(duì)象和“飛蟲”對(duì)象發(fā)生碰撞事件,由于碰撞事件自動(dòng)激發(fā),所以拍中“飛蟲”后對(duì)應(yīng)的游戲功能實(shí)現(xiàn)邏輯應(yīng)該在碰撞事件中表達(dá)。對(duì)于該碰撞事件的處理,要求學(xué)生首先畫出拍中“飛蟲”后的處理邏輯,體會(huì)程序設(shè)計(jì)中的邏輯思維。比如:使“飛蟲”圖像從界面消失在“飛蟲”鏈表中刪除該飛蟲顯示拍中特效根據(jù)拍中的“飛蟲”類型計(jì)分刷新游戲界面上顯示的實(shí)時(shí)得分值。課程設(shè)計(jì)要求按組進(jìn)行,設(shè)計(jì)中要求分工合理,任務(wù)明確,緊密協(xié)作,嚴(yán)格按照日程安排,完成設(shè)計(jì)任務(wù)。要求每2天一次,將每人獨(dú)立設(shè)計(jì)的模塊進(jìn)行整合并測試,同時(shí)要求學(xué)生定期開展討論,鼓勵(lì)他們對(duì)設(shè)計(jì)中存在的問題,積極和同組同學(xué)交流溝通,要善于發(fā)揮集體的力量,解決問題。在協(xié)作設(shè)計(jì)中,培養(yǎng)學(xué)生的團(tuán)隊(duì)合作意識(shí)。此外,在游戲的設(shè)計(jì)過程中,必然會(huì)存在一些較難實(shí)現(xiàn)或者知識(shí)點(diǎn)超出課本內(nèi)容的功能,從經(jīng)驗(yàn)來看,大多數(shù)學(xué)生都會(huì)無奈地選擇放棄該功能。此時(shí),教師一定要向?qū)W生強(qiáng)調(diào)自主學(xué)習(xí)的重要意義,讓他們認(rèn)識(shí)到課堂教學(xué)中講的內(nèi)容大多是最基礎(chǔ)的核心知識(shí)點(diǎn),而實(shí)際的應(yīng)用中要涉及的知識(shí)卻遠(yuǎn)非如此,并積極鼓勵(lì)和指導(dǎo)學(xué)生學(xué)習(xí)和掌握相關(guān)知識(shí)點(diǎn)。
2.3考評(píng)階段為了進(jìn)一步培養(yǎng)學(xué)生興趣,調(diào)動(dòng)其積極性,考核采用每組分別進(jìn)行講解和演示,交流心得體會(huì),其他組同學(xué)和教師進(jìn)行打分的形式。打分項(xiàng)分為游戲功能、工作量、流暢性、創(chuàng)新性、美觀性等5個(gè)方面。演示中鼓勵(lì)其他組的同學(xué)提問和試玩游戲,盡量找出游戲設(shè)計(jì)的缺陷,通過多種方式培養(yǎng)學(xué)生的展示能力和競爭意識(shí)。最后,教師再進(jìn)行總結(jié)性點(diǎn)評(píng),指出設(shè)計(jì)的優(yōu)缺點(diǎn)。
3教學(xué)效果
從調(diào)動(dòng)學(xué)生學(xué)習(xí)積極性方面來看,在整個(gè)課程設(shè)計(jì)過程中,學(xué)生始終保持著極高的熱情。教師為課程設(shè)計(jì)建立了QQ群,提供全天答疑服務(wù),從QQ群討論情況來看,學(xué)生提問很多,討論熱烈,而且絕大多數(shù)在課外時(shí)間。此外,課程設(shè)計(jì)結(jié)束后,很多學(xué)生指出,F(xiàn)uncode平臺(tái)美中不足的是:自己創(chuàng)造出的游戲最終生成的可執(zhí)行程序離開Funcode平臺(tái)不能運(yùn)行,非常令人遺憾。這也可以從一個(gè)側(cè)面反映了學(xué)生的熱情和對(duì)自己勞動(dòng)成果的珍惜。從課程設(shè)計(jì)內(nèi)容來看,學(xué)生大多是按照自己的想法設(shè)計(jì)的,游戲功能可謂五花八門,創(chuàng)新能力得到了很好的培養(yǎng)和鍛煉。更重要的一點(diǎn)是達(dá)到了課程設(shè)計(jì)的教學(xué)目的,學(xué)生對(duì)程序設(shè)計(jì)的理解更加深刻,鞏固了C語言學(xué)習(xí)成果,能夠?qū)⒂螒蚬δ艿膶?shí)現(xiàn)邏輯用計(jì)算機(jī)語言準(zhǔn)確地表達(dá)出來。在程序設(shè)計(jì)中遇到的具體問題,學(xué)生能夠提出自己的解決思路,并通過編寫程序表達(dá)自己的思路,很好地將課堂上學(xué)到的理論知識(shí)應(yīng)用于實(shí)際問題的解決,抽象思維和邏輯思維能力、程序設(shè)計(jì)實(shí)踐動(dòng)手能力均得到了很好的鍛煉。例如:圖2所示為學(xué)生設(shè)計(jì)的游戲初始界面。該游戲?qū)崿F(xiàn)的功能有:游戲?qū)崟r(shí)倒計(jì)時(shí);游戲?qū)崟r(shí)顯示得分;通過鍵盤控制游戲的開始、暫停和游戲場景的切換;用鼠標(biāo)控制“拍子”進(jìn)行移動(dòng)和拍打;打到大蚊子、小蚊子積分不同,打到堅(jiān)果則減分,且打中目標(biāo)有圖片特效產(chǎn)生;蚊子的產(chǎn)生地點(diǎn)、時(shí)間、數(shù)量和產(chǎn)生時(shí)的飛行速度都是隨機(jī)的,且飛行速度隨著積分級(jí)別越來越快;游戲結(jié)束時(shí)顯示得分最高的三條歷史記錄等。此游戲中,學(xué)生自己編寫代碼(不包括自動(dòng)生成的代碼)行數(shù)在800行以上,使用的C語言知識(shí)點(diǎn)涵蓋了數(shù)組、鏈表、函數(shù)、變量作用域、多分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等。
4結(jié)語
Funcode平臺(tái)簡單易行、圖形界面化的游戲界面編輯方式,使學(xué)生有很大的熱情根據(jù)自己的意愿去設(shè)計(jì)華麗精美的游戲,簡單的游戲設(shè)計(jì)主框架和平臺(tái)提供的圖形處理接口函數(shù)極大地降低了游戲設(shè)計(jì)的難度,使學(xué)生能夠?qū)W⒂谟螒蚬δ艿脑O(shè)計(jì)和游戲邏輯的實(shí)現(xiàn)。功能強(qiáng)大,提供了大多數(shù)游戲開發(fā)所必需的基本函數(shù)模塊,完全開放,學(xué)生可以根據(jù)自己的思路,發(fā)揮創(chuàng)造力和想象力,設(shè)計(jì)出真正的自己的游戲,極大地調(diào)動(dòng)了學(xué)生對(duì)程序設(shè)計(jì)的興趣和熱情。總之,40個(gè)學(xué)時(shí)的C語言課程設(shè)計(jì)中,學(xué)生對(duì)程序設(shè)計(jì)的興趣和熱情被激發(fā)出來,絕大多數(shù)學(xué)生體會(huì)到了程序設(shè)計(jì)的樂趣,對(duì)程序設(shè)計(jì)的認(rèn)識(shí)更加深刻,各方面的綜合能力得到了鍛煉和提高,取得了較好的教學(xué)效果。
作者:武航星姚琳張敏單位:北京科技大學(xué)計(jì)算機(jī)與通信工程學(xué)院
一、傳統(tǒng)C語言課程設(shè)計(jì)教學(xué)模式
C語言是最基本的計(jì)算機(jī)編程,是計(jì)算機(jī)、電子信息類等相關(guān)專業(yè)學(xué)生的專業(yè)入門課,在其學(xué)習(xí)過程中,要求必須掌握編程的技能。但是C語言的學(xué)習(xí)有其特點(diǎn),規(guī)則比較多、知識(shí)點(diǎn)多,涉及到的編程程序等也比較難懂,在運(yùn)行上代碼的要求較高,程序執(zhí)行效率高,因此更講究教學(xué)和學(xué)習(xí)的方式方法,但是在我們的教學(xué)中,目前教學(xué)方法比較單一,隨著信息化的發(fā)展,傳統(tǒng)的教學(xué)模式已經(jīng)無法適應(yīng),亟需改革。
1、傳統(tǒng)型
這種教學(xué)模式,也是最常用的,課堂上以老師為主,學(xué)生只能被動(dòng)的接受知識(shí)的傳授。通過最直接“填鴨”式照本宣科,不管學(xué)生接受與否,最后的考核也是以知識(shí)點(diǎn)的記住與否,造成學(xué)生死記硬背,不能真正掌握知識(shí)。其基本模式為:學(xué)習(xí)——回答——糾錯(cuò)——總結(jié)。這種模式下,使得教師在教材以外的發(fā)揮余地極小,基本是“照本宣科”,強(qiáng)行灌輸C語言的概念、特點(diǎn)、編程程序、基本的方法等,整個(gè)教學(xué)過程缺乏靈活機(jī)動(dòng)、具有啟發(fā)性的內(nèi)容,學(xué)生被動(dòng)的接受知識(shí)、被動(dòng)的記憶、被檢查、被考試、被批評(píng)等,日復(fù)一日的教條式訓(xùn)練,不能有效地激發(fā)學(xué)生的主觀能動(dòng)性與創(chuàng)造熱情。
2、任務(wù)型
C語言教學(xué)區(qū)別于其他學(xué)科,在理論知識(shí)的傳授之外,還需要培養(yǎng)學(xué)生的實(shí)際動(dòng)手能力,因此,很多學(xué)校也采用“任務(wù)型”教學(xué)模式,基本模式為:根據(jù)具體要求提出任務(wù)—鼓勵(lì)學(xué)生設(shè)計(jì)方案—實(shí)際操作—解決任務(wù)。在日常的教學(xué)中,學(xué)校大多會(huì)利用電腦等鍛煉學(xué)生的實(shí)際動(dòng)手能力,利用實(shí)際操作,鍛煉編程、邏輯等能力,從而掌握C語言的基本知識(shí)。例如翻轉(zhuǎn)課堂模式,教師將知識(shí)傳授環(huán)節(jié)制作成教學(xué)微課,課前提供給學(xué)生預(yù)習(xí),通過預(yù)習(xí)使課堂的實(shí)踐性練習(xí)目的性更明確,教師隨堂對(duì)學(xué)生遇到問題進(jìn)行指導(dǎo)分析,從而培養(yǎng)學(xué)生獨(dú)立思考能力和實(shí)際操作能力。這種模式的采用,相對(duì)于傳統(tǒng)模式,有其進(jìn)步性,這也是C語言等專業(yè)性、操作性學(xué)科區(qū)別于其他學(xué)科的特點(diǎn)決定的,在這種模式下更取決于教師自身的素質(zhì)、知識(shí)、能力等,是整個(gè)課程的掌控者、引導(dǎo)者,他們的能力直接關(guān)系著教學(xué)成果。
二、信息化背景下面臨的挑戰(zhàn)
隨著科技的發(fā)展,信息化在教學(xué)領(lǐng)域的應(yīng)用越來越普遍,信息技術(shù)的日新月異,也使得其在課堂上,已經(jīng)不僅僅是局限于簡單地計(jì)算機(jī)和多媒體運(yùn)用,移動(dòng)技術(shù)、智能化與虛擬技術(shù)等為我們的教學(xué)提供了新的思路和方法,如何能使我們的教學(xué)與高速發(fā)展的信息化相結(jié)合,是教育領(lǐng)域不斷探索的課題。C語言程序設(shè)計(jì)等課程具有很強(qiáng)的專業(yè)性要求,主要是建立在計(jì)算機(jī)信息技術(shù)的基礎(chǔ)上,對(duì)于信息化的反應(yīng)更為靈敏,傳統(tǒng)的課堂上,以教師為中心的“面對(duì)面”的教育模式面臨著挑戰(zhàn)和沖擊,用技術(shù)手段的靈活性與便利性來增強(qiáng)課程學(xué)習(xí)的興趣和接受能力。隨著新技術(shù)的廣泛應(yīng)用,會(huì)促使傳統(tǒng)的教學(xué)模式發(fā)生變革,以教師為中心的教學(xué)模式逐漸轉(zhuǎn)化為互動(dòng)式教學(xué)模式,達(dá)到更好的教育效果。在C語言課程設(shè)計(jì)教學(xué)領(lǐng)域,進(jìn)行信息化教學(xué)改革的嘗試,充分利用信息技術(shù),變革教學(xué)手段和模式,是信息化發(fā)展的必然要求。只有實(shí)現(xiàn)C語言課程的信息化教學(xué)改革,使得教育信息化能夠普遍運(yùn)用,才能展現(xiàn)出信息技術(shù)在推動(dòng)C語言教學(xué)中的強(qiáng)大威力和廣闊前景。
三、教學(xué)模式改革的基本對(duì)策
教學(xué)模式直接反映出一定的教學(xué)理念,也直接決定著教學(xué)成果。隨著信息化的發(fā)展,教育信息化逐漸打破傳統(tǒng)的教學(xué)模式,在這樣的背景下,C語言教學(xué)模式的改革任務(wù)艱巨,如何構(gòu)建新型的信息化教學(xué)模式也是我們?cè)趯?shí)踐中不斷摸索的問題。
1、充分利用信息化的科技手段
信息化的科技手段,給我們的教育領(lǐng)域帶來變革,尤其是計(jì)算機(jī)領(lǐng)域的學(xué)習(xí),其主要是建立在信息化發(fā)展的基礎(chǔ)上,因此在教學(xué)中,更要與時(shí)俱進(jìn),與信息化的發(fā)展程度相互依存,相互輔助,C語言課程設(shè)計(jì)教學(xué)中,可以充分利用信息化的科技手段,如計(jì)算機(jī)技術(shù)、云計(jì)算技術(shù)、多媒體技術(shù)、網(wǎng)絡(luò)技術(shù)、虛擬現(xiàn)實(shí)技術(shù)、通信技術(shù)、移動(dòng)學(xué)習(xí)技術(shù)、人工智能、傳感器技術(shù)等,這些技術(shù)的發(fā)展,帶來C語言教育領(lǐng)域的變革。為提高C語言教學(xué)質(zhì)量,激發(fā)學(xué)生學(xué)習(xí)C語言的積極性,我們可以在課程建設(shè)過程中充分利用現(xiàn)代技術(shù)帶來的便利與多樣性,以及趣味性。如在教學(xué)課件設(shè)計(jì)上,利用多媒體技術(shù),圖、文、動(dòng)畫并茂,減少其枯燥的理論傳授,增加趣味性;利用網(wǎng)絡(luò)技術(shù),實(shí)現(xiàn)在線教育,建立“C語言程序設(shè)計(jì)”網(wǎng)站,分組進(jìn)行網(wǎng)站維護(hù),運(yùn)用編程能力進(jìn)行更新;應(yīng)用現(xiàn)代的通信技術(shù),建立微信學(xué)習(xí)群,讓學(xué)生分享自己的學(xué)習(xí)經(jīng)驗(yàn),共享學(xué)習(xí)資源。
2、案例引導(dǎo)式教學(xué)模式
改革C語言教學(xué)模式,另一探索的模式為案例引導(dǎo)式教學(xué)模式,C語言的教學(xué),是為了培養(yǎng)學(xué)生讀程序、調(diào)試程序、寫(仿照)程序的能力以及規(guī)范性編程的能力,學(xué)習(xí)最主要的目的是為了應(yīng)用,對(duì)于編程的應(yīng)用,只有具體的應(yīng)用場景,即案例,才能更容易被接受,更易懂。案例引導(dǎo)式教學(xué)模式,在別的專業(yè)課教授中,常被使用,主要特點(diǎn)就是用案例去引導(dǎo)知識(shí)點(diǎn)的掌握,對(duì)案例進(jìn)行分析,通過分析啟發(fā)學(xué)生的思路,將學(xué)生帶入到具體的案例中,讓學(xué)生有一種“身臨其境”的代入感,從而掌握具體的知識(shí),學(xué)會(huì)在這種場景下解決問題的方法,這種模式的教學(xué)更有針對(duì)性、系統(tǒng)性。案例引導(dǎo)式教學(xué)模式在C語言課程設(shè)計(jì)教學(xué)中的運(yùn)用是指針對(duì)C語言課程的每一個(gè)核心知識(shí)點(diǎn),建立配套的案例,通過這些案例的學(xué)習(xí)和掌握,使得學(xué)生在例子的佐證下,更加了解C語言的應(yīng)用,這種案例的設(shè)計(jì),和我們的書本知識(shí)相結(jié)合,把理論知識(shí)融入到具體的案例中,進(jìn)行綜合性的闡述,如具體的計(jì)算機(jī)程序的編寫,設(shè)計(jì)游戲環(huán)節(jié),運(yùn)用所學(xué)的C語言知識(shí)設(shè)計(jì)網(wǎng)站,并使之運(yùn)行,可以在班吉內(nèi)分組進(jìn)行維護(hù)等,并加以各種領(lǐng)域成功案例或者失敗經(jīng)驗(yàn)的案例,讓學(xué)生能夠更進(jìn)一步了解其應(yīng)用范圍、能力、領(lǐng)域等。
3、實(shí)踐教學(xué)模式
C語言課程設(shè)計(jì)的學(xué)習(xí),所需的能力不再是死記硬背,而是更注重實(shí)踐和應(yīng)用,因此我們?cè)诮虒W(xué)過程中,不能只傳授書本知識(shí),還要鍛煉學(xué)生的動(dòng)手能力和編程能力,實(shí)踐教學(xué)模式應(yīng)運(yùn)而生,依靠大量的實(shí)踐,將所學(xué)的知識(shí)轉(zhuǎn)化為實(shí)際操作,得到進(jìn)一步的應(yīng)用。信息化技術(shù)為這種教學(xué)模式提供支撐服務(wù),我們可以在課堂上設(shè)計(jì)各種實(shí)踐環(huán)節(jié),也可以在課堂后與各種軟件公司、游戲公司、網(wǎng)絡(luò)公司等合作,增加實(shí)踐機(jī)會(huì),讓學(xué)生在具體的實(shí)踐環(huán)節(jié)中,真正了解C語言的知識(shí),并主動(dòng)內(nèi)化這些知識(shí),變?yōu)閷?shí)際操作能力。在這種教學(xué)模式改革中,如何能夠更好的提高實(shí)踐能力需要通過各個(gè)環(huán)節(jié)的相互配合,如課程設(shè)計(jì)上,增強(qiáng)實(shí)驗(yàn)、實(shí)訓(xùn)環(huán)節(jié),讓學(xué)生在熟練掌握C語言語法、程序結(jié)構(gòu)的基本理論的同時(shí),通過大量的實(shí)踐操作,進(jìn)一步掌握C語言的知識(shí),學(xué)會(huì)編碼;同是,積極與各軟件、互聯(lián)網(wǎng)、網(wǎng)絡(luò)公司簽訂實(shí)踐基地,讓學(xué)生可以在實(shí)際應(yīng)用中,邊做邊學(xué),提高學(xué)生邏輯思維、實(shí)際操作能力,真正實(shí)現(xiàn)教學(xué)目的,熟練掌握計(jì)算機(jī)編程能力。
作者:王桂華 單位:營口職業(yè)技術(shù)學(xué)院
1開設(shè)課程設(shè)計(jì)的目的及意義
高等職業(yè)教育的目標(biāo)及側(cè)重點(diǎn)不同于普通高等教育,其培養(yǎng)的學(xué)生在畢業(yè)后應(yīng)能直接上崗,具有熟練的實(shí)踐操作技能。教育部《關(guān)于以就業(yè)為導(dǎo)向深化高等職業(yè)教育改革的若干意見》中指出,高職教育應(yīng)“堅(jiān)持培養(yǎng)面向生產(chǎn)、建設(shè)、管理、服務(wù)第一線需要的‘下得去、留得住、用得上’,實(shí)踐能力強(qiáng)、具有良好職業(yè)道德的高技能人才”。
因此,加強(qiáng)實(shí)踐性課程教學(xué),對(duì)保證人才培養(yǎng)質(zhì)量顯得尤為重要。我院為貫徹《關(guān)于全面提高高等職業(yè)教育教學(xué)質(zhì)量的若干意見》(教高[2006]16號(hào)文件)精神,針對(duì)區(qū)域經(jīng)濟(jì)發(fā)展的要求,靈活調(diào)整和設(shè)置專業(yè)課程,以就業(yè)為導(dǎo)向,加快專業(yè)課程對(duì)應(yīng)的課程設(shè)計(jì)改革。目前,我院按照由淺入深、不斷深化的教學(xué)規(guī)律,構(gòu)建了實(shí)踐教學(xué)三層次四環(huán)節(jié)的實(shí)踐課程體系(圖1)。實(shí)踐教學(xué)三層次包括基本技能、專業(yè)拓展、綜合創(chuàng)新,四環(huán)節(jié)包括實(shí)驗(yàn)、實(shí)習(xí)實(shí)訓(xùn)、設(shè)計(jì)和課外實(shí)踐。“C語言課程設(shè)計(jì)”是我院信息類專業(yè)的必修專業(yè)基礎(chǔ)課程設(shè)計(jì),在“C語言程序設(shè)計(jì)”課程教學(xué)結(jié)束后的下一學(xué)期進(jìn)行,歷時(shí)2周,40學(xué)時(shí)。課程開設(shè)的目的在于培養(yǎng)學(xué)生分析問題和解決問題的能力,為學(xué)生提供一個(gè)動(dòng)手、動(dòng)腦、獨(dú)立實(shí)踐的機(jī)會(huì)。
2項(xiàng)目教學(xué)法的簡單介紹
2.1項(xiàng)目教學(xué)法“項(xiàng)目教學(xué)法”是基于建構(gòu)主義教學(xué)理論的一種教和學(xué)的模式。著名的瑞士心理學(xué)家皮亞杰認(rèn)為,知識(shí)不是通過教師傳授得到的,而是學(xué)生在一定的情境下,借助他人的幫助,利用必要的學(xué)習(xí)資料,通過意義建構(gòu)的方式而獲得的。美國項(xiàng)目管理專家約翰·賓認(rèn)為:“項(xiàng)目是要在一定時(shí)間里,在預(yù)算規(guī)定范圍內(nèi)需達(dá)到預(yù)定質(zhì)量水平的一項(xiàng)一次性任務(wù)。”
“項(xiàng)目教學(xué)法”是通過實(shí)施一個(gè)完整的項(xiàng)目而進(jìn)行的教學(xué)活動(dòng),旨在把學(xué)生融入有意義的任務(wù)完成的過程中,讓學(xué)生積極地學(xué)習(xí),自主地進(jìn)行知識(shí)的建構(gòu),在課堂教學(xué)中把理論與實(shí)踐教學(xué)有機(jī)地結(jié)合起來,充分發(fā)掘?qū)W生的創(chuàng)造潛能,提高學(xué)生解決實(shí)際問題的綜合能力。因此,在教學(xué)活動(dòng)中,教師將需要解決的問題或需要完成的任務(wù)以項(xiàng)目的形式交給學(xué)生,在教師的指導(dǎo)下,以小組工作方式,由學(xué)生自己按照實(shí)際工作的完整程序,共同制定計(jì)劃,共同或分工完成整個(gè)項(xiàng)目。
在項(xiàng)目教學(xué)中,學(xué)習(xí)過程成為一個(gè)人人參與的創(chuàng)造實(shí)踐活動(dòng),注重的不是最終的結(jié)果,而是完成項(xiàng)目的過程。在高等職業(yè)技術(shù)教育中,項(xiàng)目是指以生產(chǎn)或制作一樣具體的、具有實(shí)際應(yīng)用價(jià)值的產(chǎn)品的工作任務(wù)。在技術(shù)領(lǐng)域,很多小產(chǎn)品或一些復(fù)雜產(chǎn)品的模型都可以作為項(xiàng)目,如:在信息類專業(yè),可以開展微機(jī)組裝、網(wǎng)站建設(shè)、信息管理系統(tǒng)開發(fā)、局域網(wǎng)構(gòu)建、單片機(jī)制作、多媒體課件制作等項(xiàng)目;在電子類專業(yè),可以開展報(bào)警器、LED、門鈴、家電組裝等項(xiàng)目;在商業(yè)、財(cái)會(huì)和服務(wù)行業(yè),所有具有整體特性并有可見成果的工作也都可以作為項(xiàng)目,如商品展示、產(chǎn)品廣告設(shè)計(jì)、營銷策劃等。
2.2項(xiàng)目教學(xué)法的基本特征項(xiàng)目教學(xué)法與傳統(tǒng)的教學(xué)法相比,有很大的區(qū)別,主要表現(xiàn)在改變了傳統(tǒng)的3個(gè)中心:以教師為中心轉(zhuǎn)變?yōu)橐詫W(xué)生為中心;以課本為中心轉(zhuǎn)變?yōu)橐浴绊?xiàng)目”為中心;以課堂為中心轉(zhuǎn)變?yōu)橐詫?shí)際經(jīng)驗(yàn)為中心。項(xiàng)目教學(xué)法具有以下特點(diǎn):(1)實(shí)踐性。項(xiàng)目“源”于企業(yè),項(xiàng)目的主題與真實(shí)世界密切聯(lián)系,由淺入深,選擇的項(xiàng)目具有典型性、實(shí)用性。(2)自主性。提供學(xué)生根據(jù)自己的興趣選擇內(nèi)容和展示形式的決策機(jī)會(huì),讓學(xué)生能夠自主地進(jìn)行學(xué)習(xí),從而有效地促進(jìn)學(xué)生創(chuàng)造能力的發(fā)展。(3)發(fā)展性。長期項(xiàng)目與階段項(xiàng)目相結(jié)合,構(gòu)成了實(shí)現(xiàn)教學(xué)目標(biāo)的認(rèn)知過程。(4)評(píng)價(jià)特殊性。項(xiàng)目型教學(xué)的評(píng)價(jià)注重學(xué)生在項(xiàng)目活動(dòng)中能力發(fā)展的過程,測評(píng)內(nèi)容包括學(xué)生參與活動(dòng)各環(huán)節(jié)的表現(xiàn)及作業(yè)質(zhì)量,避免了傳統(tǒng)的一張?jiān)嚲矶ǔ煽兊谋锥恕y評(píng)可以采用自評(píng)、小組評(píng)、教師綜合評(píng)等方法。教師只有明確并抓住項(xiàng)目化教學(xué)特點(diǎn),才能更好地完成教學(xué)目標(biāo)。
3項(xiàng)目教學(xué)法在“C語言課程設(shè)計(jì)”中的實(shí)施
3.1教學(xué)內(nèi)容為了更好地開展課程設(shè)計(jì)教學(xué),經(jīng)過多次實(shí)踐和摸索,總結(jié)出學(xué)生在具體實(shí)施項(xiàng)目中一般存在2個(gè)方面的知識(shí)不足:第一,在教學(xué)內(nèi)容上,由于前導(dǎo)課程在教學(xué)上受學(xué)時(shí)影響,很多教師對(duì)指針、結(jié)構(gòu)體、共用體和文件基本操作的知識(shí)介紹不甚完善、系統(tǒng),更難談上輔以實(shí)例加以消化。對(duì)此,針對(duì)學(xué)生在這些知識(shí)點(diǎn)上的掌握程度,利用4~6個(gè)學(xué)時(shí),實(shí)施區(qū)別式的、輔導(dǎo)性的、實(shí)例化教學(xué)。第二,學(xué)生對(duì)項(xiàng)目管理知識(shí)知之甚少,針對(duì)此情況,采用2個(gè)階段實(shí)施有別于常規(guī)教學(xué)的補(bǔ)課行動(dòng)。第1階段為項(xiàng)目準(zhǔn)備階段,利用2~4個(gè)學(xué)時(shí),安排曾經(jīng)做過項(xiàng)目且做得比較好的學(xué)生,現(xiàn)身介紹項(xiàng)目的準(zhǔn)備工作(包括如何選題、如何查找資料、如何復(fù)習(xí)C語言知識(shí))、項(xiàng)目實(shí)施過程要完成的工作(包括如何做市場調(diào)查、如何做需求規(guī)格分析說明書、如何做概要設(shè)計(jì)說明書、如何做詳細(xì)設(shè)計(jì)說明書、如何選擇使用代碼編碼器代碼編寫注意事項(xiàng))、項(xiàng)目驗(yàn)收及作業(yè)提交的工作(包括程序測試事項(xiàng)、如何寫課程設(shè)計(jì)報(bào)告)等。在學(xué)生介紹中,教師穿插講解,輔以點(diǎn)評(píng)。第2階段為項(xiàng)目實(shí)施階段,教師應(yīng)針對(duì)學(xué)生發(fā)生的問題,及時(shí)給予指導(dǎo),直到學(xué)生弄懂為止。
3.2教學(xué)要求切實(shí)保證教學(xué)質(zhì)量和教學(xué)效果,本著“學(xué)以致用”的原則,要求學(xué)生做到以下3點(diǎn):第一要做到“學(xué)有三備”,即:在項(xiàng)目實(shí)施前做好知識(shí)儲(chǔ)備,在項(xiàng)目實(shí)施中做好安全防備,項(xiàng)目結(jié)束時(shí)做好被評(píng)準(zhǔn)備。第二要寫好“三書一報(bào)告”。“三書”即每個(gè)項(xiàng)目組要做需求規(guī)格說明書、概要設(shè)計(jì)說明書、詳細(xì)設(shè)計(jì)說明書,“一報(bào)告”即人人都要做課程設(shè)計(jì)報(bào)告。第三要做“四自”參與者。“一自”即自律,要求學(xué)生自覺履行學(xué)生守則和項(xiàng)目實(shí)施有關(guān)規(guī)則,不遲到、不早退、不缺席,實(shí)施點(diǎn)名制度,若無特殊原因,有5次曠課者自愿以重修論處;“二自”即自尊,要求學(xué)生尊重知識(shí)、尊重學(xué)習(xí)規(guī)律、尊重項(xiàng)目組成員、尊重教師、尊重自己;“三自”即自信,要求學(xué)生相信自己能夠按時(shí)、按量、按質(zhì)完成工作內(nèi)容,遇到困難時(shí),沉著、冷靜,理性地尋找問題解決的辦法;“四自”即自強(qiáng),要求學(xué)生不滿足自己已有的成績和以往與課題項(xiàng)目組共同取得的成績,用創(chuàng)新和超越的思想,做出比以前哪怕是前進(jìn)一小步的事情。同時(shí)也要求教師做好相應(yīng)的工作,如做好項(xiàng)目整體規(guī)劃、精心準(zhǔn)備、努力激發(fā)學(xué)生參與行為、為人師表、表揚(yáng)為主、批評(píng)為輔、多分析、精點(diǎn)評(píng)等。
3.3項(xiàng)目實(shí)施進(jìn)程項(xiàng)目教學(xué)法是一種生動(dòng)、靈活、多樣化的教學(xué)方法。在項(xiàng)目實(shí)施過程中,既不能生搬硬套地利用一個(gè)時(shí)間標(biāo)準(zhǔn),又不能影響項(xiàng)目實(shí)施的整體進(jìn)程,因此對(duì)時(shí)間的靈活處理是非常關(guān)鍵的,也是值得商榷的。
3.4明確項(xiàng)目內(nèi)容,幫助學(xué)生立項(xiàng)立項(xiàng)首先要審題。當(dāng)學(xué)生拿到項(xiàng)目列表時(shí),最不能忽略的問題,就是提醒學(xué)生審題。審題恰當(dāng)對(duì)學(xué)生以后開展各項(xiàng)工作是關(guān)鍵。審題時(shí),學(xué)生首先要考慮自己的長、缺處,做到揚(yáng)長避短,也就是說審題就是學(xué)生自己審自己完成該項(xiàng)目有多大的能力,有沒有信心。只有學(xué)生明白自己,才可以避免以后實(shí)施項(xiàng)目過程中走彎路。同時(shí)既要建議學(xué)生在組建項(xiàng)目組時(shí),考慮所在組的其他學(xué)生的長處和短處,又要盡量避免使被學(xué)生認(rèn)定的差等學(xué)生沒人愿意與其組合,而成績好的學(xué)生又抱團(tuán)的現(xiàn)象發(fā)生。
根據(jù)近幾年帶課程設(shè)計(jì)的經(jīng)驗(yàn),關(guān)于如何合理選擇項(xiàng)目,建議教師應(yīng)從學(xué)生的角度考慮以下4個(gè)因素,協(xié)助學(xué)生做好選題:(1)規(guī)模。項(xiàng)目規(guī)模太大會(huì)影響項(xiàng)目的完整性,項(xiàng)目規(guī)模太小難以體現(xiàn)課程的實(shí)踐性。(2)難度。項(xiàng)目難度一定要適中,既要激發(fā)學(xué)生學(xué)習(xí)的興趣又不能影響學(xué)生的自信心。(3)實(shí)用性。項(xiàng)目的選擇應(yīng)該是現(xiàn)實(shí)世界真實(shí)的工作任務(wù),具有一定的現(xiàn)實(shí)和實(shí)用性。(4)趣味性。興趣是最好的老師,所以在選擇項(xiàng)目時(shí)應(yīng)考慮其趣味性,讓學(xué)生有更大熱情投入項(xiàng)目。
摘 要: 通過一份問卷調(diào)查,發(fā)現(xiàn)C語言課程設(shè)計(jì)這門課程存在諸多問題。借鑒學(xué)生提供的建議,分別從課程設(shè)計(jì)的時(shí)間安排、課堂教學(xué)及課程設(shè)計(jì)的命題方面進(jìn)行了改革,相信這些改革措施一定會(huì)取得很好的教學(xué)效果。此外還對(duì)學(xué)生反映比較多的問題,比如“編譯錯(cuò)誤不好發(fā)現(xiàn)、也不好修改”提供了一個(gè)很好的解決方案。所有這些教學(xué)改革措施的最終落腳點(diǎn)都是要為國家培養(yǎng)出更多、更優(yōu)秀的建設(shè)人才。
關(guān)鍵詞: C語言 課程設(shè)計(jì) 問卷調(diào)查
1.引言
C 語言作為一門程序設(shè)計(jì)語言的入門課程,很好體現(xiàn)了程序設(shè)計(jì)的靈魂,是進(jìn)一步學(xué)習(xí)其他語言或者計(jì)算機(jī)技術(shù)的理論基礎(chǔ)。“課程設(shè)計(jì)”在中國絕大多數(shù)高校已經(jīng)開設(shè)很多年,那么什么是“課程設(shè)計(jì)”呢?簡單地說,“課程設(shè)計(jì)”是一門這樣的課程:學(xué)生利用所學(xué)的書本知識(shí)來解決現(xiàn)實(shí)生活中的各種實(shí)際問題。本文從一份簡單的關(guān)于C語言課程設(shè)計(jì)的問卷調(diào)查說起,系統(tǒng)地總結(jié)了C語言課程設(shè)計(jì)存在的優(yōu)點(diǎn)和不足,并針對(duì)這些不足提出了一些可行的改進(jìn)措施。希望這些措施能夠落到實(shí)處,能夠?qū)ο嚓P(guān)的課程起到借鑒作用,以便為中國高校培養(yǎng)更多更優(yōu)秀的人才發(fā)揮一點(diǎn)作用。
在計(jì)算機(jī)發(fā)展的歷史上,還沒有哪一種程序設(shè)計(jì)語言能像C語言這樣應(yīng)用廣泛。C語言不是一種“很高級(jí)”的語言,也不“龐大”,并且不專用于某一個(gè)特定的應(yīng)用領(lǐng)域[1]。由前面的敘述可知,學(xué)習(xí)C語言對(duì)大學(xué)理科生,尤其對(duì)計(jì)算機(jī)學(xué)院的學(xué)生而言非常重要。筆者在一次C語言課程設(shè)計(jì)課上進(jìn)行了一次問卷調(diào)查,問卷調(diào)查的內(nèi)容參見圖1。盡管這個(gè)問卷調(diào)查非常簡單,可是通過它能發(fā)現(xiàn)C語言課程設(shè)計(jì)存在的問題。筆者對(duì)該問卷調(diào)查的結(jié)果進(jìn)行了匯總,首先看學(xué)生是怎樣評(píng)價(jià)C語言課程設(shè)計(jì)優(yōu)點(diǎn)的,如圖2所示。其實(shí)學(xué)生們提到的這些優(yōu)點(diǎn)教師早已知道,本文重點(diǎn)關(guān)注的是學(xué)生們提到的不足和建議。
那么C語言課程設(shè)計(jì)在我校開設(shè)的過程中存在哪些缺點(diǎn)和不足呢?有關(guān)的詳細(xì)信息如圖3所示。筆者將學(xué)生們提出的缺點(diǎn)與不足分為五個(gè)類別,這五個(gè)類別分別是:(1)關(guān)于時(shí)間安排和課時(shí)量的問題;(2)關(guān)于課堂教學(xué)的問題;(3)編譯與調(diào)試方面的問題;(4)關(guān)于教師輔導(dǎo)方面的問題;(5)關(guān)于題目方面的問題。筆者將在第3部分對(duì)這些存在的問題給出可行的解決方案。最后看看學(xué)生們給出的建議都是什么?詳細(xì)信息參見圖4,筆者提出的課程設(shè)計(jì)改革方案也參考了學(xué)生們提出的建議。
2.相關(guān)工作
曾輝等人[2]指出了當(dāng)前C語言程序設(shè)計(jì)課程教學(xué)中存在的問題,分析了問題產(chǎn)生的原因,論述了教學(xué)改革的必要性,探討了教學(xué)中如何提高學(xué)生積極性、教學(xué)方法和手段等幾個(gè)方面的教學(xué)改革問題。張敏霞[3]根據(jù)當(dāng)前大學(xué)生的具體情況,針對(duì)如何有效地進(jìn)行程序設(shè)計(jì)語言課程的教學(xué),提高學(xué)生的程序設(shè)計(jì)能力和計(jì)算機(jī)素質(zhì)提出了幾點(diǎn)具體的措施。殷秀云[4]指出傳統(tǒng)的C語言程序設(shè)計(jì)課程的授課方式和考核方式存在一定的局限性,進(jìn)一步加大了學(xué)生掌握C語言編程方法的難度。因此,如何改變這種現(xiàn)狀,以適應(yīng)不斷發(fā)展的社會(huì)的需要,已經(jīng)是一個(gè)亟待解決的問題。馬杰等人[5]針對(duì)C語言教學(xué)中存在的若干問題,提出了從任務(wù)驅(qū)動(dòng)、培養(yǎng)學(xué)生興趣、改革教學(xué)內(nèi)容和方法、加強(qiáng)實(shí)驗(yàn)教學(xué)環(huán)節(jié)及改革考核機(jī)制五個(gè)方面進(jìn)行教學(xué)改革,以提高學(xué)生的編程能力,變被動(dòng)學(xué)習(xí)為主動(dòng)學(xué)習(xí),培養(yǎng)自學(xué)的能力。謝競博[6]從教學(xué)目的、教材選擇、教學(xué)方法、實(shí)踐教學(xué)及考核方式等方面,闡述了它們與教學(xué)效果的關(guān)系,詳細(xì)分析了目前教學(xué)中存在的一些普遍問題的成因,并從幾個(gè)方面分別提出了一些可行的改革建議。陳婷[7]論述了在應(yīng)用型本科C語言程序設(shè)計(jì)教學(xué)實(shí)踐中,根據(jù)應(yīng)用型本科教育培養(yǎng)要求,對(duì)課程合理定位,采用“階梯式”、“案例式”課堂教學(xué)方法,以“項(xiàng)目驅(qū)動(dòng)式”實(shí)踐教學(xué)為核心,同時(shí)搭建多種自主學(xué)習(xí)平臺(tái),采用更科學(xué)和完善的考核方式,較好地兼顧了學(xué)生的不同需求,激發(fā)了學(xué)生的學(xué)習(xí)積極性。
劉三滿[8]結(jié)合學(xué)生的學(xué)習(xí)心理和認(rèn)知規(guī)律,分析了C語言教學(xué)問題的主客觀原因,提出了“先過程,后對(duì)象”的教學(xué)理念,從教材建設(shè)、教學(xué)內(nèi)容安排上闡述了教學(xué)內(nèi)容的具體組織實(shí)施過程,從教學(xué)思路、教學(xué)觀念、教學(xué)手段幾方面探討了教學(xué)方法的改革。謝中科[9]闡述了C語言程序設(shè)計(jì)課程的教學(xué)改革與實(shí)踐,提出了通過激發(fā)大學(xué)生的學(xué)習(xí)興趣、創(chuàng)新熱情、教學(xué)互動(dòng)等手段來建立大學(xué)生的編程思想,培養(yǎng)大學(xué)生的程序設(shè)計(jì)能力和創(chuàng)新意識(shí)。通過課程設(shè)計(jì),培養(yǎng)大學(xué)生運(yùn)用C語言解決實(shí)際問題的能力和創(chuàng)新能力。劉曉鋒等人[10]從教師、學(xué)生和教學(xué)內(nèi)容等方面介紹了在《C語言程序設(shè)計(jì)》課程建設(shè)中,以程序設(shè)計(jì)和實(shí)驗(yàn)為主,更新教學(xué)內(nèi)容,改革傳統(tǒng)的授課方式的探索,闡述了注重能力培養(yǎng),提高學(xué)生的學(xué)習(xí)興趣,充分調(diào)動(dòng)學(xué)生的主動(dòng)性、創(chuàng)造性的重要意義。
3.改革措施
前面部分,學(xué)生們針對(duì)C語言課程設(shè)計(jì)指出了一些缺點(diǎn),同時(shí)提出了一些好的建議,在本部分將有針對(duì)性地提出一些改進(jìn)的措施:(1)關(guān)于課程設(shè)計(jì)時(shí)間安排的改進(jìn):將C語言課程設(shè)計(jì)的開課時(shí)間定在學(xué)生學(xué)完C語言之后的下一個(gè)學(xué)期初。(2)關(guān)于課堂教學(xué)方面的改進(jìn):任課教師申請(qǐng)一個(gè)QQ或者微信群,在學(xué)校正式放假前,任課教師通過該群把課程設(shè)計(jì)的題目發(fā)送到每個(gè)學(xué)生的手中。下學(xué)期開學(xué)后的前幾周進(jìn)行課程設(shè)計(jì)的集體輔導(dǎo),然后進(jìn)行答辯驗(yàn)收。任課教師可以將沒講完的課程內(nèi)容及對(duì)課程設(shè)計(jì)題目的大體梳理都錄制成視頻,然后將該視頻文件上傳到群文件里供學(xué)生們分享。群是實(shí)現(xiàn)師生互動(dòng)的一個(gè)最重要的媒介,借助它可以突破時(shí)間和空間的限制。任課教師在放假前將題目發(fā)送到每個(gè)學(xué)生手里的一個(gè)最大好處是:學(xué)生們可以利用假期里的大量時(shí)間,充分地思考和準(zhǔn)備這些課程設(shè)計(jì)題目。(3)關(guān)于題目方面的改進(jìn):允許學(xué)生自由命題,但是需要任課教師最終把關(guān),以決定該命題是否適合作為課程設(shè)計(jì)的題目。此外,任課教師也可以考慮讓企業(yè)幫助出題。
前面學(xué)生們提出“編譯錯(cuò)誤不好發(fā)現(xiàn)、也不好修改”的問題,筆者認(rèn)為可以通過下面的方法進(jìn)行解決:第一,首先告訴學(xué)生這是C語言的特點(diǎn)之一:語法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大。一般的高級(jí)語言語法檢查比較嚴(yán),能檢查出幾乎所有的語法錯(cuò)誤,而C語言允許程序編寫者有較大的自由度,因此放寬了語法檢查。“限制”與“靈活”是一對(duì)矛盾,限制嚴(yán)格,就失去靈活性;而強(qiáng)調(diào)靈活,就必然放松限制。第二,教會(huì)學(xué)生進(jìn)行單步(Step Through)調(diào)試、設(shè)置斷點(diǎn)(Breakpoint)等調(diào)試程序的技巧,必要時(shí)還可以通過額外添加一些輸出語句輔助進(jìn)行程序調(diào)試。第三,任課教師將常見的編譯出錯(cuò)信息進(jìn)行匯總,然后上傳到群文件里供學(xué)生分享。其實(shí)對(duì)編譯出錯(cuò)信息進(jìn)行總結(jié),不如直接告訴學(xué)生記住C語言的一些專業(yè)術(shù)語,表1中列出了其中的一些,相信這對(duì)學(xué)生調(diào)試程序?qū)?huì)起到很大的幫助作用。另外,還要告訴學(xué)生從一開始就要形成良好的編程風(fēng)格,比如適當(dāng)?shù)靥砑幼⑨專–omment),程序要有縮進(jìn)(Indent),給變量、函數(shù)、數(shù)據(jù)結(jié)構(gòu)等起名字時(shí)要做到見名知意等。
4.結(jié)語
從一份C語言課程設(shè)計(jì)的問卷調(diào)查入手,筆者根據(jù)學(xué)生指出的缺點(diǎn)和提出的建議對(duì)該課程進(jìn)行了嘗試性的改革,分別從課程設(shè)計(jì)的時(shí)間安排方面、課堂教學(xué)方面及課程設(shè)計(jì)的命題方面進(jìn)行了改革,筆者相信這些改革措施一定會(huì)取得很好的教學(xué)效果。另外,筆者還對(duì)學(xué)生反映比較多的問題“編譯錯(cuò)誤不好發(fā)現(xiàn)、也不好修改”提供了很好的解決方案。將按照文中提出的一些觀點(diǎn)編寫《C語言課程設(shè)計(jì)》一書,該書將嚴(yán)格貫徹執(zhí)行講練結(jié)合的原則,對(duì)課程設(shè)計(jì)過程中可能涉及各個(gè)知識(shí)點(diǎn)通過舉例子的方式進(jìn)行講解,例子的選擇標(biāo)準(zhǔn)是不僅能說明問題而且要求最簡單。
摘 要 表現(xiàn)性評(píng)價(jià)又被稱為“基于表現(xiàn)的評(píng)價(jià)”、“真實(shí)性評(píng)價(jià)”。表現(xiàn)性評(píng)價(jià)是根據(jù)學(xué)生實(shí)際完成一項(xiàng)特定任務(wù)或工作的表現(xiàn)而做出評(píng)價(jià),即是從學(xué)生實(shí)際的行為表現(xiàn)來評(píng)價(jià)。目的是評(píng)價(jià)學(xué)生整體性的學(xué)習(xí)成果,通過解決問題的實(shí)際歷程,經(jīng)發(fā)現(xiàn)問題、觀察、提出假設(shè)、推理、控制變量、測量、歸納、詮釋資料、研究判斷做出決定,這整個(gè)過程都是屬于表現(xiàn)性測驗(yàn)的評(píng)價(jià)范圍。本文以C語言課程設(shè)計(jì)為例討論如何針對(duì)實(shí)踐性較強(qiáng)的課程構(gòu)建表現(xiàn)性評(píng)價(jià)。
關(guān)鍵詞 表現(xiàn)性評(píng)價(jià) 量規(guī) 課程設(shè)計(jì)
1構(gòu)建表現(xiàn)性評(píng)價(jià)基本思路
構(gòu)建表現(xiàn)性評(píng)價(jià)就是制定評(píng)價(jià)目標(biāo)、選擇評(píng)價(jià)內(nèi)容、開發(fā)和設(shè)計(jì)評(píng)價(jià)方法的,還包括評(píng)價(jià)者的參與、選擇評(píng)價(jià)時(shí)間和場所、記錄、收集和整理評(píng)價(jià)信息的,以及制定評(píng)價(jià)標(biāo)準(zhǔn)和表現(xiàn)標(biāo)準(zhǔn)等。依據(jù)這樣的開發(fā)步驟,對(duì)C語言課程設(shè)計(jì)表現(xiàn)性評(píng)價(jià)的設(shè)計(jì)和實(shí)施做出了整體規(guī)劃,該設(shè)想的總體思路如下圖所示:
2表現(xiàn)性評(píng)價(jià)目標(biāo)的制定
學(xué)習(xí)目標(biāo)是課程學(xué)習(xí)活動(dòng)的出發(fā)點(diǎn)和歸宿,它指導(dǎo)教與學(xué),向其他人傳達(dá)教學(xué)意圖,并提供評(píng)價(jià)學(xué)生學(xué)業(yè)的指導(dǎo)意見,是評(píng)價(jià)學(xué)生的重要依據(jù)。表現(xiàn)性評(píng)價(jià)的評(píng)價(jià)目標(biāo)和課程的培養(yǎng)目標(biāo)是一致的。在評(píng)價(jià)之前只有清晰的知道C語言課程要培養(yǎng)什么樣的學(xué)生,才能把握好教學(xué)與評(píng)價(jià)的方向,最終達(dá)成目標(biāo)。
C語言程序設(shè)計(jì)是一門典型的具有操作性和實(shí)踐性特點(diǎn)的計(jì)算機(jī)科學(xué)課程。該課程的學(xué)習(xí)目標(biāo)體系包括下列內(nèi)容:
(1)知識(shí)類目標(biāo):理解并掌握課程要求的基本知識(shí),加深對(duì)已學(xué)知識(shí)的理解,進(jìn)一步提高原有技能;在熟練掌握陳述性知識(shí)的同時(shí),更加注重對(duì)知識(shí)的應(yīng)用。
(2)能力類目標(biāo):培養(yǎng)學(xué)生的創(chuàng)新意識(shí)、刨造思維能力和動(dòng)手實(shí)踐能力;培養(yǎng)學(xué)生信息意識(shí)和主動(dòng)獲取信息,處理信息的能力;培養(yǎng)學(xué)生的群體意識(shí)和學(xué)會(huì)溝通與合作交往的能力;培養(yǎng)問題意識(shí)和獨(dú)立發(fā)現(xiàn)問題、提出問題、解決問題的能力;培養(yǎng)和提高管理能力等。
(3)情感類目標(biāo):現(xiàn)代學(xué)習(xí)觀、科學(xué)精神和態(tài)度、社會(huì)責(zé)任感和使命感和交往能力等。課程設(shè)計(jì)的學(xué)習(xí)目標(biāo)在課程學(xué)習(xí)目標(biāo)的基礎(chǔ)之上,更強(qiáng)調(diào)實(shí)踐能力的提高,培養(yǎng)計(jì)算機(jī)程序設(shè)計(jì)的能力和素質(zhì),以及思維方法。經(jīng)上述分析,與課程學(xué)習(xí)目標(biāo)相對(duì)應(yīng),課程設(shè)計(jì)的表現(xiàn)性評(píng)價(jià)目標(biāo)也應(yīng)包含三個(gè)維度:對(duì)知識(shí)習(xí)得的評(píng)價(jià)、對(duì)能力的評(píng)價(jià)和對(duì)情感態(tài)度價(jià)值觀的評(píng)價(jià)。對(duì)上述三方面的評(píng)價(jià)目的具體描述如下表所示。
3選擇表現(xiàn)性評(píng)價(jià)任務(wù)
評(píng)價(jià)任務(wù)指的是一種與教學(xué)目標(biāo)緊密相連的,而且能夠?yàn)閷W(xué)生創(chuàng)造展示自己進(jìn)步與能力的機(jī)會(huì)的一種具體的行為,能反映現(xiàn)實(shí)生活中的活動(dòng)、表現(xiàn)和挑戰(zhàn)的任務(wù),建立在學(xué)習(xí)與評(píng)價(jià)的聯(lián)系基礎(chǔ)之上,考慮學(xué)生的興趣和能力。C語言課程設(shè)計(jì)任務(wù),更加突出應(yīng)用性和實(shí)用性,拓展知識(shí)面。通過課程設(shè)計(jì),進(jìn)一步熟悉掌握數(shù)據(jù)類型、分支控制、循環(huán)控制、函數(shù)的定義及調(diào)用、結(jié)構(gòu)體及數(shù)組、指針、文件操作、編譯預(yù)處理等知識(shí);達(dá)到系統(tǒng)理解、綜合運(yùn)用課程知識(shí)的學(xué)習(xí)目標(biāo);學(xué)會(huì)用C語言程序解決實(shí)際問題的方法;掌握程序的局部測試、調(diào)試方法,建立程序系統(tǒng)測試、調(diào)試的基本概念和思想,學(xué)會(huì)較大程序的系統(tǒng)測試、調(diào)試方法。
一般的C語言課程設(shè)計(jì)項(xiàng)目包括小型系統(tǒng)設(shè)計(jì)、圖形圖像設(shè)計(jì)和游戲程序設(shè)計(jì)基本過程包括以下6個(gè)步驟:
3.1程序的功能設(shè)計(jì)
功能設(shè)計(jì)是課程設(shè)計(jì)的第一個(gè)環(huán)節(jié),其任務(wù)是根據(jù)課程設(shè)計(jì)題目的描述和要求,確定程序要實(shí)現(xiàn)的功能,并把功能劃分為不同的層次,確定各層功能的上下級(jí)關(guān)系,然后繪制出分級(jí)描述的程序功能框圖。
3.2程序的數(shù)據(jù)設(shè)計(jì)
程序的數(shù)據(jù)設(shè)計(jì)主要包括對(duì)以下各類數(shù)據(jù)進(jìn)行設(shè)計(jì):對(duì)程序中用到的主要數(shù)據(jù)確定數(shù)據(jù)類型;對(duì)程序中用到的結(jié)構(gòu)體數(shù)據(jù)定義其結(jié)構(gòu)類型;定義程序中使用到的全局變量、外部變量等;定義程序中通用的符號(hào)常量;確定文件的數(shù)據(jù)類型,如二進(jìn)制文件、文本文件等。
3.3程序的函數(shù)設(shè)計(jì)
一個(gè)綜合性的程序,需要設(shè)計(jì)若干個(gè)函數(shù)。各個(gè)函數(shù)功能各異,使用的層次也不盡相同。為了使總體設(shè)計(jì)協(xié)調(diào)有序的進(jìn)行,需要在程序編碼之前,對(duì)主要的函數(shù)做出預(yù)先設(shè)計(jì),即所謂的函數(shù)設(shè)計(jì)。程序的函數(shù)設(shè)計(jì)包括函數(shù)的功能設(shè)計(jì)和函數(shù)調(diào)用設(shè)計(jì)兩個(gè)方面。
3.4函數(shù)編程及調(diào)試
函數(shù)編程及調(diào)試是實(shí)現(xiàn)程序功能的核心階段,函數(shù)編程及調(diào)試是實(shí)現(xiàn)程序功能的核心階段,需要注意以下問題:課程設(shè)計(jì)具有一定的綜合性,其程序通常由多個(gè)函數(shù)構(gòu)成,每個(gè)函數(shù)都有獨(dú)立的功能,實(shí)現(xiàn)特定的操作;有些函數(shù)之間有調(diào)用和被調(diào)用的關(guān)系,在進(jìn)行函數(shù)設(shè)計(jì)時(shí)需要注意順序問題,有點(diǎn)函數(shù)先設(shè)計(jì),有點(diǎn)函數(shù)后設(shè)計(jì),而沒有調(diào)用關(guān)系的函數(shù)可以并列設(shè)計(jì);程序設(shè)計(jì)是一個(gè)循序漸進(jìn)的過程。有點(diǎn)函數(shù)在程序設(shè)計(jì)前的函數(shù)設(shè)計(jì)階段就被考慮到了,而有的函數(shù)是在程序設(shè)計(jì)過程中因需要才產(chǎn)生的。但無論哪個(gè)函數(shù),都會(huì)經(jīng)歷由簡單到功能完善定型的過程。
3.5整體調(diào)試
整體調(diào)試是程序設(shè)計(jì)的必要階段,是在前期程序設(shè)計(jì)調(diào)試基礎(chǔ)上進(jìn)行的基本過程。需要設(shè)計(jì)準(zhǔn)備一個(gè)較大規(guī)模的數(shù)據(jù)集,按照課程設(shè)計(jì)題目的功能要求,對(duì)組裝完成的程序逐項(xiàng)進(jìn)行功能測試和調(diào)試,直至確認(rèn)程序達(dá)到了設(shè)計(jì)目標(biāo)為止。
3.6設(shè)計(jì)總結(jié)
設(shè)計(jì)總結(jié)是課程設(shè)計(jì)的最終階段,通過對(duì)課程設(shè)計(jì)的各個(gè)過程進(jìn)行系統(tǒng)全面地總結(jié),按照指導(dǎo)教師的具體要求,形成課程設(shè)計(jì)報(bào)告。
4建立量規(guī)
量規(guī)(Rubric)是一種結(jié)構(gòu)化的定量評(píng)價(jià)標(biāo)準(zhǔn)。往往是從與評(píng)價(jià)目標(biāo)相關(guān)的多個(gè)方面詳細(xì)規(guī)定評(píng)級(jí)指標(biāo),具有操作性好、準(zhǔn)備性高的特點(diǎn)。量規(guī)是評(píng)價(jià)的工具,學(xué)生的作品、成長記錄、學(xué)習(xí)成果或者學(xué)習(xí)過程中的其他表現(xiàn)(行為、認(rèn)知、態(tài)度)都是量規(guī)的評(píng)價(jià)對(duì)象。同時(shí)量規(guī)也是一個(gè)教學(xué)工具和學(xué)習(xí)工具,可以指導(dǎo)教師的教學(xué)和學(xué)生的學(xué)習(xí)過程,模糊了教學(xué)、學(xué)習(xí)和評(píng)價(jià)之間的界限,評(píng)價(jià)工具也從而成為了教學(xué)工具和學(xué)習(xí)工具。量規(guī)設(shè)計(jì)的出發(fā)點(diǎn)和著落點(diǎn)是指標(biāo)和等級(jí)地選擇與確立。設(shè)計(jì)評(píng)價(jià)量規(guī)就是,以課程、教學(xué)、評(píng)價(jià)三者統(tǒng)一,突出學(xué)生主體性和促進(jìn)學(xué)生發(fā)展的評(píng)價(jià)目的為設(shè)計(jì)原則,在明確學(xué)習(xí)目的和目標(biāo)的基礎(chǔ)上,列出評(píng)價(jià)指標(biāo)和制定評(píng)價(jià)等級(jí)。對(duì)C語言課程設(shè)計(jì)內(nèi)容加以分析,制定出課程設(shè)計(jì)過程中的幾個(gè)量規(guī)。
4.1 C語言課程設(shè)計(jì)任務(wù)設(shè)計(jì)量規(guī)(教師)
該量規(guī)主要是對(duì)學(xué)生在對(duì)課程設(shè)計(jì)任務(wù)進(jìn)行分析、提出解決方案、制定完成任務(wù)的相應(yīng)計(jì)劃的表現(xiàn)進(jìn)行評(píng)價(jià)時(shí)所使用的量規(guī)。該量規(guī)中的評(píng)價(jià)項(xiàng)目主要包括問題分析、任務(wù)劃分、程序架構(gòu)等。根據(jù)評(píng)價(jià)項(xiàng)目完成情況好壞不同給出不同分值的具體表現(xiàn),在評(píng)價(jià)過程中對(duì)照量規(guī)評(píng)價(jià)學(xué)生的表現(xiàn)。
4.2小組合作量規(guī)(教師)
該量規(guī)是由教師為各個(gè)小組整體表現(xiàn)進(jìn)行評(píng)價(jià)的量規(guī)工具,小組的表現(xiàn)應(yīng)包括幫助、傾聽、參與、勸說、問題及尊重等幾個(gè)方面,教師根據(jù)對(duì)各小組的觀察情況,對(duì)各項(xiàng)評(píng)分,并計(jì)算總分,以此作為小組合作表現(xiàn)的成績。
4.3小組成員相互關(guān)系表現(xiàn)量規(guī)(學(xué)生自評(píng),互評(píng))
小組成員之間的關(guān)系是否融洽,合作是否愉快,常常對(duì)整體工作效果有著至關(guān)重要的作用,因此,該量規(guī)也就比不可少了。該量規(guī)是從小組成員之間相互觀察到角度來制定的,其主要評(píng)價(jià)項(xiàng)目包括合作、參與、態(tài)度、獨(dú)立性、交流和應(yīng)答等,每個(gè)小組成員都要為其他小組成員打分,計(jì)算評(píng)價(jià)分。這樣每個(gè)同學(xué)都可以看到自己在本小組中和其他成員間的關(guān)系如何,在以后的人際交往當(dāng)中即可吸取經(jīng)驗(yàn),更好地與他人融洽相處。
5總結(jié)
評(píng)價(jià)與教學(xué)是一個(gè)硬幣的兩面,雖然兩者有不同的“圖案”,但總是不可分割的共同體。目前,在教育領(lǐng)域中,我們面臨的許多真實(shí)困難都來與教學(xué)和評(píng)價(jià)的分離。如果我們準(zhǔn)備可信的方式評(píng)價(jià)學(xué)生,真正服務(wù)于促進(jìn)學(xué)生深入學(xué)習(xí)的最終目標(biāo),教學(xué)與評(píng)價(jià)必將再次結(jié)合。
【摘 要】本文就三本院校工科電子類專業(yè)的程序設(shè)計(jì)語言的教學(xué)進(jìn)行了探討,針對(duì)三本學(xué)生基礎(chǔ)偏弱,自我能動(dòng)性稍顯不足的特點(diǎn),將程序設(shè)計(jì)的教學(xué)分成了兩個(gè)相關(guān)聯(lián)的部分,理論知識(shí)的講解和動(dòng)手環(huán)節(jié)的實(shí)踐,并對(duì)實(shí)踐環(huán)節(jié)中的兩個(gè)部分――分散知識(shí)點(diǎn)和綜合應(yīng)用分別給出了設(shè)計(jì)思路。
【關(guān)鍵詞】C語言;理論教學(xué);實(shí)踐教學(xué);課程設(shè)計(jì)
目前各個(gè)高等學(xué)校尤其是三本工科院校中,所選用的編程教學(xué)語言,由以前的面向過程化的語言Pascal語言向C語言過渡,這個(gè)也正是C語言廣泛使用的一個(gè)例證,C語言作為一個(gè)對(duì)底層有較強(qiáng)控制能力的語言,對(duì)于初學(xué)者來說,還是不容易掌握。為了編程語言的教學(xué),各個(gè)學(xué)校都在探索適合自己學(xué)生的教學(xué)方式。本文針對(duì)電子類的嵌入式方向?qū)I(yè)的特殊性,采用了將理論和實(shí)踐分開進(jìn)行的方式,這樣做,可以讓學(xué)生對(duì)程序設(shè)計(jì)語言由淺入深地接受,在這個(gè)過程中,很自然地有純粹的理論過度到實(shí)踐編程的環(huán)節(jié)。
一、程序設(shè)計(jì)語言的教學(xué)思路
嵌入式方向C語言的教學(xué),偏向于嵌入式底層的應(yīng)用,在課程的安排上,結(jié)合三本院校學(xué)生的特點(diǎn),將理論和實(shí)踐分別安排的兩個(gè)學(xué)期完成,第一個(gè)學(xué)期,主要是針對(duì)理論學(xué)習(xí),第二個(gè)學(xué)期,開設(shè)課程設(shè)計(jì)的實(shí)踐環(huán)節(jié)。在理論教學(xué)環(huán)節(jié)中,側(cè)重點(diǎn)是理論的講解,可以不必太在乎細(xì)微的語法細(xì)節(jié),而將主要精力放在程序設(shè)計(jì)語言的思想上。作為教師在講授C語言理論知識(shí)時(shí),只要將過程化C語言的重點(diǎn)思想交代清楚了就可以了,在教學(xué)內(nèi)容的安排上,一定要將結(jié)構(gòu)體,指針和文件的相關(guān)知識(shí)進(jìn)行講解,這也決定了在理論學(xué)時(shí)的環(huán)節(jié)中,無法對(duì)個(gè)別函數(shù)的細(xì)節(jié)進(jìn)行展開的原因,而這些理論環(huán)節(jié)的教學(xué),學(xué)時(shí)可以控制在45~48之間。
二、C語言課程設(shè)計(jì)教學(xué)內(nèi)容的設(shè)計(jì)
在教學(xué)內(nèi)容上,由于實(shí)踐課程的特殊性結(jié)合程序設(shè)計(jì)的特點(diǎn),實(shí)踐環(huán)節(jié)可以用兩種方式完成,以便和前面的理論學(xué)時(shí)的知識(shí)進(jìn)行銜接,這兩個(gè)環(huán)節(jié)分別是單個(gè)知識(shí)點(diǎn)的聯(lián)系和綜合的課程設(shè)計(jì)的獨(dú)立完成。
1. 單個(gè)知識(shí)點(diǎn)的實(shí)踐
就單個(gè)知識(shí)點(diǎn)而言,都以專題練習(xí)的方式進(jìn)行,在講授的過程中,結(jié)合工程中的使用,每個(gè)專題,可以設(shè)計(jì)出獨(dú)立的實(shí)踐報(bào)告內(nèi)容,程序設(shè)計(jì)語言的教學(xué),除了掌握基本的語法規(guī)則之外,最重要的是同時(shí)要會(huì)調(diào)試程序,也就是要掌握調(diào)試程序的技巧。所以,課堂實(shí)踐環(huán)節(jié)的內(nèi)容的設(shè)計(jì),不但包括了能夠?qū)懗龀绦虼a,而且還要會(huì)應(yīng)用調(diào)試工具對(duì)程序進(jìn)行調(diào)試,下面就是本人在進(jìn)行數(shù)組,指針和結(jié)構(gòu)體的綜合專題中進(jìn)行的課堂任務(wù)的設(shè)計(jì):
任務(wù)描述:從鍵盤錄入N個(gè)學(xué)生的信息(包括姓名,學(xué)號(hào),成績),統(tǒng)計(jì)出平均分,并將成績最低分,最高分的學(xué)生的信息輸出。
該課堂實(shí)踐內(nèi)容設(shè)計(jì)的思路,主要是要學(xué)生掌握結(jié)構(gòu)體的定義方法,理解數(shù)組的元素可以是結(jié)構(gòu)體變量,同時(shí)要牢固掌握指針的本質(zhì)就是內(nèi)存地址,通過指針可以方便地操作用戶空間的任何數(shù)據(jù)。
通過上面的實(shí)踐內(nèi)容,結(jié)合筆者的實(shí)際操作,學(xué)生在記錄了指針地址的變化過程之后,不但掌握了查看內(nèi)存的調(diào)試方法,而且對(duì)指針的本質(zhì)有了感性的認(rèn)識(shí)。
2. 綜合課程設(shè)計(jì)
可以選取有一定規(guī)模的小系統(tǒng)讓學(xué)生完成,在筆者的教學(xué)中,幾年來了均采用了學(xué)生信息教學(xué)管理系統(tǒng)進(jìn)行授課,隨著經(jīng)驗(yàn)的增加,這個(gè)小系統(tǒng)對(duì)于學(xué)生而言,有很好的鍛煉價(jià)值。
這個(gè)環(huán)節(jié)的實(shí)踐,可以不占用教學(xué)計(jì)劃學(xué)時(shí),而留給學(xué)生課后組隊(duì)或者獨(dú)立調(diào)試完成,這是因?yàn)椋瑢W(xué)生通過前面分散的專項(xiàng)知識(shí)點(diǎn)的練習(xí),已經(jīng)學(xué)會(huì)了怎樣調(diào)試程序,而且,各個(gè)知識(shí)點(diǎn)通過練習(xí)之后,已經(jīng)掌握得差不多了,這個(gè)綜合任務(wù),就是為了他們能夠融匯以前所學(xué)的各個(gè)知識(shí)點(diǎn)。所以布置給學(xué)生之后,就可以在適當(dāng)?shù)臅r(shí)候進(jìn)行答辯考核了。
三、C語言課程教學(xué)課堂組織形式的比較
作為實(shí)踐課程,其教學(xué)有特殊性,筆者通過三個(gè)學(xué)期的探索,分別采用了兩種課時(shí)組織方式,現(xiàn)在對(duì)兩種方式的優(yōu)缺點(diǎn)分別進(jìn)行比對(duì):
分散課時(shí)方式:就是按照理論課的安排,周學(xué)時(shí)2-4個(gè)學(xué)時(shí)進(jìn)行安排。
周末集中方式:每個(gè)周末安排16個(gè)學(xué)時(shí),進(jìn)行集中訓(xùn)練。
對(duì)于分散授課的方式,學(xué)生的出勤率低于集中的方式,對(duì)于實(shí)踐性質(zhì)的課程,這種集中的方式進(jìn)行授課,學(xué)生的出勤率會(huì)高于普通的方式。就學(xué)生課堂任務(wù)的完成情況而言,兩者基本上都能按照要求完成要求的85%以上的內(nèi)容。就課程銜進(jìn)行考量,根據(jù)實(shí)際操作來看,集中方式明顯優(yōu)于分散的方式,這個(gè)記憶的遺忘興致相符合。從考核結(jié)果來看,分散方式所參與的三屆學(xué)生中,要優(yōu)于集中方式,這個(gè)結(jié)果的出現(xiàn),有部分原因是由于考核時(shí)間和上課時(shí)間之間的空隙拉的太長了。下次的安排,將會(huì)安排在課程結(jié)束之后的一周時(shí)間進(jìn)行,這留出來的一周時(shí)間,就是讓學(xué)生來獨(dú)立完成自己的任務(wù)。
本文對(duì)三本學(xué)校中開展C課程設(shè)計(jì)的思路進(jìn)行探討和實(shí)踐,提出了將C語言的教學(xué)分為理論部分和實(shí)踐部分的思路,并把實(shí)踐部分的練習(xí)分為專題知識(shí)練習(xí)和綜合獨(dú)立完成的任務(wù)兩個(gè)部分,在課堂的實(shí)踐中有較好的效果。最后論文還對(duì)課程設(shè)計(jì)的學(xué)時(shí)組織方式進(jìn)行不同方式的實(shí)踐嘗試,為找到適合三本學(xué)生C語言教學(xué)的方法提供了一定的參考對(duì)象。
摘 要 項(xiàng)目教學(xué)是要通過一個(gè)較為完整的項(xiàng)目進(jìn)行教學(xué)活動(dòng),其主要目的是為了能把學(xué)生融入到有意義的任務(wù)中,并充分發(fā)揮學(xué)生的創(chuàng)造潛能,提高解決實(shí)際問題的能力。通過對(duì)“C語言課程設(shè)計(jì)”課堂的教學(xué),用項(xiàng)目教學(xué)法進(jìn)行教學(xué),取得了較為滿意的教學(xué)成果。對(duì)于如何利用選擇項(xiàng)目、實(shí)施項(xiàng)目、評(píng)估項(xiàng)目,進(jìn)行了初步探究,并介紹了項(xiàng)目教學(xué)中需要注意的事項(xiàng),為推廣項(xiàng)目式教學(xué)法運(yùn)用,提供了一些借鑒。
關(guān)鍵詞 項(xiàng)目教學(xué) C語言 教學(xué)實(shí)施 教學(xué)成果
1 開設(shè)的目的和意義
較之于高等教育而言,高等職業(yè)教育無論在目標(biāo)性還是教學(xué)的側(cè)重點(diǎn)上,均存在著較大的差異性,后者通過對(duì)學(xué)生進(jìn)行培養(yǎng),畢業(yè)后可直接參加具體的工作,因其已經(jīng)熟練的掌握了操作技能和技巧,所以能夠獨(dú)立完成工作任務(wù)。根據(jù)高職院校學(xué)生就業(yè)指導(dǎo)意見,當(dāng)前高等職業(yè)教育教學(xué)應(yīng)面向生產(chǎn)、管理以及建設(shè)和服務(wù)等一線行業(yè),為這些部門和工作崗位輸送人才,以下得去、用得上和留得住為基本原則,培養(yǎng)實(shí)踐能力較強(qiáng)具有較好的職業(yè)道德的高技能人才。因此,要加強(qiáng)實(shí)踐性課程教學(xué),對(duì)保證人才培養(yǎng)質(zhì)量顯得尤為重要。
我院為了貫徹這種精神,立足區(qū)域經(jīng)濟(jì)發(fā)展現(xiàn)實(shí)情況,對(duì)專業(yè)課程進(jìn)行了靈活的調(diào)整,其中以就業(yè)為主要導(dǎo)向,不斷加快應(yīng)用課程設(shè)計(jì)與創(chuàng)新。就當(dāng)前我院工作實(shí)際情況來看,以由淺入深和逐漸深化為主要教學(xué)規(guī)律,并在此基礎(chǔ)上構(gòu)建了教學(xué)三層次、四環(huán)節(jié)之實(shí)踐課程系統(tǒng)。實(shí)踐教學(xué)的三個(gè)層次是:基本技能,專業(yè)拓展,綜合創(chuàng)新;四個(gè)環(huán)節(jié)是:實(shí)驗(yàn)培訓(xùn),實(shí)驗(yàn)實(shí)訓(xùn),設(shè)計(jì)和課外實(shí)踐。
比如,C語言課程,作為信息類專業(yè)的基礎(chǔ)課程,程序設(shè)計(jì)都是在課程教學(xué)完成后進(jìn)行,共有四十個(gè)學(xué)時(shí),歷時(shí)兩周。為學(xué)生提供一個(gè)動(dòng)手、動(dòng)腦、獨(dú)立實(shí)踐的機(jī)會(huì)。
2 項(xiàng)目教學(xué)法簡介
項(xiàng)目教學(xué)法是基于構(gòu)建主義教學(xué)理論的一種教與學(xué)的模式。瑞士著名的心理學(xué)家皮亞杰認(rèn)為:知識(shí)不是通過教師傳授得到的,而是學(xué)生在一定的情境下,借助他人的幫助,利用必要的學(xué)習(xí)資料,通過意義構(gòu)建的方式獲得的。美國項(xiàng)目管理專家約翰·賓認(rèn)為:項(xiàng)目是要在一定時(shí)間里,在預(yù)算規(guī)定的范圍之內(nèi)需要達(dá)到預(yù)定質(zhì)量水平的一項(xiàng)一次性任務(wù)。
項(xiàng)目教學(xué)法是通過實(shí)施一個(gè)完整的項(xiàng)目進(jìn)行教學(xué)活動(dòng),將學(xué)生融入到任務(wù)的過程中,讓學(xué)生進(jìn)行主動(dòng)地學(xué)習(xí),自主性地進(jìn)行知識(shí)構(gòu)建,在課堂教學(xué)中把理論與實(shí)踐教學(xué)有機(jī)的結(jié)合起來,能充分地發(fā)揮學(xué)生的創(chuàng)造潛能,提高學(xué)生解決實(shí)際問題的能力。因此,在實(shí)際教學(xué)過程中,教師要將需要解決的問題或需要完成的任務(wù)以項(xiàng)目的形式交給學(xué)生,讓學(xué)生在老師的指導(dǎo)下,用工作小組的方式,由學(xué)生自己按照實(shí)際的工作程序,共同制定計(jì)劃,共同或者分工完成整個(gè)項(xiàng)目。在項(xiàng)目教學(xué)過程中,學(xué)習(xí)過程稱為人人都參與的實(shí)踐過程,注重的不是結(jié)果,而是整個(gè)項(xiàng)目完成的過程。
對(duì)于高等職業(yè)院校的技術(shù)教育教學(xué)而言,項(xiàng)目主要是指生產(chǎn)或者制造有應(yīng)用價(jià)值的具體產(chǎn)品之任務(wù)。從技術(shù)領(lǐng)域來看,多數(shù)小產(chǎn)品、復(fù)雜產(chǎn)品等模型制作均可作為具體的項(xiàng)目,比如信息類專業(yè)開展網(wǎng)站建設(shè)、計(jì)算機(jī)組裝以及建設(shè)局域網(wǎng)項(xiàng)目,電子類專業(yè)可開展報(bào)警器制作、加點(diǎn)組裝等項(xiàng)目。
3 其基本特征
項(xiàng)目教學(xué)法與傳統(tǒng)教學(xué)法相比具有較大的差別。主要表現(xiàn)在改變了傳統(tǒng)教學(xué)中的三個(gè)中心:以教師為中心轉(zhuǎn)變?yōu)橐詫W(xué)生為中心;以課本為中心轉(zhuǎn)變?yōu)橐皂?xiàng)目為中心;以課堂為中心轉(zhuǎn)變?yōu)橐詫?shí)際經(jīng)驗(yàn)為中心。項(xiàng)目教學(xué)法具有以下的特點(diǎn):
實(shí)踐性:項(xiàng)目源于企業(yè),項(xiàng)目的主題與真實(shí)世界是緊密聯(lián)系的,由淺入深,選擇的項(xiàng)目具有典型性和使用性;自主性:提供學(xué)生根據(jù)個(gè)人興趣進(jìn)行選擇的內(nèi)容和展示的機(jī)會(huì),讓學(xué)生進(jìn)行自主的學(xué)習(xí),從而有效地促進(jìn)了其創(chuàng)造力的發(fā)展;發(fā)展性:長期的項(xiàng)目結(jié)合,構(gòu)成了實(shí)現(xiàn)教學(xué)目標(biāo)的認(rèn)知過程;評(píng)價(jià)的特殊性:項(xiàng)目性教學(xué)更注重的是學(xué)生在項(xiàng)目活動(dòng)中能力的發(fā)展過程,評(píng)測的內(nèi)容包括學(xué)生參加各項(xiàng)活動(dòng)的表現(xiàn),避免了傳統(tǒng)的成績定好壞的弊端。評(píng)測可以采用自評(píng)、小組評(píng)、教師綜合評(píng)等方法、教師只有明確并抓住其教學(xué)的特點(diǎn),才能更好地完成教學(xué)目標(biāo)。
4 其在C語言課程設(shè)計(jì)中的實(shí)施
為更好進(jìn)行課程設(shè)計(jì)教育教學(xué),在多次實(shí)踐基礎(chǔ)上,總結(jié)出具體項(xiàng)目實(shí)施中主要注意的兩個(gè)方面:
其一,教學(xué)內(nèi)容主要事項(xiàng)。前導(dǎo)課因教學(xué)課時(shí)的影響,所以教師為趕教學(xué)進(jìn)度,對(duì)結(jié)構(gòu)體、基本操作以及共用體等知識(shí)的介紹不充分,也不夠完善,更談不上輔助實(shí)例進(jìn)行講解。對(duì)此,要根據(jù)學(xué)生對(duì)這些知識(shí)點(diǎn)的掌握程度,利用5個(gè)學(xué)時(shí),實(shí)施區(qū)別式、輔導(dǎo)式的教學(xué)。
其二,由于學(xué)生對(duì)于項(xiàng)目管理的知識(shí)較少,針對(duì)此種情況,可以采用兩個(gè)階段實(shí)施補(bǔ)課行動(dòng)。第一個(gè)階段,安排曾經(jīng)做得比較好的學(xué)生進(jìn)行講解相關(guān)經(jīng)驗(yàn);第二階段,為項(xiàng)目實(shí)施階段,教師應(yīng)該針對(duì)學(xué)生發(fā)生的問題,及時(shí)給與指導(dǎo),直到學(xué)生弄懂為止。
總之,通過此種教學(xué)方法,教師在觀察學(xué)生、幫助學(xué)生的過程中,既開闊了視野,也提高了專業(yè)水平。項(xiàng)目教學(xué)法是師生共同完成項(xiàng)目、共同取得進(jìn)步的好方法。
摘要: C語言課程設(shè)計(jì)是一門實(shí)踐性非常強(qiáng)的課程。本文主要討論了獨(dú)立學(xué)院C語言課程設(shè)計(jì)的教學(xué)。在教學(xué)過程中,針對(duì)獨(dú)立學(xué)院學(xué)生的特點(diǎn),設(shè)計(jì)了一套行之有效的教學(xué)流程。學(xué)生在教師指導(dǎo)下全程參與完整的項(xiàng)目開發(fā),教學(xué)效果良好。最后結(jié)合課程實(shí)際情況,分析了教學(xué)過程中存在的問題,并提出了相應(yīng)的解決辦法。
關(guān)鍵詞: 課程設(shè)計(jì);教學(xué)改革;項(xiàng)目教學(xué)法;軟件開發(fā)
0 引言
獨(dú)立學(xué)院是我國高等教育辦學(xué)體制改革創(chuàng)新的重要成果。為了造就適應(yīng)企業(yè)需求的高素質(zhì)應(yīng)用型人才,結(jié)合獨(dú)立學(xué)院學(xué)生基礎(chǔ)水平,在獨(dú)立學(xué)院的教學(xué)工作中應(yīng)加強(qiáng)對(duì)學(xué)生實(shí)踐動(dòng)手能力的培養(yǎng)。為此,在《C程序設(shè)計(jì)》理論教學(xué)及實(shí)驗(yàn)教學(xué)的基礎(chǔ)上,我院針對(duì)非計(jì)算機(jī)專業(yè)學(xué)生開展了一項(xiàng)實(shí)踐教學(xué)環(huán)節(jié):C語言課程設(shè)計(jì)。此課程自開設(shè)以來,受到學(xué)生的廣泛歡迎。在做課程設(shè)計(jì)的過程中,同學(xué)們既融會(huì)貫通了C語言基本語法,同時(shí)又通過項(xiàng)目實(shí)戰(zhàn)切實(shí)提高了動(dòng)手編程、調(diào)試程序的能力。對(duì)于學(xué)生來說,獨(dú)立完成一個(gè)完整的項(xiàng)目,帶來的成就感和自信心,有利于后續(xù)學(xué)習(xí)的開展。
1 C語言課程設(shè)計(jì)教學(xué)現(xiàn)狀與教學(xué)亮點(diǎn)
C語言課程設(shè)計(jì)開課時(shí)間為大一下學(xué)期,共計(jì)32學(xué)時(shí),授課對(duì)象為電子科技大學(xué)成都學(xué)院微電子技術(shù)系本、專科生。針對(duì)教學(xué)對(duì)象的差異,分別制定了專科、本科教學(xué)大綱,同時(shí)在多媒體課件的制作上,講求簡潔、美觀并突出教學(xué)重點(diǎn)。
盡管已經(jīng)學(xué)習(xí)過C語言,但多數(shù)同學(xué)在經(jīng)過一個(gè)學(xué)期之后,忘記大半,掌握的知識(shí)點(diǎn)零碎、構(gòu)不成系統(tǒng),所以在進(jìn)行項(xiàng)目開發(fā)之前,必須進(jìn)行C語言基礎(chǔ)知識(shí)的串講。在串講過程中,通過回顧已學(xué)內(nèi)容、演示典型例題,達(dá)到溫故知新的效果。這就要求教師精心準(zhǔn)備串講上機(jī)練習(xí)題。題目要有的放矢,同時(shí)又與后續(xù)項(xiàng)目開發(fā)有一定相關(guān)。數(shù)組、函數(shù)、指針、結(jié)構(gòu)體、文件操作,各布置一道綜合練習(xí)題目。這樣一步一個(gè)腳印地把項(xiàng)目開發(fā)之前的技術(shù)知識(shí)準(zhǔn)備工作做好。
1.1 教學(xué)過程設(shè)計(jì)合理 C課程設(shè)計(jì)整個(gè)教學(xué)過程如圖1所示,分為準(zhǔn)備、開發(fā)、匯報(bào)三個(gè)階段。為了杜絕部分同學(xué)對(duì)實(shí)驗(yàn)課抱著蒙混過關(guān)的僥幸心理,要做好該課程的課前動(dòng)員工作。課前動(dòng)員工作主要體現(xiàn)兩個(gè)要點(diǎn):一是敦促C語言基礎(chǔ)知識(shí)不扎實(shí)的同學(xué)重視概念和基礎(chǔ),因?yàn)闆]有良好的基礎(chǔ),急于編程只會(huì)導(dǎo)致錯(cuò)誤百出。二是使同學(xué)明確本門課程考核評(píng)分標(biāo)準(zhǔn),端正其學(xué)習(xí)態(tài)度,激發(fā)其學(xué)習(xí)熱情,為后續(xù)教學(xué)的開展做好準(zhǔn)備。自由分組以二至三人一組為宜,每組推選一名基礎(chǔ)好的同學(xué),擔(dān)任開發(fā)組長。組長帶領(lǐng)組員進(jìn)行自主選題、開發(fā)設(shè)計(jì)、書寫設(shè)計(jì)報(bào)告、參加答辯等工作。
1.2 題目選擇多樣化 選擇一個(gè)難度適中、具有一定的趣味性并與同學(xué)生活息息相關(guān)的題目是開展課程設(shè)計(jì)的首要任務(wù)。題目太難會(huì)嚴(yán)重打擊同學(xué)的自信心和積極性;題目簡單會(huì)導(dǎo)致同學(xué)對(duì)C語言不夠重視,學(xué)不到東西。進(jìn)過嚴(yán)格篩選,仔細(xì)比較,同時(shí)結(jié)合《C程序設(shè)計(jì)》課堂教學(xué)經(jīng)驗(yàn),歸納出適合學(xué)生現(xiàn)有水平的題目主要有兩大類:一是各種管理系統(tǒng),比如學(xué)生成績管理系統(tǒng)、運(yùn)動(dòng)會(huì)成績管理系統(tǒng)、圖書管理系統(tǒng)等;二是各類小游戲,比如貪吃蛇游戲、搬箱子游戲、掃雷游戲等。允許學(xué)生根據(jù)自己的興趣愛好自擬題目,但需經(jīng)過教師審查通過。
教師同時(shí)提供多個(gè)題目并簡單講解每個(gè)題目的設(shè)計(jì)需求、難度、涉及到的知識(shí)點(diǎn)以及完成后的代碼量等,供學(xué)生自由選擇。題目多樣性、難度階梯性帶來的效果有兩方面:一方面學(xué)生能選到自己感興趣,適合自己水平的題目;另一方面可以最大程度地避免互相抄襲等情況的發(fā)生。
考慮到獨(dú)立學(xué)院的學(xué)生總的來說編程基礎(chǔ)不夠扎實(shí),為了讓同學(xué)盡快入門,明確到底要做什么,在需求分析階段,教師需要當(dāng)堂分別操作一個(gè)管理系統(tǒng)的程序以及一個(gè)小游戲程序,演示其功能。這樣一來學(xué)生可以對(duì)項(xiàng)目開發(fā)建立起直觀印象,同時(shí)對(duì)用C語言開發(fā)界面做到心里有數(shù)。
1.3 引導(dǎo)為主 課程設(shè)計(jì)過程中,學(xué)生的角色定位為初級(jí)開發(fā)人員。教師做為指導(dǎo)者對(duì)其具體開發(fā)過程進(jìn)行監(jiān)督指導(dǎo)。很多同學(xué)一遇到問題,就特別依賴?yán)蠋煟M蠋煄兔φ{(diào)試或者直接給出解決方法。針對(duì)同學(xué)提問,教師應(yīng)采取引導(dǎo)的方式,啟發(fā)同學(xué)獨(dú)立思考,而不直接給出問題的答案。同時(shí)鼓勵(lì)學(xué)生網(wǎng)上查閱相關(guān)文檔或者帖子,通過網(wǎng)絡(luò)解決問題。一段時(shí)間后,如果該同學(xué)還是不能自行解決,教師再給出解決方法。這樣做不但可以提高同學(xué)獨(dú)立分析問題、自主解決問題的能力,還可以鍛煉其與項(xiàng)目組其他同學(xué)合作交流并獲取新知識(shí)的能力。
對(duì)于同學(xué)提出的奇思妙想,教師應(yīng)予熱情的鼓勵(lì)。同學(xué)在開發(fā)過程中,能夠有自己的想法是一件好事,教師可以和同學(xué)探討其想法,并盡可能地幫助其付諸實(shí)踐。對(duì)于部分好學(xué)的同學(xué),教師可以通過介紹參考教材、推薦開發(fā)網(wǎng)站等,讓這一部分同學(xué)依照自己的興趣自學(xué)。
1.4 關(guān)注教學(xué)細(xì)節(jié) 學(xué)生水平參差不齊這一特點(diǎn)在獨(dú)立學(xué)院三本學(xué)生中體現(xiàn)的特別明顯,所以在教學(xué)過程中,不能搞“一刀切”。根據(jù)筆者的教學(xué)經(jīng)驗(yàn),同學(xué)中兩級(jí)分化情形嚴(yán)重,呈“啞鈴型”結(jié)構(gòu)。針對(duì)這一特點(diǎn),結(jié)合非計(jì)算機(jī)專業(yè)對(duì)C語言能力的要求,在教學(xué)目標(biāo)的制定上,需要提高辨識(shí)度,按照“高、中、低”區(qū)分學(xué)生水平,對(duì)學(xué)生做階梯型的要求。
作為一門實(shí)驗(yàn)上機(jī)課程,尤其需要保證教學(xué)時(shí)間的連貫性。時(shí)間太短,學(xué)生剛有思路就下課了,導(dǎo)致半途而廢;時(shí)間太長,學(xué)生長期呆在實(shí)驗(yàn)室上一門課程導(dǎo)致疲勞,降低學(xué)習(xí)效率。經(jīng)過探索,以四節(jié)課為一大節(jié)課最為適宜。
1.5 考核全面 合理的評(píng)分機(jī)制有利于提高學(xué)生的學(xué)習(xí)積極性。作為注重動(dòng)手能力的實(shí)踐實(shí)驗(yàn)課,C語言課程設(shè)計(jì)的考核方法自然不能沿用理論課的考核方式。
獨(dú)立學(xué)院的培養(yǎng)方向是應(yīng)用型人才,要求學(xué)生將來進(jìn)入企業(yè)能夠快速融入項(xiàng)目團(tuán)隊(duì),這就需要全面考核同學(xué)的動(dòng)手能力、工程概念以及人品素質(zhì)。C課程設(shè)計(jì)的考核兼顧了團(tuán)隊(duì)與個(gè)人表現(xiàn),關(guān)注動(dòng)手能力與基礎(chǔ)知識(shí)的考察。本門課程總分100分,各項(xiàng)具體分值分配如圖2所示。
課堂表現(xiàn)包括考勤、開發(fā)過程中的認(rèn)真程度、團(tuán)隊(duì)合作精神等方面。實(shí)驗(yàn)報(bào)告寫作內(nèi)容主要包括:需求分析、系統(tǒng)設(shè)計(jì)框圖、關(guān)鍵算法實(shí)現(xiàn)等。通過書寫實(shí)驗(yàn)報(bào)告,提高學(xué)生書面表達(dá)技巧,鍛煉其書寫開發(fā)文檔的能力。
在課程設(shè)計(jì)的最后,我們安排了項(xiàng)目答辯。答辯環(huán)節(jié)考核學(xué)生語言表達(dá)能力、臨場應(yīng)變能力以及對(duì)相關(guān)知識(shí)的理解,為同學(xué)提供了一個(gè)展示自我的舞臺(tái)。答辯過程分為三個(gè)環(huán)節(jié):演示講解環(huán)節(jié)、學(xué)生提問環(huán)節(jié)、教師提問環(huán)節(jié),每個(gè)環(huán)節(jié)各占10分。在演示講解環(huán)節(jié)中,首先由項(xiàng)目組長操作演示可執(zhí)行程序,并介紹各個(gè)組員的分工、開發(fā)過程中遇到的問題以及解決辦法、程序的創(chuàng)新點(diǎn)等。在學(xué)生提問環(huán)節(jié)和教師提問環(huán)節(jié)中,大家可以對(duì)自己感興趣的問題進(jìn)行提問,教師在此過程中需要作適當(dāng)引導(dǎo)。最后綜合各個(gè)環(huán)節(jié)得分,當(dāng)場給出每組答辯分?jǐn)?shù)。在答辯結(jié)束后,教師應(yīng)對(duì)表現(xiàn)良好的團(tuán)隊(duì)予以表揚(yáng)和肯定。最后,要求同學(xué)上交實(shí)驗(yàn)報(bào)告冊(cè)。
2 課程后期建設(shè)目標(biāo)及思考
為了在實(shí)踐中提高學(xué)生的綜合素質(zhì),達(dá)到C課程設(shè)計(jì)“動(dòng)手、動(dòng)腦、動(dòng)嘴、動(dòng)筆”的教學(xué)目標(biāo),在教學(xué)內(nèi)容的安排上尤其要突出以下幾點(diǎn):
2.1 在教學(xué)過程中有意識(shí)地向?qū)W生灌輸軟件工程的思想、項(xiàng)目管理的相關(guān)知識(shí)。
2.2 在教學(xué)中應(yīng)注意培養(yǎng)學(xué)生養(yǎng)成良好的編程習(xí)慣。按照國內(nèi)知名公司的編程規(guī)范來做要求。
2.3 注重培養(yǎng)學(xué)生自學(xué)能力和獨(dú)立思考能力以及團(tuán)隊(duì)合作精神。
2.4 教學(xué)時(shí)間安排在實(shí)踐專周,這樣學(xué)生有整天的時(shí)間投入到項(xiàng)目開發(fā)過程中去,從而保證了教學(xué)效果的連續(xù)性。
3 總結(jié)
C課程設(shè)計(jì)從完成一個(gè)小項(xiàng)目出發(fā),全面增強(qiáng)了學(xué)生的動(dòng)手能力,使學(xué)生在從事C程序開發(fā)時(shí),能系統(tǒng)地考慮問題,合理安排項(xiàng)目進(jìn)度,熟悉開發(fā)過程,能有效地與他人合作和交往,同時(shí)培養(yǎng)了其工作責(zé)任心,為以后走上工作崗位打下了初步的基礎(chǔ)。
在C語言課程設(shè)計(jì)教學(xué)過程中,充分認(rèn)識(shí)到要讓作為初學(xué)者的學(xué)生,在短時(shí)間內(nèi)掌握并熟練使用C語言獨(dú)立完成項(xiàng)目,較難做到。作為教師,一定要認(rèn)真?zhèn)湔n,合理安排教學(xué)內(nèi)容,提供精簡的練習(xí)案例。同時(shí)在教學(xué)過程中以引導(dǎo)為主,激發(fā)學(xué)生的潛能,讓學(xué)生自主學(xué)習(xí)。實(shí)踐證明,課程設(shè)計(jì)結(jié)課后,絕大多數(shù)同學(xué)都對(duì)C語言編程產(chǎn)生了濃厚的興趣。
摘要: 本文提出了成果為本的教學(xué)改革實(shí)踐,通過研究課程的教學(xué)目標(biāo),轉(zhuǎn)換為學(xué)生的學(xué)習(xí)目標(biāo),根據(jù)學(xué)生的學(xué)習(xí)目標(biāo)列出可量化可考核的學(xué)習(xí)成果形式,根據(jù)學(xué)習(xí)成果設(shè)計(jì)教學(xué)內(nèi)容和教學(xué)活動(dòng),制定與學(xué)習(xí)成果相關(guān)的考核評(píng)價(jià)體系,根據(jù)考核結(jié)果改進(jìn)后續(xù)教學(xué),形成教學(xué)中的良性循環(huán)。
關(guān)鍵詞: 成果為本;C語言;綜合課程設(shè)計(jì);教學(xué)改革
0 引言
《C語言綜合課程設(shè)計(jì)》是計(jì)算機(jī)相關(guān)專業(yè)的一門專業(yè)基礎(chǔ)課,實(shí)踐性較強(qiáng),是學(xué)生在學(xué)習(xí)完《C語言程序設(shè)計(jì)基礎(chǔ)》課程后的一次全面綜合項(xiàng)目訓(xùn)練。這門課程的教學(xué)目標(biāo)是讓學(xué)生掌握基于結(jié)構(gòu)化的小型項(xiàng)目開發(fā)流程,其中包括功能分析、模塊劃分、算法設(shè)計(jì)、編碼實(shí)現(xiàn);掌握課程設(shè)計(jì)報(bào)告的撰寫,用軟件工程的思想來描述項(xiàng)目的開發(fā)過程。為了加深學(xué)生對(duì)C語言知識(shí)的綜合運(yùn)用,切實(shí)提高學(xué)生的程序編寫能力,對(duì)《C語言綜合課程設(shè)計(jì)》課程教學(xué)方法進(jìn)行了改革。
1 教學(xué)中存在的問題
該課程教學(xué)效果的好壞直接影響后續(xù)專業(yè)課程的學(xué)習(xí),提高教學(xué)效果,增強(qiáng)學(xué)生的學(xué)習(xí)興趣,是我們這次教學(xué)改革的目標(biāo)。在本校該課程的以往教學(xué)中,存在以下問題:①課程人數(shù)較多,涉及計(jì)算機(jī)科學(xué)與技術(shù)、信息管理與信息系統(tǒng)、軟件工程、網(wǎng)絡(luò)工程四個(gè)專業(yè)的500多名學(xué)生,學(xué)生程序設(shè)計(jì)基礎(chǔ)差別較大,有針對(duì)性的教學(xué)比較困難;② 有些學(xué)生對(duì)課程重視程度不夠,不明確課程學(xué)習(xí)目標(biāo);③周課時(shí)為2,課程內(nèi)容較多,深入講解困難;④采用案例驅(qū)動(dòng)法教學(xué),課內(nèi)主要進(jìn)行案例分析和問題討論,大量的編碼任務(wù)要求學(xué)生在課外完成,這對(duì)學(xué)生課外學(xué)習(xí)的主動(dòng)性要求較高,同時(shí)老師的課外輔導(dǎo)壓力也很大;⑤考核方式采用大作業(yè)方式,不能很好地反映學(xué)生理論和實(shí)踐兩方面的學(xué)習(xí)效果。
2 基于成果為本的教學(xué)改革探討
成果為本的教育是“以人人都能學(xué)會(huì)為前提,以學(xué)生為中心、成果為導(dǎo)向而設(shè)計(jì)的”教育模式,強(qiáng)調(diào)能力培養(yǎng)和能力訓(xùn)練。該教學(xué)理念是20世紀(jì)90年代開始興起的一種教育模式,該教育理念最早在美國、英國、澳大利亞、新西蘭等地實(shí)施并取得了較好的反饋。近年來香港教育資助委員會(huì)在香港的高等院校中逐步開展成果為本的教學(xué)改革,其中香港理工大學(xué)早在2004年初已開始將成果為本的教學(xué)理念納入該校的課程教學(xué)中,在教學(xué)及評(píng)估方面取得了顯著的成績。在這種教育理念下,教師不僅要能運(yùn)用現(xiàn)有的教育水平和科研要求實(shí)施教學(xué),而且要培養(yǎng)學(xué)生應(yīng)對(duì)未來、適應(yīng)未來的能力。
本次根據(jù)實(shí)際教學(xué)中存在的問題,將成果為本的教育理念應(yīng)用到《C語言綜合課程設(shè)計(jì)》的教學(xué)中,提高教學(xué)效果。教學(xué)改革的思路為:根據(jù)該課程的教學(xué)大綱,明確課程教學(xué)目標(biāo),并轉(zhuǎn)換為學(xué)生的學(xué)習(xí)目標(biāo),根據(jù)學(xué)生的學(xué)習(xí)目標(biāo)列出可量化可考核的學(xué)習(xí)成果形式,根據(jù)學(xué)習(xí)成果設(shè)計(jì)教學(xué)內(nèi)容和教學(xué)活動(dòng),制定與學(xué)習(xí)成果相關(guān)的考核評(píng)價(jià)體系,經(jīng)考核明確課程教學(xué)與課程目標(biāo)之間的差距,為后續(xù)教學(xué)提供參考,使課程目標(biāo)與教學(xué)實(shí)施過程形成了良性的閉環(huán)控制系統(tǒng)。
3 課程教學(xué)實(shí)施
在教學(xué)目標(biāo)上,以適應(yīng)應(yīng)用型本科教材改革的需要為目標(biāo),充分體現(xiàn)專業(yè)特色,有所創(chuàng)新和突破。走訪IT公司和企業(yè)了解他們對(duì)人才的需求規(guī)格,明確教學(xué)目標(biāo)中的知識(shí)目標(biāo)、素質(zhì)目標(biāo)和能力目標(biāo)。修訂教學(xué)大綱,并轉(zhuǎn)換為學(xué)生的學(xué)習(xí)目標(biāo),建立ASK模型(Attitude素質(zhì);Skill能力;Knowledge知識(shí))。
課程學(xué)習(xí)目標(biāo)是指學(xué)生通過該課程的學(xué)習(xí)后,能夠做什么,具有什么樣的能力和技能,教師在制定學(xué)習(xí)成果目標(biāo)時(shí)應(yīng)當(dāng)考慮該課程需要傳授哪些知識(shí)給學(xué)生,學(xué)生應(yīng)達(dá)到什么樣的理解程度以及如何體現(xiàn)學(xué)生是否理解這些知識(shí)。George Brown學(xué)院提出的觀點(diǎn)認(rèn)為課程學(xué)習(xí)目標(biāo)的制定需要保證成果是可衡量評(píng)估的,便于在教學(xué)過程中檢查成果的完成情況,成果應(yīng)當(dāng)與學(xué)生的實(shí)際能力有關(guān),并具有一定的社會(huì)意義,成果目標(biāo)的數(shù)量以4~5個(gè)為宜,成果過多會(huì)導(dǎo)致學(xué)生的專注度降低,影響學(xué)習(xí)效果。制定與學(xué)習(xí)目標(biāo)相匹配的成果形式和教學(xué)方法,形成《C語言綜合課程設(shè)計(jì)》課程“基于成果為本的教學(xué)設(shè)計(jì)”方案。(表1)
教學(xué)實(shí)施中,根據(jù)課程學(xué)習(xí)目標(biāo),設(shè)計(jì)三個(gè)教學(xué)項(xiàng)目,分別為“手機(jī)通訊錄管理系統(tǒng)”,考查結(jié)構(gòu)體、指針、文件的操作,“家庭財(cái)務(wù)管理系統(tǒng)”,考查鏈表、指針、文件的操作,“時(shí)鐘的設(shè)計(jì)”,考查圖像界面設(shè)計(jì)。由3位學(xué)生組成開發(fā)小組針對(duì)不同項(xiàng)目,輪值項(xiàng)目負(fù)責(zé)人,明確分工、模擬項(xiàng)目開發(fā)流程,依據(jù)開發(fā)環(huán)節(jié)進(jìn)行任務(wù)分解,并在各個(gè)開發(fā)環(huán)節(jié)撰寫開發(fā)文檔,最終形成課程設(shè)計(jì)報(bào)告。課堂以學(xué)生研討為主,教師講解為輔;課下以學(xué)生獨(dú)立編碼為主,教師引導(dǎo)為輔。項(xiàng)目完成后,學(xué)生演示項(xiàng)目進(jìn)行答辯,展示項(xiàng)目
成果。
4 總結(jié)
基于成果為本的教學(xué)模式可以幫助學(xué)生清晰明確地定義課程的學(xué)習(xí)目標(biāo)和學(xué)完課程后需要掌握的知識(shí)和能力。在《C語言綜合課程設(shè)計(jì)》教學(xué)改革中,明確了學(xué)生學(xué)習(xí)目標(biāo)和學(xué)習(xí)成果形式,將學(xué)習(xí)目標(biāo)、學(xué)習(xí)成果和考核形成進(jìn)行統(tǒng)一。教學(xué)中采用項(xiàng)目教學(xué)法等多種教學(xué)方法,完成配套教案、講稿、課程多媒體教學(xué)文件(PPT)、網(wǎng)絡(luò)課程等教學(xué)資源建設(shè),提高學(xué)生學(xué)習(xí)興趣和增強(qiáng)學(xué)生的就業(yè)能力。
摘 要: 針對(duì)C語言實(shí)踐教學(xué)中存在的問題,提出在C語言課程設(shè)計(jì)的教學(xué)中采用項(xiàng)目驅(qū)動(dòng)的分組教學(xué)模式。融合軟件工程思想,從項(xiàng)目設(shè)計(jì)、分組劃分、模塊化思想應(yīng)用、編程思想訓(xùn)練、測試、考核方式等多個(gè)方面改革實(shí)踐教學(xué)環(huán)節(jié),因材施教,使得學(xué)生在解決實(shí)際問題的過程中,通過分工協(xié)作,提高自主學(xué)習(xí)能力,培養(yǎng)起團(tuán)隊(duì)合作精神,從而提高教學(xué)效果和教育質(zhì)量。
關(guān)鍵詞: C語言課程設(shè)計(jì); 項(xiàng)目驅(qū)動(dòng); 分組教學(xué); 模塊化思想; 協(xié)作
0 引言
當(dāng)今社會(huì),隨著信息技術(shù)的高速發(fā)展,各種程序設(shè)計(jì)語言蓬勃發(fā)展,如C、C++、JAVA、C#等。在這些語言中,C語言是各高等院校的計(jì)算機(jī)及相關(guān)專業(yè)的一門核心基礎(chǔ)課程,它的學(xué)習(xí)效果會(huì)極大程度影響學(xué)生后續(xù)相關(guān)課程,如數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、算法分析以及其他高級(jí)語言的學(xué)習(xí)。
作為一種實(shí)踐性很強(qiáng)的程序設(shè)計(jì)語言,C語言課程的教學(xué)一般采用理論教學(xué)結(jié)合上機(jī)實(shí)踐的模式,理論教學(xué)以講授語法和基本算法為主,上機(jī)實(shí)踐則主要練習(xí)簡單程序的編寫,通常以驗(yàn)證性實(shí)驗(yàn)為主,以掌握、鞏固基礎(chǔ)的語法為目的。從教學(xué)效果來看,學(xué)生雖然掌握了不少語法知識(shí),但在面對(duì)實(shí)際問題時(shí),往往不能靈活應(yīng)用。為了進(jìn)一步拓展學(xué)生的實(shí)踐編程能力,我們學(xué)院繼兩個(gè)學(xué)期的C語言教學(xué)后開設(shè)了“C語言課程設(shè)計(jì)”課程,該課程以設(shè)計(jì)性和綜合性實(shí)驗(yàn)為主,重點(diǎn)培養(yǎng)和鍛煉學(xué)生獨(dú)立分析問題,解決實(shí)際問題能力。根據(jù)這一教學(xué)目標(biāo),我們結(jié)合日常教學(xué),針對(duì)實(shí)踐教學(xué)中存在的不足,開展項(xiàng)目驅(qū)動(dòng)的分組教學(xué)方法,使學(xué)生形成自主和協(xié)作型的學(xué)習(xí)模式。
1 教學(xué)現(xiàn)狀
C語言是一種面向過程的結(jié)構(gòu)化程序設(shè)計(jì)語言,具有數(shù)據(jù)類型較多、表達(dá)式豐富、語法結(jié)構(gòu)復(fù)雜、語法規(guī)則繁多等特點(diǎn),其授課對(duì)象往往又是第一次接觸程序設(shè)計(jì)語言的低年級(jí)學(xué)生,這些都給學(xué)生學(xué)習(xí)和教師教學(xué)帶來了難度。通過對(duì)學(xué)生進(jìn)行教學(xué)效果調(diào)查,發(fā)現(xiàn)在“理論+實(shí)驗(yàn)”的教學(xué)模式中,由于課時(shí)限制等各種因素,實(shí)際教學(xué)常存在著如下問題。
⑴ 實(shí)驗(yàn)訓(xùn)練以知識(shí)點(diǎn)訓(xùn)練為主,與實(shí)際應(yīng)用存在脫節(jié)。
在理論課后的上機(jī)練習(xí),通常是針對(duì)特定語法設(shè)計(jì),形式上采用練習(xí)書上的例子、驗(yàn)證某個(gè)語法或者實(shí)現(xiàn)一些簡單的相關(guān)算法,驗(yàn)證性實(shí)驗(yàn)占了多數(shù)。這種訓(xùn)練模式雖然能夠加深學(xué)生對(duì)各種語法細(xì)節(jié)的認(rèn)識(shí),但同時(shí)導(dǎo)致的問題是,學(xué)生容易孤立地去看待各章節(jié)的語法,割裂了各知識(shí)之間的聯(lián)系,在編程時(shí)以模仿改寫書上的程序?yàn)橹鳎啡惫こ绦椭R(shí),處于被動(dòng)灌輸?shù)膶W(xué)習(xí)狀態(tài),常常會(huì)覺得語法知識(shí)點(diǎn)繁瑣、內(nèi)容枯燥,很難調(diào)動(dòng)積極性,當(dāng)面對(duì)實(shí)際工程問題時(shí),程序規(guī)模一大,就束手無策,無法有機(jī)地綜合應(yīng)用所學(xué)知識(shí)去解決問題。
⑵ 沒有形成系統(tǒng)化的分析過程。
由于教學(xué)和教材均側(cè)重于對(duì)語法進(jìn)行講授和剖析,未強(qiáng)調(diào)分析及測試的重要性,也沒有將軟件工程的思想融合在實(shí)踐教學(xué)中,因此,長久以來,學(xué)生養(yǎng)成一接觸題目就馬上開始編寫代碼的習(xí)慣,并且,運(yùn)行時(shí)往往僅按照預(yù)先設(shè)定的正確的輸入數(shù)據(jù),去驗(yàn)證自己的所編的程序是否正確。
⑶ 忽略算法邏輯思維能力的培養(yǎng)。
從學(xué)習(xí)效果來看,學(xué)生常存在著兩種誤區(qū),一種是將參與和獲得計(jì)算機(jī)等級(jí)考試證書作為學(xué)習(xí)目的,這就導(dǎo)致他們習(xí)慣于程序填空題形式的編程方式,獨(dú)立編程能力欠缺;一種是對(duì)C語言中的指針、遞歸問題存在畏難情緒,又認(rèn)為就業(yè)時(shí)可以選擇其他語言工具如Java來避免這些難點(diǎn),沒有認(rèn)識(shí)到指針和遞歸的真正價(jià)值在于學(xué)習(xí)它們過程中得到的思維深度[1],忽略了推理能力、抽象思考能力方面的培養(yǎng)。
⑷ 實(shí)踐操作能力不強(qiáng)。
學(xué)生的實(shí)驗(yàn)操作能力不強(qiáng)主要表現(xiàn)在對(duì)程序運(yùn)行中一些常見編譯問題無法很快做出反應(yīng),不會(huì)依據(jù)提示信息去判斷發(fā)生錯(cuò)誤的原因,對(duì)一些運(yùn)行問題更是束手無策,通常一有問題產(chǎn)生,就轉(zhuǎn)向?qū)ふ遗涮椎膶?shí)驗(yàn)指導(dǎo)書中所提供的正確答案,或者依賴教師指出問題所在,幫忙改正錯(cuò)誤。
2 項(xiàng)目驅(qū)動(dòng)的分組教學(xué)方法的具體實(shí)施
建構(gòu)主義學(xué)習(xí)理論認(rèn)為,個(gè)體的認(rèn)知發(fā)展與學(xué)習(xí)過程密切相關(guān),知識(shí)獲取是以學(xué)習(xí)者為中心,利用“情境”、“協(xié)作”、“會(huì)話”等學(xué)習(xí)要素,通過意義建構(gòu)的方式而獲得。針對(duì)C語言課程設(shè)計(jì)這一門實(shí)踐性非常強(qiáng)的課程,我們采用項(xiàng)目驅(qū)動(dòng)的分組教學(xué)方法,在建構(gòu)主義學(xué)習(xí)理論基礎(chǔ)上進(jìn)行教學(xué)設(shè)計(jì),以學(xué)生為中心,融合軟件工程思想,以培養(yǎng)學(xué)生的程序設(shè)計(jì)能力、創(chuàng)新能力、邏輯思維能力和協(xié)作精神為主線,通過項(xiàng)目任務(wù)引導(dǎo)他們主動(dòng)學(xué)習(xí),去深入理解軟件設(shè)計(jì)思想,并加深對(duì)重要知識(shí)點(diǎn)的理解。為了將課內(nèi)實(shí)踐和課外自學(xué)有機(jī)結(jié)合起來,我們將15個(gè)學(xué)時(shí)的上機(jī)實(shí)踐分為5次,集中安排在5天內(nèi),每次上機(jī)后留充足時(shí)間,要求學(xué)生去查閱資料,提升獲取信息、解讀信息的能力。整個(gè)教學(xué)過程中,需要在多個(gè)教學(xué)環(huán)節(jié)注意改革和創(chuàng)新。
2.1 項(xiàng)目設(shè)計(jì)
項(xiàng)目的提出是能否調(diào)動(dòng)學(xué)生學(xué)習(xí)積極性的關(guān)鍵。目前隨著信息化建設(shè)的深入,軟件在各個(gè)行業(yè)都獲得了廣泛應(yīng)用,其實(shí)際應(yīng)用領(lǐng)域非常廣泛。課程設(shè)計(jì)應(yīng)該提供一個(gè)良好的學(xué)習(xí)“情境”,要結(jié)合教學(xué)目標(biāo),來模擬演練實(shí)際軟件開發(fā)過程。項(xiàng)目的設(shè)計(jì)需要遵循以下幾點(diǎn):①選擇學(xué)生比較熟悉的領(lǐng)域,貼近學(xué)生生活和學(xué)習(xí)方面的應(yīng)用,避免選擇需要較強(qiáng)專業(yè)背景、業(yè)務(wù)邏輯復(fù)雜的應(yīng)用,例如可以選擇學(xué)生選課、書籍管理、宿舍管理等,而盡量不要去選擇企業(yè)人事管理之類的應(yīng)用。這樣可以方便學(xué)生理解或完整需求,激發(fā)他們用程序去解決現(xiàn)實(shí)生活問題的興趣。②功能上要有層次性,可劃分為一般性要求和可拓展性要求,一般性要求指出必須實(shí)現(xiàn)的功能,可拓展性要求則指出可以擴(kuò)展的功能,引導(dǎo)學(xué)生去探索和想象,可以方便開展梯隊(duì)型教學(xué)。③從項(xiàng)目的編碼實(shí)現(xiàn)考慮,要能涵蓋C語言中的結(jié)構(gòu)體或聯(lián)合體等復(fù)雜數(shù)據(jù)類型,體現(xiàn)函數(shù)和指針這條主線,以促進(jìn)學(xué)生去綜合運(yùn)用和深入理解這些重要的知識(shí)點(diǎn)。
2.2 分組劃分
一個(gè)軟件的開發(fā)僅依靠個(gè)人力量往往是無法實(shí)現(xiàn)的。軟件生命周期的各個(gè)階段需要軟件小組開發(fā)人員協(xié)作完成[2],因此,在課程設(shè)計(jì)教學(xué)中,我們采用分組教學(xué)模式來培養(yǎng)學(xué)生的團(tuán)隊(duì)合作意識(shí)和團(tuán)隊(duì)精神,來充分體現(xiàn)合作與競爭、分層教學(xué)與因材施教[3],并且還可以通過幫帶方式和組內(nèi)討論消化掉一部分問題。分組是否合理、有效,直接影響協(xié)作模式能否取得良好的教學(xué)效果。在C語言課程設(shè)計(jì)實(shí)踐中,我們按照任務(wù)量安排人數(shù),學(xué)生分為以3-5人一組,按照組內(nèi)搭配合理,組件平衡原則分配,在分組時(shí)充分考慮到學(xué)生的個(gè)體能力差異,使學(xué)生能在交流合作過程中取長補(bǔ)短。分組觀點(diǎn)認(rèn)為組內(nèi)成員之間的合作關(guān)系可以有“頭腦風(fēng)暴”式、模擬課題式、同伴互助式、角色扮演式和組合式[4]。這里,我們可以結(jié)合軟件開發(fā)的分工特點(diǎn),將角色扮演應(yīng)用到課程設(shè)計(jì)的分組中,由小組組長擔(dān)當(dāng)開發(fā)經(jīng)理角色,其他人員針對(duì)其特長分別擔(dān)當(dāng)需求分析師、架構(gòu)設(shè)計(jì)師、開發(fā)人員、測試人員等角色,根據(jù)開發(fā)階段的不同,各成員可以扮演不同類型的角色。
2.3 培養(yǎng)學(xué)生用模塊化思想對(duì)實(shí)際問題進(jìn)行分析和設(shè)計(jì)
結(jié)構(gòu)化方法強(qiáng)調(diào)以模塊為中心,采用模塊化、自頂向下、逐步求精設(shè)計(jì)過程。項(xiàng)目驅(qū)動(dòng)的教學(xué)要培養(yǎng)學(xué)生用模塊化思想思考復(fù)雜問題,即將程序劃分成獨(dú)立命名且可獨(dú)立訪問的模塊,最后裝配集成模塊完成指定的功能。指導(dǎo)過程中,不僅需要糾正學(xué)生一接觸題目馬上編碼的習(xí)慣,而且需要糾正學(xué)生在main方法中編寫所有代碼的習(xí)慣,這種方式會(huì)使得整個(gè)函數(shù)變得龐雜,代碼冗余大,不利于分工協(xié)作,也給閱讀和維護(hù)帶來很大的困難。當(dāng)學(xué)生在程序分解主函數(shù)和若干個(gè)其他函數(shù)時(shí),發(fā)現(xiàn)常存在著隨意分解、隨心所欲定義函數(shù)的現(xiàn)象,針對(duì)這一情況,教師可以先以一個(gè)項(xiàng)目為例,如成績管理系統(tǒng),演示模塊的分解過程,說明內(nèi)聚性和耦合性要求[5]。在實(shí)際項(xiàng)目應(yīng)用時(shí),要求學(xué)生按功能分解,模塊內(nèi)的函數(shù)做到功能盡量單一,留出接口供其他模塊調(diào)用,一個(gè)模塊對(duì)應(yīng)一個(gè)文件,便于分工協(xié)作。各小組在完成按模塊劃分的軟件體系結(jié)構(gòu)圖后,才被允許進(jìn)入下一個(gè)詳細(xì)設(shè)計(jì)編碼階段。
2.4 強(qiáng)化編程思想的訓(xùn)練,加深對(duì)重要知識(shí)點(diǎn)的理解
算法是程序設(shè)計(jì)的靈魂,教學(xué)中需要成功訓(xùn)練好學(xué)生的頭腦,使他們變得足夠熟練、敏捷和靈活,需要訓(xùn)練學(xué)生在多個(gè)抽象層次上同時(shí)思考問題[1]。因此,實(shí)踐過程中,要求學(xué)生熟練應(yīng)用程序流程圖或偽代碼等工具設(shè)計(jì)算法,在組內(nèi)展開討論,比較不同算法實(shí)現(xiàn)方案的優(yōu)劣,以及如何在完成程序的功能基礎(chǔ)上,改善程序結(jié)構(gòu),優(yōu)化算法,進(jìn)一步提高運(yùn)行效率和空間利用率。
對(duì)C語言而言,訓(xùn)練學(xué)生的編程思想,離不開指針、函數(shù)參數(shù)傳遞這些重要概念,是否真正理解這些概念也與能否成為一個(gè)優(yōu)秀程序員直接相關(guān)。在學(xué)生編碼時(shí),可幫助他們建立內(nèi)存模型,通過跟蹤每條語句的執(zhí)行情況,感受不同數(shù)據(jù)類型在內(nèi)存中所占用的空間,直觀地觀察內(nèi)存布局變化、變量的生命周期、變量狀態(tài)的變化等,去深入理解這些概念尤其是指針的本質(zhì)。
程序設(shè)計(jì)的另一目的是要培養(yǎng)學(xué)生的操作能力,其中很重要的一點(diǎn)就是提高調(diào)試能力。調(diào)試的方便與否與程序書寫風(fēng)格密切相關(guān),學(xué)生通常不注意代碼的規(guī)范化,出現(xiàn)沒有層次縮進(jìn),標(biāo)記符隨意命名、詞不達(dá)意,也沒有必要的注釋等現(xiàn)象,這些給查錯(cuò)和閱讀帶來了很大的不便,不利于分組模式下的協(xié)作開發(fā)和維護(hù),因此,實(shí)踐教學(xué)時(shí)應(yīng)該培養(yǎng)學(xué)生注意良好程序風(fēng)格。此外,教學(xué)時(shí)還需糾正部分學(xué)生寫代碼一寫到底的習(xí)慣,讓學(xué)生認(rèn)識(shí)到程序的編寫是一個(gè)調(diào)試-修改-調(diào)試的反復(fù)迭代過程,要在多次錯(cuò)誤或失敗中獲取調(diào)試經(jīng)驗(yàn)。在學(xué)生出現(xiàn)錯(cuò)誤時(shí),要引導(dǎo)學(xué)生根據(jù)錯(cuò)誤和警告信息,分析辨別是語法錯(cuò)誤還是邏輯錯(cuò)誤,并鼓勵(lì)學(xué)生使用調(diào)試工具,應(yīng)用斷點(diǎn)跟蹤和對(duì)分查找等調(diào)試方法,去主動(dòng)地發(fā)現(xiàn)和解決問題。
測試在軟件開發(fā)中占重要地位,軟件測試的工作量往往占軟件開發(fā)總工作量的40%以上。從學(xué)生實(shí)踐情況調(diào)查來看,測試往往是初學(xué)C語言的學(xué)生特別容易忽略的,普遍出現(xiàn)一些諸如不重視人機(jī)交互界面設(shè)計(jì),沒有輸入提示或出錯(cuò)提示信息,僅使用在預(yù)定范圍內(nèi)、滿足預(yù)定格式要求的正確數(shù)據(jù)進(jìn)行測試等問題。項(xiàng)目驅(qū)動(dòng)的教學(xué)尤其應(yīng)該注重培養(yǎng)學(xué)生的測試意識(shí),指導(dǎo)學(xué)生學(xué)會(huì)設(shè)計(jì)簡單的有效測試用例和無效測試用例,并開展組內(nèi)測試和組間測試,以提高測試效率和質(zhì)量。
2.5 考核方式改革
對(duì)不容易理解的常量、變量和語句有注釋\&5%\&函數(shù)、變量取名較規(guī)范易懂\&5%\&函數(shù)功能是否滿足功能內(nèi)聚\&15%\&調(diào)試手段\&會(huì)單步運(yùn)行到任何一個(gè)語句,查看變量值\&5%\&會(huì)斷點(diǎn)調(diào)試\&5%\&總結(jié)報(bào)告\&用流程圖或偽代碼描述一個(gè)函數(shù)的算法\&10%\&有小組分工情況說明和各自的經(jīng)驗(yàn)總結(jié)\&5%\&語言簡練,條理清楚,圖表規(guī)范,附程序清單\&10%\&]
分組形式的課程設(shè)計(jì)需采用彈性考核機(jī)制,個(gè)人考核、組內(nèi)考核和教師考核有機(jī)結(jié)合方式。課程設(shè)計(jì)考核成績=個(gè)人自我評(píng)價(jià)(15%)+組內(nèi)評(píng)價(jià)(35%)+教師評(píng)價(jià)(50%)。自我評(píng)價(jià)是促進(jìn)學(xué)生反思的一種有效手段,組內(nèi)評(píng)價(jià)可以觀察學(xué)生組內(nèi)交流協(xié)調(diào)時(shí)有沒有突出表現(xiàn),而為避免少數(shù)學(xué)生抄襲實(shí)驗(yàn)報(bào)告,教師評(píng)價(jià)采用答辯形式,考核學(xué)生的實(shí)際操作能力、對(duì)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和算法的理解程度,以及功能和算法上的應(yīng)用亮點(diǎn)。考核的具體內(nèi)容和評(píng)分標(biāo)準(zhǔn)可以多元化,比如對(duì)一個(gè)用鏈表實(shí)現(xiàn)圖書信息管理系統(tǒng)的項(xiàng)目,可以按表1來指定具體考核標(biāo)準(zhǔn)。
3 結(jié)束語
本學(xué)院的C語言課程設(shè)計(jì)教學(xué)實(shí)踐表明,通過項(xiàng)目驅(qū)動(dòng)的分組教學(xué)法的實(shí)施,能充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,學(xué)生的編程邏輯性和實(shí)踐能力都得到了明顯提高。在模仿實(shí)際開發(fā)環(huán)境過程中,學(xué)生對(duì)項(xiàng)目開展的整個(gè)流程和各環(huán)節(jié)的具體要求程有了切實(shí)了解,積累了一定的項(xiàng)目開發(fā)經(jīng)驗(yàn),培養(yǎng)起了團(tuán)隊(duì)協(xié)作能力。為了能更好地提高學(xué)生實(shí)踐能力,為他們將來從事軟件開發(fā)工作奠定扎實(shí)基礎(chǔ),我們還需要在今后的實(shí)踐教學(xué)中繼續(xù)開拓和探索,以期達(dá)到更好的實(shí)踐效果。