以解決本專業(yè)問題為導(dǎo)向的C語言程序設(shè)計課程教學探索
發(fā)布時間:2019-08-07 來源: 歷史回眸 點擊:
摘 要 針對C語言程序設(shè)計課程在計算機及其相關(guān)專業(yè)中存在的“狹義工具論”的教學現(xiàn)狀,本著“以應(yīng)用能力培養(yǎng)為目標、以計算思維為手段”的原則進行知識選取和教學內(nèi)容、教學案例、教學方法的設(shè)計,提出“基于專業(yè)內(nèi)容,以解決本專業(yè)問題為導(dǎo)向”的項目驅(qū)動、螺旋式上升、過程監(jiān)控等多種手段相結(jié)合的立體化教學方式。通過將計算機基礎(chǔ)教育與專業(yè)技術(shù)相融合,從計算思維能力與創(chuàng)新人才培養(yǎng)相結(jié)合的視角,提高專業(yè)化教育過程中的創(chuàng)新培養(yǎng)層次,建設(shè)培養(yǎng)復(fù)合型拔尖人才的課程體系和教學平臺,為國家培養(yǎng)創(chuàng)新型人才提供新思路和新途徑。
關(guān)鍵詞 C語言程序設(shè)計;過程監(jiān)控;螺旋式上升
中圖分類號:TP311.1 文獻標識碼:B
文章編號:1671-489X(2017)06-0084-03
1 引言
C語言程序設(shè)計是理工科專業(yè)(如電子信息與科學、通信工程、物聯(lián)網(wǎng)技術(shù)和應(yīng)用數(shù)學等)的基礎(chǔ)課程,嵌入式系統(tǒng)中的單片機與DSP程序設(shè)計,采用C語言編寫應(yīng)用程序比匯編語言可讀性更強,且更易于維護[1]。該課程的學習目標是不僅要使學生學習程序設(shè)計的基本概念和基礎(chǔ)方法,學習編程規(guī)則,還要培養(yǎng)學生的計算思維能力、理論與實踐相結(jié)合的解決專業(yè)領(lǐng)域問題的應(yīng)用能力,提高專業(yè)化教育過程中的創(chuàng)新培養(yǎng)層次。
然而絕大多數(shù)學生在剛開始接觸C語言程序設(shè)計這門課時,對計算機語言、算法和數(shù)據(jù)結(jié)構(gòu)知之甚少,更不具備抽象建模、程序設(shè)計技巧的相應(yīng)知識[2]。加上這是第一門程序設(shè)計課,大量的新概念、新名詞讓學生感覺應(yīng)接不暇,在剛剛接觸編寫程序時毫無頭緒,只能仿照現(xiàn)成的例子照貓畫虎,進行淺層次的驗證性實驗,根本掌握不到程序設(shè)計的精髓,更達不到計算思維能力的培養(yǎng),以致該門課程教學質(zhì)量普遍不高。
為了解決這些問題,筆者在長期教學實踐中總結(jié)教學經(jīng)驗、探索教學方法,提出“基于專業(yè)內(nèi)容,以解決本專業(yè)問題為導(dǎo)向,以計算機圍繞專業(yè)問題服務(wù)為原則,促進學生個體發(fā)展,增強學生創(chuàng)新意識,產(chǎn)生創(chuàng)新能力”的教學思想。針對C語言程序設(shè)計課程特點,從教學理念、考核形式、教學方法、課程內(nèi)容等方面做了大膽的改革與創(chuàng)新,采取多種教學方法和教學手段相結(jié)合,提高學生學習興趣,取得良好的教學效果。
2 精心設(shè)計以解決本專業(yè)問題為導(dǎo)向的教學案例
在以往的教學活動中,大部分學生的基礎(chǔ)知識雖然掌握得不錯,但在靈活解決實際問題方面,還是有不小距離的。他們雖然心中有一些解決問題的模糊思路,但不會將想法轉(zhuǎn)換成程序,甚至還有一些學生直到最后也不會把實際問題變換成算法設(shè)計。針對上述問題,課程組教師在教學內(nèi)容的安排上注重在C語言教學中緊密結(jié)合本專業(yè)特點,本著“精講多練,重實用,重算法”的原則,結(jié)合專業(yè)方向?qū)語言程序設(shè)計課程教學內(nèi)容的差異化要求,確定分專業(yè)分層次的教學內(nèi)容,制度詳細的教學任務(wù),選擇各專業(yè)的經(jīng)典問題作為課堂教學案例。以專業(yè)知識為基礎(chǔ),以解決專業(yè)問題為目標,采取任務(wù)驅(qū)動、因材施教的方式,創(chuàng)建多元化的教學體系,能夠激發(fā)學生的學習興趣。
將單純的C語言程序設(shè)計教學與專業(yè)領(lǐng)域應(yīng)用相結(jié)合,把計算機程序設(shè)計作為解決專業(yè)問題的工具,有利于學生了解C語言程序設(shè)計作為“專業(yè)工具”的作用,便于學生對C語言精髓的掌握,能夠培養(yǎng)學生的計算思維能力、邏輯思維能力和邏輯推理能力,以及利用計算機解決本專業(yè)問題的能力,提高學生學習本課程的主動性、積極性,促進學生個體充分自由地發(fā)展,培養(yǎng)學生的應(yīng)用能力和創(chuàng)新能力。
3 項目遞進驅(qū)動教學法
在實驗教學過程中,制定各專業(yè)領(lǐng)域相關(guān)實訓(xùn)項目,以由易到難、循序漸進為主線,采取多層次的項目拓展訓(xùn)練、遞進式的螺旋式教學方法,讓學生整體提高程序設(shè)計能力。整個教學設(shè)計分為三個階段。
編程基礎(chǔ)準備階段 本階段的教學內(nèi)容主要是以本專業(yè)的經(jīng)典問題作為課堂教學案例,引出本課程單元基礎(chǔ)知識。在這一部分教學中通過教師對教學案例的講解,學生通過實訓(xùn)項目的上機操作,會出現(xiàn)輸入、編寫等問題,通過解決實訓(xùn)時出現(xiàn)的問題加強對語法、編程規(guī)則的掌握。本著“精講多練,重實用,重算法”的原則,用大量典型案例進行實訓(xùn),起到拓展學生編程思維的作用。如在為數(shù)學專業(yè)設(shè)計程序三大基本結(jié)構(gòu)項目時,本階段的教學案例分別為分支結(jié)構(gòu)為分段函數(shù)的計算、循環(huán)結(jié)構(gòu)為求1到10之間的自然數(shù)的和。
項目拓展階段 通過基礎(chǔ)階段的訓(xùn)練,學生已經(jīng)初步對程序設(shè)計有感性認識,并有一定的計算思維基礎(chǔ),本階段的任務(wù)設(shè)計上以第一階段的任務(wù)為基礎(chǔ),將與此相近、相關(guān)的案例進行總結(jié),主要是通過實訓(xùn)項目的形式來鞏固基礎(chǔ)階段的訓(xùn)練成果,養(yǎng)成良好的編程習慣。如在為教學數(shù)學專業(yè)設(shè)計程序的三大基本結(jié)構(gòu)項目時,本階段讓學生完成的項目有:求1到100之間自然數(shù)的和、判斷某數(shù)是否為素數(shù)、求1到100之間的素數(shù)、打印楊輝三角形、輸出各種形式的九九乘法表等。實訓(xùn)題目按類別設(shè)計,同類的實訓(xùn)項目一般設(shè)計多個,每個題目又根據(jù)難易程度設(shè)置不同的分值(方便后期的多元立體化評價),學生可根據(jù)自己對知識掌握的情況和自己的興趣愛好選擇一部分題目來練習。但不管是容易的題目還是難度較大的題目,都必須嚴格按照要求提交相關(guān)文檔以及編寫的程序代碼。
項目遞進階段 本階段讓學生自由組合成3~5人的互助式小組,以大作業(yè)的方式對整個學習階段的效果進行鞏固,同時進行測試和驗收。由于任務(wù)量比較大,所以該階段主要在課下完成。在本階段中,教改組成員在對不同專業(yè)做了詳細調(diào)研的基礎(chǔ)上,精心設(shè)計若干個與大學生各類競賽緊密結(jié)合的、貫穿整個教學過程的大項目作為本階段的任務(wù)。教改組成員為數(shù)學專業(yè)學生設(shè)計的課程大項目是學生成績管理、分析系統(tǒng),該系統(tǒng)用到大量的數(shù)學分析函數(shù)來實現(xiàn)對學生成績的統(tǒng)計分析,要求學生盡量自己編寫這些數(shù)學分析函數(shù),然后和系統(tǒng)提供的函數(shù)做出比較。為電子信息科學與技術(shù)專業(yè)學生設(shè)計的課程大項目是汽車導(dǎo)航系統(tǒng),該系統(tǒng)用到硬件之間的通信和C語言基礎(chǔ)編程,讓學生看到原來C語言還可以做出如此高級的產(chǎn)品。這一階段主要以學生自主完成作業(yè)、教師負責答疑的形式進行,教師對學生提出的問題并不直接給出答案,僅僅給予學生一定的指引,引導(dǎo)學生通過各種途徑查找資料,促使學生自覺利用互聯(lián)網(wǎng)、校園網(wǎng)、圖書館、BBS教學網(wǎng)站系統(tǒng)來輔助本課程的學習,幫助學生學會文獻檢索的技能,為學生在以后的學習和工作中保持繼續(xù)學習打下堅實的基礎(chǔ)。在這一階段中,要求學生必須提供完整的項目文檔并完成教師組織的簡單答辯。
相關(guān)熱詞搜索:題為 本專業(yè) 導(dǎo)向 課程教學 探索
熱點文章閱讀