吳華 ??∑肌“藏S彩
【摘 要】“高級語言程序設計”是計算機專業(yè)一門重要的專業(yè)基礎課,又因為其實踐性很強,如何改變傳統(tǒng)的教學方法、提高學生自主學習能力,值得探索。本文提出改革措施,將項目化教學與案例引入式教學相結合,并利用“課堂派”軟件組織教學,可幫助學生建立程序設計思想,提高學生分析問題、解決問題的能力。
【關鍵詞】項目化教學;案例引入式教學;高級語言程序設計
0 引言
“高級語言程序設計”對于計算機類專業(yè)的學生而言,是一門非常重要的基礎課,也是計算機專業(yè)課程體系中第一門專業(yè)基礎課。該課程著重培養(yǎng)學生的邏輯思維能力和編程思想,對后續(xù)課程影響較大,比如數(shù)據結構、Java、C#等。由于C語言涉及的數(shù)據類型及表達式豐富、語法結構復雜,而傳統(tǒng)的教學模式以講解語法知識為主,缺乏對整體結構的分析,學生普遍覺得該門課程難學難懂。另外,C語言注重實踐性,若沒有大量的上機實驗,很難掌握編程技巧。因此,如何改變“高級語言程序設計”課程的教學方法,引導學生自主學習,并能結合項目化教學[1]使學生學以致用,具有重要的意義。
1 教學中存在的問題分析
經過三年的“高級語言程序設計”教學,發(fā)現(xiàn)C語言是學生學得較吃力、教師教得較辛苦的一門課。一般“高級語言程序設計”在大學一年級開設,學生覺得該門課難懂難學,分析原因有以下幾點:
1.1 部分學生的數(shù)學基礎較差。而教師舉例時,常涉及一些數(shù)學問題,學生對C語言產生畏難情緒。因此,教師在舉例時,應少舉涉及數(shù)學的案例,可以找其他貼近生活的例子代替。比如在講解循環(huán)語句時,可舉“猴子吃桃的問題”、“由星形組成倒三角”這樣的案例,讓學生通過編程,對C語言產生興趣。
1.2 有些學生的英語基礎較差,一看到C語言是用英語書寫,心里就打退堂鼓,實際C語言常用的關鍵字只有32個,只要熟記這些關鍵字,就不會影響編程。
1.3 大一新生剛接觸C語言,還沒有形成編程思想,對所學的知識不理解或不會運用,并且有疑難問題的時候得不到及時的指導。另外,學生課下上機實驗的時間不足,也造成學生覺得C語言難學。傳統(tǒng)的C語言教學模式注重語法知識的講解,而忽視對算法的分析,使學生“只見樹木,不見森林”,缺乏對C語言程序整體架構的認識。
2 教學方法改革措施
2.1 培養(yǎng)學生的學習興趣,注重算法的講解
課堂應采用案例引入式教學[2],通過舉貼近生活的案例,激發(fā)學生的學習興趣,提高其自主學習能力。例如,第一堂課可通過在屏幕顯示“Hello World”的例子,讓學生了解C語言程序的運行過程,熟悉C語言編譯環(huán)境。編出一個小程序后,學生會獲得一定的成就感,從而愿意進一步學習C語言。另外,C語言教學中不能只停留在講解它的語法規(guī)則,而應注重算法的分析,從而培養(yǎng)學生的編程思想??梢远嘣O計一些解決實際問題的實驗,比如水仙花數(shù)、小學生四則運算測試系統(tǒng)、猜數(shù)游戲、超市計費系統(tǒng)等,讓學生通過分析問題找出解決問題的方法,再給出設計算法,應用流程圖或N-S圖畫出算法,然后按照流程圖編程。這樣有利于培養(yǎng)學生形成編程思想,使其對程序的整體邏輯結構有一清晰的認識,從而掌握獨立分析問題、解決問題的方法。
2.2 項目化教學與案例教學相結合
選取合適的項目貫穿整個學期的教學,并將項目分成若干個子項目,每個子項目又包含二到三個任務。即制定一個綜合項目,每學完一章,讓學生分組(一般4-6人一組)完成該項目的一部分功能,逐步完善該項目,等學完所有的知識點后,可完成該項目。因為真實的項目規(guī)模龐大,初學者因為沒有相關的知識儲備,在一個C語言的教學周期內完不成那些龐大的項目。另外,對于沒有任何編程經驗的學生來說,需要對真實的項目進行裁剪,選擇合適的內容進行教學。項目化教學可結合采用分組教學法,讓學生分組協(xié)作完成,在教學實施中,教師要花心思,制定相關的獎勵機制,監(jiān)管學生的學習動態(tài),避免“吃大鍋飯”的情形。可在每個小組中挑選一到兩個專業(yè)素質較好的學生擔任正副組長,讓他們對本組項目全權負責,發(fā)揮優(yōu)秀學生在課程設計中的積極作用。在這個過程中,教師起引導組織監(jiān)管的作用,同時亦要講授案例中所貫穿的知識和技能,亦可在課堂上演示部分程序代碼,激發(fā)學生循序漸進地完成程序。文獻[3]中選取“學生成績管理系統(tǒng)”作為貫穿整個學期的綜合項目,共分成6個子項目。在學期初教師給出該項目的整體要求和軟件開發(fā)流程(見圖1),讓學生在這些子項目中分別完成系統(tǒng)的界面設計、成績錄入、成績顯示、成績查詢、學生信息的插入和刪除。從而將“高級語言程序設計”課程的知識點串接起來。在每節(jié)課的開始采用案例引導式教學,精選案例,既貼近生活又能涵蓋知識點,使學生提高學習C語言的興趣,較快掌握程序設計的思想和方法。
2.3 利用“課堂派”軟件組織教學,改革課程考核方式
“課堂派”是一款基于微信的APP軟件,北京吉利學院教師利用“課堂派”可與學生增強互動,學生可在線提交作業(yè)、提問,教師可在線查閱作業(yè)、答疑、上傳資料等。該軟件還提供考勤、作業(yè)查重等功能。利用該軟件能優(yōu)化課堂教學過程,實現(xiàn)網絡資源共享,促進學生與教師間交流,從而有利于培養(yǎng)學生自主性、研究性學習能力。另外,C語言課程的考核方式應采用過程性考核[4,5]方式,分數(shù)比例為:總成績=考勤(10%)+平時作業(yè)(10%)+實訓項目(20%)+期中考試(20%)+期末考試(40%)。其中每一項都按100分計算。平時作業(yè)包括課堂練習和課后作業(yè),每次提交的作業(yè)和課上練習均記入總成績。實訓項目調試成功且顯示正確結果得60分,項目報告完整、規(guī)范得40分。期中考試為上機編程,期末考試為試卷答題。通過采用這種考核方式,能激勵學生注重平時作業(yè)的提交、認真聽講,把握上機實驗的機會,不斷調試程序、解決語法錯誤,培養(yǎng)自己分析問題、解決問題的能力。
3 結束語
“高級語言程序設計”是一門非常重要的專業(yè)基礎課,而且實踐性很強。因此應采用項目化教學與案例教學相結合,并采用分組教學的組織模式,通過一個或兩個綜合項目將C語言的知識點串接起來。每堂課通過案例引出新內容。該教學法可激發(fā)學生的學習興趣,較快掌握程序設計的思想和方法,培養(yǎng)學生自主學習能力,積累項目經驗,為今后就業(yè)提升職業(yè)競爭力。
【參考文獻】
[1]謝進軍,賈坤鵬,宋大成.項目教學法在《C語言程序設計》課程中的應用[J].科學與財富,2013(07):251.
[2]胡楓.《C語言程序設計》的案例式教學的設計[J].青海師范大學學報:自然科學版,2010(04):48-51.
[3]盧麗君,褚翠霞.C語言程序設計項目教程[M].華中科技大學出版社,2014,09.
[4]胡香娟.C語言程序設計實驗教學方法探討[J].科技創(chuàng)新與應用,2012(12):266.
[5]何艷敏.“高級語言程序設計”的教學方法研究[J].中國校外教學(理論),2010(04):166-167.
[責任編輯:湯靜]