牟學鵬
(承德石油高等??茖W校計算機與信息工程系,河北承德067000)
《C++程序設(shè)計》課程教學改革與實踐
牟學鵬
(承德石油高等專科學校計算機與信息工程系,河北承德067000)
《C++程序設(shè)計》課程是計算機專業(yè)培養(yǎng)學生程序設(shè)計能力的重要專業(yè)基礎(chǔ)課程,課程重點培養(yǎng)學生面向?qū)ο蟪绦蛟O(shè)計的基本思想和方法。論述了《C++程序設(shè)計》課程教學改革中的一些經(jīng)驗和體會,實際運用中取得了較好的教學效果。
C++;程序設(shè)計;面向?qū)ο?教學改革
C++語言是最為經(jīng)典的面向?qū)ο蟾呒壵Z言,《C++程序設(shè)計》課程一直作為計算機專業(yè)學生的入門語言課在眾多院校廣泛開設(shè),該課程重點講授程序設(shè)計的基本概念與方法,通過C++語言的學習,要將學生引領(lǐng)入程序設(shè)計的大門,為今后進一步深入學習程序設(shè)計打下良好的基礎(chǔ),如果計算機入門語言學習不好,將直接影響學生后續(xù)課程的學習,使得學生很難在專業(yè)上有進一步的發(fā)展,因此如何上好《C++程序設(shè)計》這門課,就有很多地方值得探索。
多元智能觀認為人類的智能是多元化而非單一的,主要是由語言智能、數(shù)學邏輯智能、空間智能、身體運動智能、音樂智能、人際智能、自我認知智能、自然認知智能八項組成,每個人都擁有不同的智能優(yōu)勢組合。因此每個學生都有自己的優(yōu)勢智能,如果數(shù)學邏輯智能突出,將很可能把程序設(shè)計課程學好,但是數(shù)學邏輯智能突出的學生不等于其他智能同樣突出,反過來,數(shù)學邏輯智能較弱的學生,其他智能可能突出。因此我們首先要改變傳統(tǒng)的學生評價觀,但憑分數(shù)的高低評價學生,應(yīng)尊重學生個性的多樣性,建立”人人有優(yōu)勢,人人可成才”的學生觀。其次在《C++程序設(shè)計》的教學過程中應(yīng)通過加強課堂互動,實踐分組教學等方式加強學生的非邏輯智能的培養(yǎng)。
建構(gòu)主義是從行為主義發(fā)展到認知主義以后進一步發(fā)展起來的一種學習理論,該理論強調(diào)以學生為中心,強調(diào)學生對知識的主動探索、主動發(fā)現(xiàn)和對所學知識意義的主動建構(gòu),教師從知識傳授者轉(zhuǎn)變?yōu)閷W生學習的合作者,在《C++程序設(shè)計》的后半部分實踐教學環(huán)節(jié),教師可以創(chuàng)設(shè)一種實驗情境,讓學生在情境中通過實驗、獨立探究、合作學習等方式來展開他們的學習,運用此方式可以有效培養(yǎng)學生的自學能力,為學生就業(yè)后的發(fā)展奠定良好的基礎(chǔ)。
C語言是的面向過程程序設(shè)計語言的代表,它解決問題講究從頂至下,逐步求精,把大問題細化為一個個小問題,直到每一個問題可以由一個函數(shù)解決為止。C++是最具有代表性的面向過程程序設(shè)計語言,他解決問題講究在一個問題中抽象出若干個類,用類實例化后的對象,以及對象的相互通信協(xié)作來解決問題,這是兩種完全不同的思想方法,在實際的教學過程中,由于C++語言是在C語言的基礎(chǔ)上發(fā)展而來,容易出現(xiàn)先學習C語言編程,再學習C++程序設(shè)計的情況,由于學生學習的是第一門計算機語言,對編程思想方法先入為主,如果先學習C語言的面向過程的程序設(shè)計思想,將來必須經(jīng)過很長一段時間來完成這種程序設(shè)計思維方式的轉(zhuǎn)變,C語言學的越好,從面向過程向面向?qū)ο笏枷朕D(zhuǎn)變就越困難,需要的周期就越長,所以教學的過程中一定避免C語言過渡到C++的內(nèi)容安排,與其先向?qū)W生灌輸C語言的“面向過程”的編程思想,將來再讓他們?nèi)マD(zhuǎn)變這種已經(jīng)深入內(nèi)心的思想,不如一開始就把最先進的程序設(shè)計思想傳授給學生。
C++語言作為計算機專業(yè)學生的入門語言課程,著重培養(yǎng)學生在掌握基本語法規(guī)則的前提下對計算機語言的理解和運用計算機語言解決實際問題的能力,如果課堂教學中,采用一味講授的方式,學生可以掌握語法規(guī)則,但對語言的理解僅停留在一個膚淺的層面上,更不會運用計算機語言解決實際問題。所以要想在課堂教學中提高學生的語言運用能力,就要避免滿堂灌,教師一味講授的授課方式,要引導學生深入思考,采用“講想問練”相結(jié)合的方式,注意采用啟發(fā)教學的方式。課上講完理論知識后,要給學生一定的時間練習,書寫一個小程序,通過練習不僅可以鞏固剛講過的語法知識,還能給學生一定的時間緩沖,加深對知識的理解。練習完畢還應(yīng)對練習內(nèi)容提出帶探究性的問題,即能促進學生思考,又能解決學生課后可能出現(xiàn)的疑惑,經(jīng)過一個完整的“講想問練”的過程后,學生可以較為深刻理解所學的知識,提高知識的運用能力。
C++作為一種高級計算機語言,有自身的特點,C++語言的設(shè)計者之一斯坦.利普曼先生曾在《C++Primer》一書中指出“C++是最為難學的高級程序設(shè)計語言之一”,因為C++牽涉概念繁多,語法比較復(fù)雜,體系結(jié)構(gòu)的龐大,很多概念非常抽象,將其作為入門語言,學生學習的過程中,會遇到很多困難。在這種情況下如果在課堂,語言單一,枯燥地講解各種晦澀的語法知識,會使課堂沉悶,大大降低學生的學習興趣。所以講授C++程序設(shè)計時要作到語言豐富,生動,通俗易懂,用一些經(jīng)典的例子和恰當?shù)谋扔髫灤┰谑冀K,營造出和諧愉快的課堂氛圍,這樣才能讓學生體會到在輕松的環(huán)境中獲取知識的樂趣。其中選擇經(jīng)典的例子和恰當?shù)谋扔鞣浅V匾?,它們不但可以使抽象的知識容易理解,還可以提高學生的興趣,提高學習效率。比如,多態(tài)性是面向?qū)ο笏枷胫械闹匾卣?,但其概念描述為不同的對象接受了相同的命令產(chǎn)生不同的行為卻非常抽象,不易理解。為了理解這一概念,可以利用上課鈴聲響起這一同樣命令被教師和學生兩種不同對象接收后,產(chǎn)生了教師走上講臺準備授課,學生安靜坐好準備聽課這兩種不同的行為,這就是現(xiàn)實世界中多態(tài)性的實例。利用這樣的現(xiàn)實例子,會很容易的理解類似的抽象概念。
考核是教學活動中十分重要的環(huán)節(jié),通過考核可以檢驗學生的學習成果。傳統(tǒng)的程序設(shè)計課程的考試都采用期末筆試答卷的方式進行。然而以期末筆試的考核方式有兩點明顯的不足:第一,學習程序設(shè)計的最終目的是使用計算機進行編寫程序來解決實際問題,而筆試只能考察理論知識掌握的水平,無法衡量知識的運用能力,單靠筆試的方式衡量學生計算機語言的運用水平本身就不準確。第二,一學期的學習,單靠最后一次期末考試考核學生的成績,導致平時相當數(shù)目的學生對學習投入不夠,以考前突擊的方式應(yīng)對考試。因為各方面能力的培養(yǎng)都需要一個過程,短時間的突擊不但導致所學知識不夠扎實,更對學生的知識運用能力與素質(zhì)能力的培養(yǎng)毫無幫助,這也是以期末考試考核學生的成績的最大弊端。
過程化考核是一種新型的考核方式,它是在學習的過程中對學生進行多次的分階段,多種形式的測驗,得到最終的學習成績,這種考察方式不但較為客觀地衡量出學生對知識的掌握與運用水平,還通過多次的考核時時激勵學生,在學習的過程中始終懷著嚴謹?shù)膽B(tài)度和飽滿的熱情,獲得最佳的學習效果?!禖++程序設(shè)計》課程的過程化考核采用筆試與上機相結(jié)合的方式進行,兩次筆試重點考察學生的理論的掌握水平,四次上機考核重點衡量學生的知識實際運用水平,六次考核都在理論課與實驗課的課堂完成。這種多次的階段性考核措施保證了學生的學習熱情與投入程度,在實際使用中取得了很好的教學效果。
[1]范紅,吳怡之.“C語言程序設(shè)計”趣味實例教學方法的探討[J].計算機教育,2009(10):26-28.
[2]袁梅冷.高職軟件專業(yè)多層次項目驅(qū)動教學模式探討與實踐[J].職業(yè)教育研究,2008(02):12-14.
[3]譚浩強.C++程序設(shè)計[M].北京:清華大學出版社.2006.
Teaching Reform and Practice of C Program Design
MU Xue-peng
(Department of Computer and Information Engineering,Chengde Petroleum College,Chengde 067000,Hebei,China)
As a basic course for computer majors,C Program Design aims at cultivating students’ability of program design.It’s very important to make students master basic thinking and method of object-oriented programming.This paper proceeds from teaching methods and means,and discusses some experience and thoughts in order to improve teaching effect.
C++;program design;object-oriented;teaching reform
TP312-44
A
1008-9446(2011)01-0060-03
2010-11-15
牟學鵬(1979-),男,滿族,遼寧營口人,承德石油高等??茖W校計算機與信息工程系講師,主要從事控制專業(yè)的教學工作。