由育陽
摘 要:C++程序設(shè)計課程,是高校理工科專業(yè)普遍開設(shè)的一門實用性較強的應(yīng)用型課程。文章從C++程序設(shè)計課程的特點出發(fā),針對非計算機專業(yè)C ++程序設(shè)計課程教學(xué)中存在的問題,提出了非計算機專業(yè)C++程序設(shè)計課程教學(xué)改革的思路與設(shè)想。
關(guān)鍵詞:非計算機專業(yè);C++程序設(shè)計;教學(xué)改革;高校
中圖分類號:G642.0 文獻標識碼:A 文章編號:1002-4107(2015)05-0068-03
在高等教育大眾化的背景下,伴隨著計算機技術(shù)的快速發(fā)展和應(yīng)用范圍日益廣泛,非計算機專業(yè)C++程序設(shè)計課程,在理工類專業(yè)課程體系中占有越來越重要地位。傳統(tǒng)的教學(xué)方式由于內(nèi)容枯燥,理論與實踐相互脫離,已經(jīng)無法適應(yīng)時代和社會的要求,因此,對非計算機專業(yè)C++程序設(shè)計課程進行教學(xué)改革就顯得尤為必要。
一、C++程序設(shè)計課程的特點
C++程序設(shè)計是最為經(jīng)典的面向?qū)ο蟾呒壵Z言,是高等院校理工科專業(yè)普遍開設(shè)的一門實用性較強的應(yīng)用型課程。與其他相關(guān)課程相比,C ++程序設(shè)計課程涵蓋知識更為豐富,具備設(shè)計語言功能豐富、表達力強和可移植性好等優(yōu)點。對于非計算機專業(yè)的學(xué)生來說,C++程序設(shè)計課程的教學(xué)目的,是幫助學(xué)生掌握面向?qū)ο蟪绦蛟O(shè)計的基本原理、編程思想和編程算法,將學(xué)生領(lǐng)入計算機程序設(shè)計的大門,培養(yǎng)學(xué)生從計算機的視角分析問題、解決問題的能力,為今后在實際工作中進行軟件編程和運用計算機解決實際問題打下良好的基礎(chǔ)。
由于C++ 程序設(shè)計的語法規(guī)則多、抽象程度高,從教學(xué)效果來看,目前的教學(xué)方式方法與培養(yǎng)目標的要求和社會對人才的需求還有較大的差距。
二、C++程序傳統(tǒng)教學(xué)模式的弊端
C++程序設(shè)計是一種具有較強實用性的程序設(shè)計語言。本課程以面向?qū)ο蟮某绦蛟O(shè)計思想為主線,以通俗易懂的方法介紹C++語言,具有很強的理論性和實踐價值,是編程人員最廣泛使用的工具。C++面相對象程序設(shè)計是計算機專業(yè)的核心課程,“數(shù)據(jù)結(jié)構(gòu)”、“設(shè)計模式”和“算法設(shè)計與分析”等課程也是該專業(yè)的基礎(chǔ)課程,其設(shè)計語言還有“ASP.Net”、“Oracle”和“C#”等課程,課程之間存在著很大相互關(guān)聯(lián)和相互啟發(fā)性,這些課程的學(xué)習(xí)和掌握,在一定程度上提高了學(xué)生的編程能力。而在非計算機專業(yè)的理工科專業(yè)中,由于受到各種因素的限制而沒有開設(shè)這些相關(guān)基礎(chǔ)課程。這就導(dǎo)致非計算機專業(yè)的學(xué)生如果以傳統(tǒng)的教學(xué)模式和教學(xué)方法學(xué)習(xí)C++程序設(shè)計課程的話,就存在一些弊病。
(一)案例枯燥,教法單一
長期以來,在非計算機專業(yè)的理工專業(yè)C++程序設(shè)計,教學(xué)過程中比較重視語法知識,注重語法細節(jié),引入的案例都是以闡釋語法規(guī)則為目的,既抽象又枯燥無味。對非計算機專業(yè)的學(xué)生而言,難以理解和接受,學(xué)習(xí)起來自然沒有內(nèi)在的學(xué)習(xí)積極性,導(dǎo)致課堂教學(xué)質(zhì)量不高,學(xué)生學(xué)習(xí)興趣不濃。
(二)理論教學(xué)與實際應(yīng)用相脫節(jié)
非計算機專業(yè)C++程序設(shè)計課程的教學(xué),多采用先理論后實踐的教學(xué)模式。教學(xué)主要環(huán)節(jié)是上課—上機試驗—作業(yè)—考試。教師講解的語句語法多,要求記憶掌握的內(nèi)容較多,忽略程序設(shè)計思維過程,而且課堂上所舉的例子往往是為完成某種程序功能而設(shè)計,普適性不強,相關(guān)知識聯(lián)系不緊密。在教學(xué)過程中學(xué)生缺乏合作開發(fā)實踐的鍛煉,缺乏軟件開發(fā)的基本訓(xùn)練,結(jié)果導(dǎo)致學(xué)生常常不能融會貫通地理解所學(xué)內(nèi)容,只是停留在使用的層面上,學(xué)了不會編程,不會應(yīng)用,即使是不明白也問不出問題來。考試主要靠死記硬背,考試完了很快就遺忘了。在工作中面對實際編程問題時往往不知所措,只能完成了輸入程序代碼的輸入員工作,更不用說實現(xiàn)熟練使用C++語言編程解決實際問題了。
(三)難以滿足社會對人才的需求
伴隨著科學(xué)技術(shù)的快速發(fā)展和信息技術(shù)水平的日新月異,計算機技術(shù)在各個領(lǐng)域的應(yīng)用日益廣泛,用人單位對非計算機專業(yè)的理工科畢業(yè)生的要求也越來越高,懂計算機,會編程序已經(jīng)成為對理工類非計算機專業(yè)學(xué)生的普遍要求。因為相當多的理工科專業(yè)的學(xué)生畢業(yè)后,主要是到相關(guān)企事業(yè)單位擔任工程師和技術(shù)研發(fā)人員,解決生產(chǎn)與經(jīng)營中遇到的各種問題。所以,在計算機技術(shù)越來越普及的情況下,編程已經(jīng)成為理工科非計算機專業(yè)畢業(yè)生必備的一項基本技能。
然而C++語言編程課程的實際教學(xué)情況卻往往不盡如人意。一方面,中國的應(yīng)試教育模式深入人心,學(xué)生應(yīng)對考試的能力往往大于理論聯(lián)系實踐和獨立思考的能力,學(xué)生在學(xué)習(xí)中也比較看重考試的成績,對如何在今后的職業(yè)生涯中靈活運用C++語言編程的相關(guān)知識解決實際問題,既沒有明確的認識,也不知道在學(xué)習(xí)中該怎樣掌握相關(guān)的知識與技能。另一方面,非計算機專業(yè)的學(xué)生由于對社會不了解,往往認為編寫程序是計算機專業(yè)學(xué)生應(yīng)該掌握的,自己只要適當了解一下程序就夠了。常常是教師考啥學(xué)生就學(xué)啥,缺乏舉一反三的思維能力和解決實際問題能力。
三、非計算機專業(yè)C++程序設(shè)計教學(xué)改革的
設(shè)想
(一)樹立科學(xué)的教學(xué)理念
教學(xué)理念,也叫教學(xué)觀念,是教師開展教學(xué)活動與教學(xué)研究的基本指導(dǎo)思想。在非計算機專業(yè)C++程序設(shè)計課程的教學(xué)活動與教學(xué)改革中,教師發(fā)揮著關(guān)鍵性的作用。因此,教師必須樹立正確的教學(xué)理念。具體說來,就是教師在思想上要把學(xué)生的利益放在第一位。所有教學(xué)設(shè)計、教學(xué)準備和教學(xué)手段的選擇都要以培養(yǎng)學(xué)生的創(chuàng)新能力和動手能力為基本的出發(fā)點。要求教師深入分析研究C++程序設(shè)計課程在非計算機專業(yè)人才培養(yǎng)模式和課程體系中的地位和作用,明確C++程序設(shè)計課程在培養(yǎng)非計算機專業(yè)人才創(chuàng)新能力方面的影響與作用。重點解決如何通過C++程序設(shè)計課程的教學(xué)活動,培養(yǎng)學(xué)生的創(chuàng)新意識,訓(xùn)練學(xué)生的創(chuàng)新性思維,培養(yǎng)和訓(xùn)練學(xué)生發(fā)現(xiàn)問題、分析問題和解決問題的能力的思想認識問題。
(二)探索新的教學(xué)模式
如前所述,傳統(tǒng)的教學(xué)模式在實現(xiàn)教學(xué)目的、培養(yǎng)合格人才方面存在種種弊端。為此,探索新的教學(xué)模式就成為非計算機專業(yè)C++程序設(shè)計課程教學(xué)改革的關(guān)鍵內(nèi)容。
1.案例教學(xué)法。案例教學(xué)法是一種以案例為基礎(chǔ)的教學(xué)法,起源于1920年代,由美國哈佛商學(xué)院(Harvard Business School)所倡導(dǎo),最早應(yīng)用于醫(yī)學(xué)院和法學(xué)院,是一種以社會生活的實際案例為主要研究對象的教學(xué)法。案例教學(xué)法改變了教師單純傳授理論知識的教學(xué)模式,使學(xué)生由被動接受知識,變?yōu)橹鲃訉W(xué)習(xí)和培養(yǎng)實際能力,大大縮短了教學(xué)情境與現(xiàn)實生活情境的差距。C++程序設(shè)計課程的案例教學(xué)法,要求教師在教學(xué)過程中,以現(xiàn)實生活中的實際例子為教學(xué)的切入點,以具體的實例和形象、直觀、生動的形式,給學(xué)生以身臨其境之感,有助于學(xué)生對相關(guān)知識的學(xué)習(xí)和理解。
在案例教學(xué)中教師將社會實踐中的計算機程序設(shè)計實例,依據(jù)C++程序設(shè)計課程的教學(xué)需要,進行編寫和設(shè)計,并運用啟發(fā)式等手段,鼓勵和引導(dǎo)學(xué)生積極參與討論。讓學(xué)生在對實際案例的分析研究中,既引發(fā)和培養(yǎng)對C++程序設(shè)計課程的學(xué)習(xí)興趣,又深入了解和掌握相關(guān)的理論知識。此外,在案例教學(xué)中,由于教學(xué)案例都來自于社會實踐,具有一定的實用性和趣味性,而且案例教學(xué)的方式方法也與單純的理論教學(xué)有很大的區(qū)別,因此,在調(diào)動學(xué)生注意力和調(diào)整學(xué)生的聽課狀態(tài)方面都有很大的益處。在C++程序設(shè)計課程進行案例教學(xué)時,學(xué)生還可以通過教師引導(dǎo)和教師與學(xué)生的互動交流與溝通,研究案例中的問題,主動學(xué)習(xí)C++程序設(shè)計的相關(guān)知識。在模擬解決各種實際問題的各種練習(xí)中,掌握C++程序設(shè)計課程的知識點。通過程序設(shè)計案例的討論,以及學(xué)生和教師之間的相互溝通,還可以培養(yǎng)和鍛煉學(xué)生發(fā)現(xiàn)問題、分析問題和解決問題的能力。
2.引入CDIO教育理念及教學(xué)模式。CDIO是2001年由美國麻省理工學(xué)院聯(lián)合瑞典的查爾姆斯技術(shù)大學(xué)、林克平大學(xué)以及皇家技術(shù)學(xué)院等三所高校共同開發(fā)的一種全新工程教育理念和實施體系,也是近年來備受許多高校推崇的新型工程教育模式。
CDIO 的四個過程來源于產(chǎn)品(系統(tǒng))的生命周期過程,是一種以產(chǎn)品研發(fā)到產(chǎn)品運行的生命周期為載體,對工程類專業(yè)的學(xué)生進行系統(tǒng)教育與培養(yǎng)的新型教學(xué)模式,其教學(xué)內(nèi)容涵蓋了絕大多數(shù)的工程師必要的專業(yè)活動。
CDIO是英文單詞“構(gòu)思”(Conceive)、“設(shè)計”(Design)、“實施”(Implement)、“運行”(Operate)的縮寫。
CDIO 的教學(xué)理念,是讓學(xué)生以主動的、實踐的,以及注重課程之間有機聯(lián)系的方式進行學(xué)習(xí)。CDIO的教學(xué)模式是以項目開發(fā)、項目實施為教育的組織原則,通過具體項目設(shè)計將整個課程體系有機而系統(tǒng)地結(jié)合起來,圍繞實際項目或整體的項目案例設(shè)計教學(xué)內(nèi)容和學(xué)生應(yīng)該掌握的重要知識點,引導(dǎo)學(xué)生不斷地在項目中做和學(xué),充分鍛煉學(xué)生的創(chuàng)新意識、創(chuàng)造能力和團隊合作精神。
引入CDIO 的教學(xué)模式,就是要在C++程序設(shè)計課程的教學(xué)工作中,按照產(chǎn)品或項目開發(fā)的基本程序,將社會的需求與C++程序設(shè)計的教學(xué)內(nèi)容相結(jié)合,從技術(shù)層面上進行C++程序設(shè)計課程教學(xué)工作,讓學(xué)生在理論學(xué)習(xí)的基礎(chǔ)上掌握更多的實踐技能,使學(xué)生的學(xué)習(xí)中心從以理論知識學(xué)習(xí)為主,轉(zhuǎn)向以項目為首要。緊緊圍繞著項目開發(fā)與運行的各個環(huán)節(jié),學(xué)習(xí)掌握C++程序設(shè)計課程理論體系。在針對具體項目設(shè)計的小組討論、師生交流和團隊合作過程中,了解C++程序設(shè)計課程的相關(guān)知識,鍛煉學(xué)生解決實際問題和團隊合作的能力??梢?,CDIO教育模式的核心,是培養(yǎng)學(xué)生在企業(yè)環(huán)境下對項目系統(tǒng)進行構(gòu)思、設(shè)計、實施、運行的能力,能夠有效地提升學(xué)生的個人能力、職業(yè)能力、團隊精神和交流能力。
(三)系統(tǒng)培養(yǎng)學(xué)生的創(chuàng)新能力
伴隨著我國改革開放的深入和經(jīng)濟的快速發(fā)展,無論是國家的進步還是企業(yè)的發(fā)展都對創(chuàng)新人才的培養(yǎng)提出了十分緊迫的要求。C++程序設(shè)計語言是大學(xué)計算機教育的核心課程,在培養(yǎng)學(xué)生創(chuàng)新能力方面承擔著重要任務(wù)。一般說來,創(chuàng)新能力是指一個人運用所學(xué)的專業(yè)知識和理論,結(jié)合自己工作的實踐,不斷提出新思想、新創(chuàng)意、新方法和創(chuàng)造新事物的能力,包括創(chuàng)新意識、創(chuàng)新思維和創(chuàng)造性解決問題的能力,因此,創(chuàng)新能力是一個人多種能力的綜合。從C++程序設(shè)計課程的教學(xué)內(nèi)容與過程來看,培養(yǎng)學(xué)生的創(chuàng)新能力應(yīng)主要從以下幾方面著手。
1.培養(yǎng)學(xué)生的創(chuàng)新意識。學(xué)生創(chuàng)新能力的提升與學(xué)生是否具有創(chuàng)新意識關(guān)系十分密切。創(chuàng)新意識是一種銳意進取的精神理念,是一種勇于探索的工作態(tài)度。而這種創(chuàng)新意識的形成很重要的一點是人們對所從事的工作和所學(xué)習(xí)的知識具有濃厚的興趣。因此,在C++程序設(shè)計教學(xué)中培養(yǎng)學(xué)生的創(chuàng)新意識是一項十分重要的工作。教師要認真?zhèn)湔n,精心設(shè)計教學(xué)內(nèi)容,運用啟發(fā)式、討論式、互動式等多種教學(xué)模式,激發(fā)學(xué)生對C++程序設(shè)計的學(xué)習(xí)興趣,營造一種能夠不斷激勵學(xué)生積極探索新事物、接受新知識和掌握新技能的學(xué)習(xí)氛圍,激發(fā)和培養(yǎng)學(xué)生追求卓越與創(chuàng)新的意識。
2.培養(yǎng)學(xué)生的自主學(xué)習(xí)能力。在現(xiàn)今社會,受多種因素的影響,許多學(xué)生進入大學(xué)后,或者對自己未來的職業(yè)和人生規(guī)劃沒有明確的認識,始終處于一種迷茫狀態(tài);或者是對自己將來的人生目標沒有進行詳細而科學(xué)的思考,定位也不夠準確,往往僅滿足于畢業(yè)后能找個好工作或是考取研究生。這些問題的存在,在一定程度上既影響了大學(xué)生學(xué)習(xí)積極性的調(diào)動與發(fā)揮,同時也限制了創(chuàng)新意識和創(chuàng)新欲望的激發(fā)。因此,教師要在C++程序設(shè)計教學(xué)中積極探索新的教學(xué)方式和教學(xué)手段,激發(fā)學(xué)生對C++程序設(shè)計相關(guān)知識的學(xué)習(xí)興趣,鼓勵學(xué)生在學(xué)習(xí)中對C++程序設(shè)計相關(guān)知識的探索、質(zhì)疑和思考。變由教師主導(dǎo)的“要我學(xué)”為學(xué)生主導(dǎo)的“我要學(xué)”。從調(diào)動學(xué)生的學(xué)習(xí)興趣入手,激發(fā)學(xué)生的自主學(xué)習(xí)能力。
3.培養(yǎng)學(xué)生的探究能力。非計算機專業(yè)的理工科學(xué)生,畢業(yè)后無論是到科研院所從事科學(xué)研究工作,還是到企業(yè)從事具體的產(chǎn)品研發(fā)與生產(chǎn)工作,都需要有很強的探究能力。所謂探究,“原指科學(xué)家們研究自然界的科學(xué)規(guī)律時,所進行的科學(xué)研究活動。而科學(xué)探究作為一種科學(xué)學(xué)習(xí)方式,是學(xué)習(xí)者針對科學(xué)領(lǐng)域中的某個主題形成自己的問題,或者由教師提出要探索的問題,然后由學(xué)習(xí)者對問題進行分析,形成自己的假設(shè),并通過科學(xué)實驗和觀察等檢驗自己的假設(shè),直至解決問題,在探究活動的基礎(chǔ)上建構(gòu)起對科學(xué)知識的理解和有關(guān)的方法、技能”。在C++程序設(shè)計教學(xué)中對學(xué)生探究能力的培養(yǎng),就是讓學(xué)生在教師的引導(dǎo)下,模擬程序設(shè)計專家的工作過程,按照計算機程序設(shè)計的思維程序去探索學(xué)習(xí)的過程,從中學(xué)習(xí)計算機程序設(shè)計的科學(xué)方法,發(fā)展對計算機程序設(shè)計科學(xué)領(lǐng)域探究所需要的能力。
為此,教師要利用自己的專業(yè)特長和對社會實踐相關(guān)問題的了解和把握,結(jié)合C++程序設(shè)計的教學(xué)重點,選取相關(guān)程序設(shè)計問題,引導(dǎo)學(xué)生進行探究式的學(xué)習(xí),讓學(xué)生在對理論知識的研究和對社會實踐問題的探討分析過程中,進行獨立思考和分析,自己得出結(jié)論。促使學(xué)生在學(xué)習(xí)的過程中,增進對科學(xué)探究的理解,體驗探究過程的心理感受,進而不斷提高學(xué)生在計算機程序設(shè)計方面的科學(xué)探究能力,引導(dǎo)和培養(yǎng)學(xué)生善于質(zhì)疑、獨立思考、勇于探究的科學(xué)態(tài)度。
C++程序設(shè)計課程的教學(xué)改革是一項重要而又需要長期努力的工作,要求教師要有高度的責任感和改革意識,也需要學(xué)校相關(guān)部門的支持與配合,今后,我們將繼續(xù)努力,積極學(xué)習(xí)和借鑒國內(nèi)外一些先進的教學(xué)成果,通過長期的積極探索與改革,不斷提升 C++程序設(shè)計課程的教學(xué)效果。
參考文獻:
[1]孫建偉,孫燕青.建構(gòu)性學(xué)習(xí)——學(xué)習(xí)科學(xué)的整合性探
索[M].上海:上海教育出版社,2005:47.
[2]謝志江,孫紅巖,蔣和生等.案例教學(xué)法在工科教學(xué)中的
應(yīng)用[J].高等工程教育研究,2003,(5).
[3]張潤蓮,張向利,葉進等.案例教學(xué)法及其運用[J].桂林
電子工業(yè)學(xué)院學(xué)報,2004,(4).
[4]劉嬪,鄧月明,張連明等.CDIO工程教育模式下的網(wǎng)絡(luò)
安全課程教學(xué)改革探索[J].西南師范大學(xué)學(xué)報:自然科
學(xué)版,2014,(1).
[5]陶勇芳.商存慧,CDIO大綱對高等工科教育創(chuàng)新的啟示
[J].中國高教研究,2006,(11).
[6]趙娜,王劍,秦江龍等.基于CDIO的“軟件項目開發(fā)入
門”綜合技能實踐課程[J].計算機工程與科學(xué),2011,(S1).