項目驅動教學法在C語言課程中的應用的論文
摘要:項目驅動教學法是在教學過程中以項目為主線展開,把相關的知識點融入到項目的各個環節中。本文采用項目驅動教學法對C語言課程的宏觀和微觀設計進行了探討。
關鍵詞:項目驅動教學法;C語言
C語言是近年來在國內外得到迅速推廣應用的一種計算機語言,它功能豐富,表達力強,使用靈活方便,目標程序運行效率高,兼有高級語言與低級語言的許多特點,幾乎任何一種機型、任何一種操作系統都支持C語言開發。但C語言涉及的概念比較復雜,規則繁多,使用靈活,不少初學者難以掌握、易出錯。多年來,按照高等職業技術教育的培養目標,基于建構主義學習理論,采用項目驅動教學法,對《C語言程序設計》課程的教學進行積極改革與探索,取得了良好的教學效果。現對教學過程進行總結。
項目驅動教學法
所謂項目驅動教學法是指在教學過程中以一個個項目為主線來展開,把相關的知識點融入到項目的各個環節中去,層層推進項目。通過對問題的深化或功能擴充,來拓寬知識的廣度和深度,直至得到一個完整的項目解決方案,從而達到學習知識、培養能力的目的。
項目驅動教學法符合建構主義學習理論的要求。建構主義的學習理論認為,學習的過程是學生自己在頭腦中對知識的意義進行建構的過程,學生是教學過程中意義建構的主體,教師是這個建構過程的指導者、幫助者,教師組織教學過程的重要任務,就是要注意學生意義建構過程自身的.特點,幫助而不是代替學生實現這個建構過程。情景、協作、會話和意義建構是建構主義學習環境的四大要素。其中,前三者是教學的手段,學生頭腦中的知識意義建構是教學目的。在項目驅動教學法中,“情景”即是指整個課程的學習處在實現教師提出的設計項目的環境中,“協作、會話”是教師對學生的指導以及師生之間、學生之間的討論,而“意義建構”則是指學生通過課程的學習,最終完成項目并基本掌握實用軟件的開發要領。
在《C語言程序設計》課程中實施項目驅動教學法
(一)課程宏觀設計
所謂宏觀設計是指按照建構主義學習理論的要求,課程教學以一個合適的課程設計項目為引導,以該實例設計和改進中的問題為動力,逐步深入、全面展開課程內容。全課程以核心內容貫穿,同時每次課也從有關的實際問題入手,由實例引入本堂課的內容。這樣,無論是對整個課程還是對每堂具體的課程,學生的學習目標都十分明確、具體。教師授課時先演示自己開發的系統,使學生在明確任務的同時產生濃厚的興趣。宏觀設計的另一個重要任務就是教師要明確每次項目拓展所引出的C語言知識點及學生應掌握的技能,使其能夠涵蓋C語言程序設計的所有基本內容。如完成學生成績管理信息系統項目,必須學習以下知識:掌握文件的建立、打開、讀、寫等操作;系統的組織包含數據輸入、修改、查詢、統計、輸出等功能,必須掌握函數的調用;數據內容的組織涉及數組、結構體、鏈表,必須掌握數組、結構體、鏈表等數據對象的操作;功能的實現必須設計算法控制流程,掌握不同的流程圖表示方法;功能算法的實現必須根據算法描述進行符號化語句表示;根據編寫程序的源代碼進行程序調試。該項目難度適中,囊括了C語言課程的大綱要求,而且與學生聯系密切,使學生不必進行復雜的項目背景分析就可以進行不同程度的功能擴展。同時項目的實現能夠突出程序設計“以算法為中心”求解問題的方法,是一個比較合適的項目。學生從開始模仿單一的記錄添加、排序、查詢、統計和記錄瀏覽等簡單程序,到利用函數、結構和指針等知識對模仿期開發的各功能模塊進行擴充和完善,逐步組建學生的管理系統。
(二)課程微觀設計
微觀設計是指對每一單元、每一堂課的安排方式、教法和教學特點進行設計。在微觀設計中應注意項目與授課內容的結合,以達到理想的效果。在授課開始,提出問題,指出該問題的難點,圍繞授課內容引導學生進行思考。例如,學習結構體一章時,可以讓學生思考如何才能存放全班同學的信息(姓名、年齡、成績等)?以往的基本數據類型可以完成嗎?由此引入結構體數組的概念。以“選擇結構”一章為例,說明微觀課程設計的步驟。該單元的教學知識點是掌握關系表達式、邏輯表達式和條件表達式,會使用if語句和switch語句。在教學過程中,從簡單的問題著手,先要求學生自己編寫程序,引入條件語句,同時在程序中講解相關的語法知識點,提升高度。具體步驟:
(1)任意輸入兩個數,求最大值,并輸出最大值。(以此為例講解if…else語句的用法及其執行過程)
(2)擴展第一步,任意輸入三個數,求最小值并輸出。(引入介紹六種基本關系運算符并給出優先順序,學習計算關系表達式的值,強調值為邏輯值。)
(3)擴展第二步,任意輸入三個數,并按從小到大的順序輸出。(注意講解其中的算法,為循環語句打基礎。介紹三種邏輯運算符及其優先順序,學習計算邏輯表達式的值。)
(4)移植第三步,求解符號函數,強調else子句與if語句的匹配原則。
(5)推進第四步,進行if語句的多重嵌套。從鍵盤上輸入成績并按原則輸出其等級為習題供學生練習。
(6)改寫第五步程序,使用switch語句構成多分支結構。(引入switch語句和break語句)
(7)進行嵌套if語句與switch語句互換。
同時,還要注重算法分析,培養學生以算法為中心解決問題的能力。這是程序設計課程的教學重點,也是教學難點。對于C語言所涉及的算法,在精講多練的同時還應注意這些算法之間的聯系,與課程的相關內容結合。如選擇法可以結合選擇程序設計結構,篩選法、起泡法等算法可以結合數組、函數部分進行教學。這樣,學生在熟練掌握這些算法的同時,也學習并掌握了相關課程內容,并逐漸養成在程序設計時進行觸類旁通的思維模式。
在教學層次上,要根據學生基礎程度的不同,制定不同的標準,要求每一個層次的學生都要達到最低的標準并向高一級標準努力。具體來說,一個課堂的練習要有多個層次,
第一個層次是基本的,體現課程主要內容,
第二個層次略為擴充,體現一定的技巧和算法,
第三個層次就是要求學生的設計無論從界面、風格、完整型還是算法、技巧、易用性等方面接近專業程序員的習慣和水平。
經實踐檢驗,項目驅動教學法激發了學生的自信心和積極性,鍛煉了學生的程序設計綜合能力,為今后較快地參與實際軟件項目的開發奠定了堅實的基礎。推而廣之,在很多課程中都可以實施該教學法,只有在設計課程教學內容和形式時從本課程的實際應用角度出發,選取一個可以貫穿本課程主要內容的項目,使之在教學過程中一步步完善,這門課程的教學才會成功。
參考文獻:
[1]譚浩強.C語言程序設計[M].北京:清華大學出版社,2000.
[2]王明富,徐人鳳.高職軟件專業技術課程的改革與探索[J].中國職業技術教育,2004,(12).
[3]邱建林,等.C語言程序設計教學的研究與實踐[J].電氣電子教學學報,2003,(8).
【項目驅動教學法在C語言課程中的應用的論文】相關文章:
項目驅動教學在課程中的運用教育論文12-15
項目教學法在PLC教學中的應用論文09-09
案例教學法在地理新課程中的應用論文12-11
實踐教學法在體育散打課程中的應用論文10-07
高中語文教學中任務驅動教學法的應用論文05-06
任務驅動教學法在數據庫教學中的應用論文12-20