王國強 張紅霞
【摘 要】針對C語言程序設計課程在地方性綜合大學教學中存在的問題,提出了“面對面的課堂教學+引領式的網(wǎng)絡教學”的混合教學模式,同時注重學生的實踐能力培養(yǎng),采用更科學和完善的考核方式。教學效果表明這些改革與實踐的方法不僅能較好調(diào)動學生的學習積極性和主動性,還能較好的培養(yǎng)其分析問題和解決問題的能力,并且有助于提高C語言程序設計課程的教學質(zhì)量和水平。
【關鍵詞】C語言程序設計;混合式教學;教學改革;實踐
Teaching Reformation and Practice of 《C language programming design》Course
WANG Guo-qiang ZHANG Hong-xia
(College of Computer and Information Engineering, Luoyang Institute of Science and Technology, Luoyang Henan 471023, China)
【Abstract】For the existing teaching problems of《C language programming design》 course in the local comprehensive university,we propose the blending teaching model of face to face class teaching and Instructor-led web teaching. In addition, we also pay attention to the students practice ability, and adopt more scientific and perfect examination method. Teaching result shows these reformation and practice methods can not only arouse the learning enthusiasm and initiative of the students, but also train the ability of analyzing and solving the problem.These reformation and practice methods also contribute to the improvement of the teaching quality and level of《C language programming design》course.
【Key words】 C language programming; Blending teaching; Teaching reformation; Practice
0 引言
《C語言程序設計》是計算機專業(yè)的專業(yè)基礎課,對學生良好的編程風格的和編程能力和思維的培養(yǎng)至關重要,是計算機本科教學的基礎。由于該門課程內(nèi)容豐富,理論抽象,是學生接觸的第一門程序設計課程,學生很難一下建立起程序設計的相應概念,容易產(chǎn)生畏懼和茫然的情緒,一直以來《C語言程序設計》課程的教學效果總是不很理想。為此,我們對C語言程序設計教學進行了有益的改革和實踐。
1 教學設計
該課程的內(nèi)容按照計算機科學與技術專業(yè)規(guī)范設置,體現(xiàn)了本學科應用型人才培養(yǎng)的核心思想。在此結構框架下,為適應地方性綜合大學的教學需要,提出了“面對面的課堂教學+引領式的網(wǎng)絡教學”的混合教學模式。
理論教學以課堂講授為主,同時借助網(wǎng)絡教學平臺,拓展課堂講授的相關知識,便于學生自主學習、鞏固課堂所學內(nèi)容。另外,組織獨立習題課,針對學生作業(yè)中出現(xiàn)的典型問題進行深入探討。
1.1 精心設計教學內(nèi)容
《C語言程序設計》課程的內(nèi)容豐富,但是該課程的學時有限,因此應根據(jù)學生的需求和現(xiàn)實及教學目標,對課程的內(nèi)容進行精心的篩選,把教學內(nèi)容分成兩部分,對于一些基本的、重要的內(nèi)容要在課堂上精講、細講,而對于有些較簡單和擴展的內(nèi)容可以放到網(wǎng)絡上,讓學生自學。這樣可以在有限的課堂教學中突出重點。在課程內(nèi)容的安排上總是有具體的案例引入各個知識點,這樣容易引起學生的學習興趣。然后由淺入深,循序漸進。
1.2 注重C語言課程與其后續(xù)課程的銜接
每個專業(yè)都有其課程體系,在計算機科學與技術專業(yè)C語言是計算機專業(yè)核心基礎課程--數(shù)據(jù)結構課程的一門非常重要的先修課程,這就要求講C語言課程的老師必須清楚該課程與數(shù)據(jù)結構的銜接點,在講課時可以有的放矢的把和數(shù)據(jù)結構聯(lián)系緊密的內(nèi)容預先告知學生,這樣學生就會對相關知識點印象深刻,到數(shù)據(jù)結構課中就很容易用的得心應手。比如在C語言中有一個給已有類型重新命名的typedef,很多教材中都不講這個內(nèi)容,但數(shù)據(jù)結構中用的很廣泛,因此,講C語言的老師就要補充這方面的內(nèi)容。
2 混合式教學
C語言教學采用“面對面的課堂教學+引領式的網(wǎng)絡教學”的混合教學模式。
2.1 面對面的課堂教學
面對面的課堂教學包括課堂教學、實驗室實驗及課程設計。
教師利用傳統(tǒng)的教室、黑板、粉筆再輔以課件、動畫等多媒體手段詳細講解本課程中所有的重點、難點知識,課堂面授方式師生直接面對面交流,學生感覺比較親切,所有問題可以及時解決。當然課堂面授絕不是填鴨式地滿堂灌,而是按照“翻轉課堂”的教學理念,教師課前把問題提出來,讓學生帶著問題到指定網(wǎng)站提前自學相關內(nèi)容,認真準備教師提出的問題。在課堂上教師要起主導作用,重視與學生的互動,運用多種教學方法比如啟發(fā)式教學、對比式教學、案例式教學,引導和引領學生學習,每個知識點都通過實際案例引入,每堂課都要精心設計一些有趣的問題進行課堂提問,組織學生進行討論,通過提問、討論引發(fā)學生思考,提問、討論是師生、生生互動、交流的主要方式,使課堂教學中能很好地體現(xiàn)“教師主導—學生主體”的教學策略。通過這種面對面的互動加深學生對基本知識的理解,掌握系統(tǒng)的理論知識,打下堅實的理論基礎,同時面授有利于師生之間生生的情感交流。
C語言程序設計是實踐性很強的課程,理論必須應用于實踐,把所學知識靈活應用才是學習這門課程的終級目標,而要達到這樣的目標必須通過大量的實踐,因此,在面授理論的同時必須引導學生進行實踐,實踐包括上機實驗和課程設計。教師要把實驗的要求、題目等信息提前告訴學生,要求所有學生必須提前準備,按要求在實驗室完成所有實驗。實驗要考核,考核成績納入總成績。課程設計是課程結束后進行的很重要的實踐環(huán)節(jié),本課程課程設計給出20個參考題目,這些題目都是綜合性的,學生可任選一題,學生也可以自己設計題目,但必須經(jīng)過教師認可。課程設計完成后要寫出課程設計報告。通過課程設計,使學生進一步理解和掌握了所學各種基本知識,培養(yǎng)了學生綜合運用所學的理論知識和方法獨立分析和解決問題的能力;訓練了學生用系統(tǒng)的觀點和軟件開發(fā)一般規(guī)范進行軟件開發(fā),使學生具備軟件工作者所應具備的科學的工作方法和作風,效果良好。
學生完成實驗后,不僅要求學生提交高質(zhì)量的規(guī)范的實驗報告,還要引導學生互相交流,開闊視野。好的實驗作業(yè)、課程設計要放到班級公共郵箱里和所有學生共享。
2.2 引領式的網(wǎng)絡教學
在學習的過程中要充分發(fā)揮學生的主體作用。引領式的網(wǎng)絡學習就是在教師引導和引領下,學生在指定時間內(nèi)有目標、按計劃地學習指定的課程內(nèi)容。在網(wǎng)絡學習中既要發(fā)揮學生的主體作用,又要體現(xiàn)教師的引導和引領作用。其中教師的參與是全程的,既注重前期的教學設計,也重視學習過程的參與,教師在這個過程中不是可有可無的,而是要起到非常重要的作用。
課堂面授的時間畢竟是有限的,而C語言程序設計的內(nèi)容又非常的豐富,學生要真正掌握并靈活運用知識,光靠面授的時間是遠遠不夠的,課外必須花大量時間學習。本課程是我院2013年精品資源共享課程,精品資源共享課程網(wǎng)站為學生提供全方位的學習輔導支持,尤其是細化到知識點的課程知識體系導航。網(wǎng)站上集成了豐富的教學資源、擴展資源,圖文并茂,形式多樣,生動活潑,瀏覽或下載都很方便,對校內(nèi)外師生均免費開放。網(wǎng)站主要欄目有:教學團隊、課程概要、在線學習、拓展資源、在線考試、在線答疑、在線作業(yè)、學生獲獎、學科檢索等,增加了學生課外自主學習的手段,拓寬了學生的視野,提高了學生的學習興趣。學生可以通過這個平臺實現(xiàn)C語言程序設計的在線學習,而且這也是這門課程不可或缺的一部分,是課堂教學的必要補充。學生在線學習依然要在教師的引領和引導下進行,每次課前教師都要布置具體的學習內(nèi)容,對學生的學習活動提供指導,使學生明確學習任務,要求學生通過網(wǎng)絡學習掌握相應的知識點,學生在學習的過程中遇到的問題可以在線與教師、同學討論,比較集中的問題還可以在課堂上進一步討論。學生通過網(wǎng)絡學習過程構建自己的知識體系、發(fā)揮主體作用。在學生自主學習的網(wǎng)絡學習活動中,由于沒有教師面對面的監(jiān)督,為了保證學生順利地進行學習,教師必須加強監(jiān)管、引導和引領。教師必須清楚學生學習進度,學生必須明白評價標準。網(wǎng)絡教學中要確保教師與學生之間有良好的、廣泛的交流和互動,不僅要能很好地體現(xiàn)教師在整個教學活動過程中的主導作用而且要充分發(fā)揮學生的主體性。
3 把課程與考研、軟考、相關競賽有機的結合起來
由于C語言程序設計課程是計算機專業(yè)的核心基礎課,在軟件水平資格考試以及研究生入學考試中均占有重要的地位。在教學過程中有意識地把考研和軟考引入教學中,在課程的教學網(wǎng)站中提供了大量的練習題、考研真題,視頻講座以供學生參考學習,使學生學完本課程后能夠從容應對考研和軟考中的相關題目。組織和鼓勵學生參加程序員,高級程序員證書考試,輔導學生參加各種編程競賽比如ACM大賽,通過考試驗證學生掌握知識的情況。
4 課外教學指導
為了提高學生的研究問題能力和應用水平,課程組教師搜集了大量研究性和應用性的中英文學術論文和碩博論文,經(jīng)過分類整理后在教學網(wǎng)站上提供下載鏈接,以供學生課外閱讀,開闊學生的眼界。學術論文是歷史的沉淀,它具有繼承、論證和說明等諸多作用。學生通過查閱這些資料,有助于他們了解本學科的發(fā)展歷史和最近研究動態(tài),使得他們在面對新問題時候能盡快找到切入口,從而提高他們學習和掌握知識的效率。同時在當今人才培養(yǎng)過,尤其重視外語掌握能力的重要性,而英文論文對學生英文閱讀能力水平的培養(yǎng)起到了積極的作用。
5 學習評價
5.1 課程考核
原來的考核方式是考試,期末試卷成績所占比例較大,成績構成:平時:20%,實驗:20%,期末試卷成績:60%。這種考核方式存在問題是雖然平時和實驗加起來占40%,但實際上平時監(jiān)管不夠嚴厲,平時成績很容易得到,有些學生平時不好好學習,期末突擊一下也能過關,不能真正學到知識。為了使學生能踏踏實實地學到知識,必須加強對學習過程的管理,因此必須加大平時成績在綜合成績中的比例,具體比例為:考勤:10%,作業(yè):10% ,平時測試:10%,網(wǎng)絡學習:20%,實驗:20%,末考:30%。通過一些措施讓學生把功夫下在平時,腳踏實地實實在在地學到知識。具體措施:
①嚴格出勤,出勤情況計入綜合成績。
②平時上課要經(jīng)常進行小測驗、提問、討論情況計入綜合成績。
③進行階段性考試,成績計入綜合成績。
④嚴格平時作業(yè)的批改,嚴禁抄襲,作業(yè)情況計入綜合成績。
⑤加強對網(wǎng)絡學習的管理,要記錄考勤數(shù)據(jù),由于網(wǎng)絡環(huán)境下學生學習的自主性較強,如果沒有良好的網(wǎng)絡監(jiān)督機制,容易發(fā)生“出勤不出力”的“掛網(wǎng)”現(xiàn)象,不能保質(zhì)保量地完成網(wǎng)絡學習任務。因此在網(wǎng)絡平臺上有日志管理對學生的網(wǎng)絡學習情況進行實時跟蹤。
⑥對實驗必須加強考核??己藘?nèi)容不僅包括屬于知識記憶性的內(nèi)容,還要包括能力內(nèi)容和實踐內(nèi)容??己朔绞綉獜挠欣诮虒W目標的達成、有利于調(diào)動師生參與、有利于課程管理的目的出發(fā),采取教師評分與學生的自評、互評相結合,對實驗報告的評分與對學生的口頭報告、實驗表現(xiàn)和結果展示的評分相結合,定性與定量考核相結合等多種形式。認真驗收每次實驗成績以及課程設計成績。通過各種有效的考核形式,指導和幫助學生在平時的實驗過程中培養(yǎng)擴散思維、求異思維、逆向思維等創(chuàng)新思維能力,促使學生開放性個性及創(chuàng)新精神的養(yǎng)成。
5.2 建立試題庫
課題組組織教師討論試卷的命題,開展試題庫建設,保證試卷質(zhì)量、內(nèi)容、題量、覆蓋面、難易程度均符合教學大綱要求,試卷有標準答案,評分標準客觀、準確,采用流水作業(yè)閱卷,閱卷嚴格規(guī)范。
5.3 考試分析
每學期課程考試結束后,課程組組織教師對本門課程的考試進行詳細的分析,找出問題所在,以便以后的改進。
6 實施效果
6.1 教學效果
兩年多來,C語言程序設計課程開展了一些有益的教學改革的探索和嘗試,取得了很好的教學效果,我們曾就教學改革進行了問卷調(diào)查,調(diào)查表明改革受到了學生的好評和肯定,滿意度達到90%,學生普遍認為改革后調(diào)動了他們對課程學習的主體意識與參與熱情,有助于其知識與技能的獲得。表1為評價結果:(10分制)
與以往的成績的比較如表2所示。
表2 課程成績對比表
6.2 學生獲獎情況
2013河南省ACM大賽三等獎;第一屆“中國軟件杯”大學生軟件設計大賽三等獎;第三屆“藍橋杯”全國軟件專業(yè)人才與創(chuàng)業(yè)大賽全國總決賽一等獎;第三屆“藍橋杯”全國軟件專業(yè)人才與創(chuàng)業(yè)大賽河南賽區(qū)一等獎;2013年“藍橋杯”全國軟件專業(yè)人才設計與創(chuàng)業(yè)大賽河南賽區(qū)三等獎;河南省第五屆大學生程序設計競賽三等獎。
7 結束語
通過數(shù)C 語言程序設計課程的教學改革,采用混合式教學顯著提高了C語言程序設計課程的教學效果和質(zhì)量,為后續(xù)課程的學習打下了堅實的基礎,對于推動學科發(fā)展,對于在高校教學中推廣混合教學模式、改革高等教育的教學教法都具有積極意義。