摘要: 本文闡述了項目教學法在C語言程序設計教學中的應用,并針對高職高專學生的實際情況,結合專業理論和實踐,提出了項目教學法在C語言程序設計課程中的具體而有效的實施方法。
關鍵詞: 項目教學法 C語言程序設計 應用
在傳統的C語言程序設計教學過程中,教師們基本上都是不約而同地采取同一個模式進行教學——先介紹該語言涉及的數據類型及運算符、表達式,然后再介紹其語法規則,講解例題,最后照書上機實驗,教學方法比較死板。對于高職高專學生而言,學生往往是上課時理論知識好像會了,但一到上機操作,理論又都忘得差不多了,學生的學習興趣和積極性大打折扣。“項目教學法”就可以很好地解決這個問題。“項目教學法”是通過實施一個完整的項目而進行的教學活動,其目的是在課堂教學中把理論與實踐教學有機地結合起來,充分發掘學生的創造潛能,提高學生解決實際問題的綜合能力。基于建構主義的項目教學法與傳統教學法相比,主要表現在改變了三個傳統的中心:由教師為中心轉變為以學生為中心、由以課本為中心轉變為以“項目”為中心、以課堂為中心轉變為以實際經驗為中心。所以運用項目教學法進行教學設計時,教師是意義建構的組織者、幫助者,學生是認知的主體,是知識意義的主動建構者。
一、用貼近生活的例子,激發學生學習興趣
項目教學法的靈魂是通過一個完整的項目,使純粹的理論學習與實際應用結合起來,促進學生學習理論知識。學習程序設計語言的目的在于編寫出能夠解決人們生活中的問題的軟件,因此,在C語言教學中應聯系生活實際,列舉現實生活中或工作中所能碰到的問題,以及如何用C語言知識進行解決,這樣可以刺激學生的學習興趣,激發他們學好C語言的欲望。例如在講解多分支結構switch語句時,我們就可以例舉去郵局寄信所需郵資的例子,對于這個問題,學生既熟悉又陌生。學生熟悉是因為只要在郵局寄過信,就會知道郵局是根據信的重量來收取郵資的,陌生的是學生不知用程序怎么來實現。通過對這種貼近生活的實際問題的分析講解,學生比較容易接受新的知識,也容易將所學的知識用于實踐、明確學習的目的性。
二、通過項目驅動,增強學生學習信心
項目教學法中一個很重要的思想就是項目驅動法。如果我們一味地按照C語言程序設計課程的教學過程,按照教材編排的章節次序講授,即先介紹變量定義,然后逐條介紹指令的語法結構,再針對某一條指令列舉簡單而不完整的例程。這樣的教學內容安排使學生很快感到厭倦,大量的概念和語句使學生望而生畏。幾個星期過去了,學生往往是仍不能體會自己編程的樂趣,從而失去學習C語言的信心,學生也根本無從下手編寫完整的程序,甚至連一些基本概念都不甚了解。實踐證明:如果學習的目標太難或太遠,由于缺乏近期動機,學生的學習主動性和興趣可能會降低。因此,我們可以在講課開始先給學生展示一個有趣的、短小的,但功能完善的小程序,在這個程序中既包含有當天課程要學的新的知識,也大量使用前面課程中已經學過的指令,調動學生學習的興趣。當學生看到這個實例的時候,興趣就被激發起來了,往往會摩拳擦掌、躍躍欲試,這樣就大大提高了他們學習知識的欲望。這種基于項目的教學方法從應用的角度入手,逐步把學生“引進門”,并且較好地調動了學生的積極性和學習熱情,讓學生從具體任務中去學習新知識、鞏固舊知識,讓學生感覺到原來程序設計并不是那么神秘而高不可攀的,自己也是能夠編寫一定的程序的,增強了學生的自信心。當學生通過自己的努力編寫出自己的程序時,那種喜悅是不言而喻的。
三、分組討論,及時總結,提高學生自學能力
在講授的條件下,課堂以教師為中心,完全在教師的直接控制下,而項目教學法主要采用的是討論法,提出問題后把學生分成若干小組,對教師提出的問題進行分組討論,充分發揮學生自主學習的能力。在討論的條件下,教師的角色變了,討論開始以后,他們主要的任務是聽、看或記下學生的發言,將教師用自己的言行直接控制班級的作用減少到最低限度,但是最后教師也要對教學內容進行總結。學生學習由于是局部的、分散的,很難形成整體清晰的表象,因此,給他們學習基礎知識造成了困難。及時總結歸納是一個很好的方法,這樣做有利于溫故而知新,理出頭緒。歸納可以是對一條語句多方面的歸納,也可以是對一類語句的歸納。一章或內容相對獨立的部分講完后,應及時地給學生進行小結。如條件語句有兩種形式:簡單形式(單分支條件語句、雙分支條件語句、擴展形式的條件語句)、復雜形式(if語句的嵌套)。由于分支嵌套書寫不方便、結構不清晰,引入多種情況語句(switch)。條件語句可用于分支、循環、查找、終止程序等。通過適時的小結與歸納,學生不但能對基礎知識加以鞏固,還有助于提高記憶效率,便于迅速地提高知識水平。
四、培養動手能力,鞏固所學知識
項目教學法的目的在于與理論知識與實際操作相結合。C語言程序設計是一門實踐性很強的課程,既要掌握概念,又要動手編程、上機調試運行,通過調試程序發現和暴露編程過程中的一些習慣性錯誤,可以培養良好的編程習慣。教師應重視實踐環節,多指導學生編制程序和調試程序,要求學生在上機前弄清上機實驗的指導思想和要求,編好程序、認真檢查、反復思考。上機時輸入程序并完成語法檢查,再運行程序,檢查運行結果,同時記錄下在程序調試過程中所遇到的問題及解決辦法。實習結束后應完成實驗報告,重點是調試程序的過程及經驗總結,逐步積累調試程序的經驗。在實驗課中教師要發揮其主導地位,在上機前教師先講清基本算法,然后讓學生動手編寫程序、上機調試,教師在指導實驗時,應讓學生先獨立解決問題,在學生解決問題探索的過程中不能獨立完成時,教師應給予及時的指導。這樣才能鍛煉學生獨立調試程序的能力,增強學生對困難問題解決的信心,培養解決實際問題,對知識進行儲存、遷移、轉換和應用的能力,為以后繼續學習打下堅實的基礎。最后教師提出改進算法的思想,讓學生自己進一步優化自己的算法和程序。
通過項目教學的實施,學生發現問題、分析問題和解決問題的能力大大提高,這種教學方法對于以培養學生專業技能為主要方向的職業學校來說比較適合。與此同時,項目教學法的實施對教師本身也提出了更高的要求,它要求教師必須具備完成一個項目所可能涉及的所有知識或協調各科知識的綜合能力,必須將全部或絕大部分教學目標規定的內容精心組織,導入學生的項目完成過程,實現教學目標可控、學生行為可控。總之,在教學中,通過歸納、小結、定性理解、定量編程、適時上機,學生的學習積極性與學習效果也都得到了明顯提高。
參考文獻:
[1]劉樹聃.項目驅動、案例教學方式在計算機應用軟件教學中的應用.計算機與網絡.
[2]曹煌興,周曉宏.項目開發教學法的教學設計策略及其應用[J].職教論壇,2005,(18).
[3]黃明和.“導師制下項目驅動教學模式”的研究與實踐.計算機教育,2007.1.