何昭青,彭 立,傅紅普
(湖南第一師范學(xué)院 信息科學(xué)與工程系 湖南 長(zhǎng)沙 410205)
基于程序設(shè)計(jì)能力培養(yǎng)的計(jì)算機(jī)專業(yè)實(shí)踐教學(xué)體系的思考
何昭青,彭 立,傅紅普
(湖南第一師范學(xué)院 信息科學(xué)與工程系 湖南 長(zhǎng)沙 410205)
程序設(shè)計(jì)能力是計(jì)算機(jī)專業(yè)學(xué)生的基本能力,也是最重要的職業(yè)能力。如何提高計(jì)算機(jī)專業(yè)學(xué)生的程序設(shè)計(jì)能力,一直是研究的熱點(diǎn)。多年的實(shí)踐教學(xué)表明,“重實(shí)踐教學(xué),加強(qiáng)程序設(shè)計(jì)課程群建設(shè),構(gòu)建分層次、牽引遞進(jìn)式實(shí)踐教學(xué)體系”是有效的策略和措施。
程序設(shè)計(jì)能力;課程群建設(shè);實(shí)踐教學(xué)體系;職業(yè)能力
程序設(shè)計(jì)能力是計(jì)算機(jī)專業(yè)學(xué)生必須具備的基本能力,是計(jì)算機(jī)專業(yè)畢業(yè)生順利就業(yè)于行業(yè)崗位的重要條件。但目前的事實(shí)是,很多計(jì)算機(jī)專業(yè)學(xué)生的程序設(shè)計(jì)應(yīng)用能力低,畢業(yè)后不能勝任計(jì)算機(jī)行業(yè)的工作,不得不就業(yè)于非計(jì)算機(jī)行業(yè)。如何提高計(jì)算機(jī)專業(yè)學(xué)生程序設(shè)計(jì)能力,培養(yǎng)滿足社會(huì)需求的計(jì)算機(jī)專業(yè)人才,是當(dāng)前及今后一段時(shí)間內(nèi)很多高校教學(xué)改革的重點(diǎn)和難點(diǎn)。在研讀大量國內(nèi)外相關(guān)資料,以及對(duì)多年實(shí)踐教學(xué)進(jìn)行分析思考總結(jié)后,我們提出了切實(shí)可行的“重實(shí)踐教學(xué),加強(qiáng)程序設(shè)計(jì)課程群建設(shè),構(gòu)建遞進(jìn)式、分層次培養(yǎng)學(xué)生程序設(shè)計(jì)能力的實(shí)踐教學(xué)體系”的策略和措施。
計(jì)算機(jī)專業(yè)學(xué)生程序設(shè)計(jì)能力整體水平低,原因很復(fù)雜,實(shí)踐教學(xué)沒有得到真正重視是主要原因之一。要么課程實(shí)踐課時(shí)少,要么實(shí)踐教學(xué)流于形式,沒有得到真正有效的落實(shí)。而計(jì)算機(jī)大都數(shù)課程都是實(shí)踐性很強(qiáng)的課程,如果不認(rèn)真對(duì)待實(shí)踐,不把實(shí)踐教學(xué)落到實(shí)處,學(xué)生很難弄清楚理論知識(shí),更不用說把知識(shí)運(yùn)用于實(shí)踐。改變課程教學(xué)模式、加強(qiáng)實(shí)踐監(jiān)管和引導(dǎo)學(xué)生參與教師科研項(xiàng)目等方式,是重視實(shí)踐教學(xué)的有效策略和措施。
(一)采用“理論+實(shí)驗(yàn)+設(shè)計(jì)”的課程教學(xué)模式
計(jì)算機(jī)課程大都是實(shí)踐性很強(qiáng)的課程,針對(duì)這一特點(diǎn),對(duì)計(jì)算機(jī)課程增加“課程設(shè)計(jì)”實(shí)踐教學(xué)環(huán)節(jié),采用“理論+實(shí)驗(yàn)+設(shè)計(jì)”的課程教學(xué)模式,使課程實(shí)踐環(huán)節(jié)比以前得到大大的加強(qiáng),有利于學(xué)生對(duì)知識(shí)的理解和程序設(shè)計(jì)能力的培養(yǎng),尤其是“課程設(shè)計(jì)”這個(gè)實(shí)踐環(huán)節(jié),不僅能激發(fā)學(xué)生的學(xué)習(xí)興趣、拓寬學(xué)生的思路,而且有利于培養(yǎng)學(xué)生分析問題、解決問題的綜合能力?!罢n程設(shè)計(jì)”安排在課程結(jié)束后立即進(jìn)行,由任課教師擔(dān)任教學(xué)指導(dǎo)。這種課程教學(xué)模式,不但要求教師注重理論知識(shí)的傳授,更應(yīng)重視理論的實(shí)踐教學(xué)。重視實(shí)踐教學(xué)不再是一句空話,學(xué)生的程序設(shè)計(jì)能力訓(xùn)練得到有效的保證[1]。
(二)加強(qiáng)實(shí)踐環(huán)節(jié)的要求和管理
“理論+實(shí)驗(yàn)+設(shè)計(jì)”教學(xué)模式,表明實(shí)踐環(huán)節(jié)的重要性,但還得管理好實(shí)踐環(huán)節(jié)。對(duì)于課程的實(shí)驗(yàn)環(huán)節(jié)主要從以下幾個(gè)方面加強(qiáng)落實(shí)管理:
一是抓好常規(guī)實(shí)驗(yàn)。教師必須認(rèn)真對(duì)待上機(jī)實(shí)驗(yàn)課,要像理論課教學(xué)那樣,每次都要明確指明實(shí)驗(yàn)的目的、要求,對(duì)上機(jī)實(shí)驗(yàn)內(nèi)容要精心安排,對(duì)學(xué)生上機(jī)實(shí)驗(yàn)要嚴(yán)格監(jiān)督[2]。
二是抓好課程設(shè)計(jì),即綜合實(shí)訓(xùn)。為了快速、有效培養(yǎng)這方面的能力,通常由課程設(shè)計(jì)的指導(dǎo)教師,分析幾個(gè)代表性的案例,然后由教師布置一些事先想好的課程設(shè)計(jì)作業(yè),以小組為單位進(jìn)行課程設(shè)計(jì)。每一個(gè)小組要挑選一到兩個(gè)專業(yè)素質(zhì)較好的學(xué)生擔(dān)任正副組長(zhǎng),讓他們對(duì)本組項(xiàng)目全權(quán)負(fù)責(zé),充分發(fā)揮優(yōu)秀學(xué)生在課程設(shè)計(jì)中的積極作用,既可以減輕指導(dǎo)教師的壓力,發(fā)揮學(xué)生的創(chuàng)造能力,又有利于課程設(shè)計(jì)質(zhì)量的保證。課程設(shè)計(jì)落實(shí)得好,將使學(xué)生的知識(shí)運(yùn)用能力和程序設(shè)計(jì)能力得到迅速成長(zhǎng),教學(xué)效果也顯著。
為了保證學(xué)生認(rèn)真對(duì)待實(shí)踐環(huán)節(jié),防止學(xué)生復(fù)制或不做,比較好的辦法是要求每個(gè)學(xué)生提交實(shí)踐作業(yè),并進(jìn)行批閱,批閱的成績(jī)參與課程結(jié)束的期末成績(jī)?cè)u(píng)定,實(shí)踐表明,這種辦法效果非常好。
(三)組織程序設(shè)計(jì)比賽
組織學(xué)生參與系部、學(xué)校、省及國家組織的各種程序設(shè)計(jì)比賽。通過各種比賽活動(dòng),調(diào)動(dòng)學(xué)生編寫程序代碼的興趣和潛力。另外也鼓勵(lì)學(xué)生自己主動(dòng)編寫代碼,對(duì)于程序代碼編寫得多又好的學(xué)生,給予表揚(yáng)和適當(dāng)?shù)奈镔Y獎(jiǎng)勵(lì)。提倡在大學(xué)畢業(yè)前,編寫10萬行代碼。試想一個(gè)在校大學(xué)生,如果編寫了近10萬行的代碼,程序設(shè)計(jì)能力一定能達(dá)到較高水平。
(四)將科研項(xiàng)目與學(xué)生程序設(shè)計(jì)能力培養(yǎng)結(jié)合起來
鼓勵(lì)學(xué)生參與教師的科研項(xiàng)目的研究與開發(fā)。運(yùn)用專業(yè)知識(shí)解決實(shí)際問題的真實(shí)實(shí)踐,使學(xué)生更能體會(huì)到自身的價(jià)值和知識(shí)的魅力,更有益于培養(yǎng)學(xué)生的知識(shí)應(yīng)用能力、解決實(shí)際問題能力和程序設(shè)計(jì)能力[3]。
程序設(shè)計(jì)能力的培養(yǎng),是一個(gè)循序漸進(jìn)的過程,需要貫徹大學(xué)四年整個(gè)學(xué)習(xí)過程。以程序設(shè)計(jì)課程群建設(shè)為主導(dǎo),構(gòu)建了基于程序設(shè)計(jì)能力培養(yǎng)的分層次、牽引遞進(jìn)式實(shí)踐教學(xué)體系。該實(shí)踐教學(xué)體系有五個(gè)層次[4]:基本程序設(shè)計(jì)能力、模塊化程序設(shè)計(jì)能力、數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)能力、多層分布式系統(tǒng)開發(fā)能力和校外專業(yè)頂崗實(shí)習(xí)。這五個(gè)層次有一定的邏輯先后遞進(jìn)關(guān)系,它們相互聯(lián)系、相互促進(jìn)。前四個(gè)層次在校內(nèi)完成,第五個(gè)層次在校外完成。在教學(xué)過程中,狠抓學(xué)生這五個(gè)層次程序設(shè)計(jì)能力的訓(xùn)練培養(yǎng)。
(一)基本程序設(shè)計(jì)能力的培養(yǎng)
基本程序設(shè)計(jì)能力是程序設(shè)計(jì)能力進(jìn)一步提高的基礎(chǔ),也是后續(xù)許多計(jì)算機(jī)專業(yè)課程學(xué)習(xí)的基礎(chǔ),由大學(xué)一年級(jí)第一門程序設(shè)計(jì)語言課程來完成,對(duì)于大多數(shù)學(xué)生來說,這是一個(gè)新的領(lǐng)域,必須高度重視。學(xué)生的基本程序設(shè)計(jì)能力表現(xiàn)為能比較熟練地運(yùn)用一門高級(jí)程序設(shè)計(jì)語言提供的數(shù)據(jù)類型、運(yùn)算符、語句和函數(shù)和過程獨(dú)立地編寫解決簡(jiǎn)單問題的程序,在一定的程序設(shè)計(jì)集成環(huán)境下獨(dú)立地上機(jī)調(diào)試程序,掌握最基本的程序測(cè)試和調(diào)試的方法。為了有效培養(yǎng)學(xué)生基本程序設(shè)計(jì)的能力,在教學(xué)過程中從程序設(shè)計(jì)語言的選擇,教材的選用,到任課教師的安排,都必須進(jìn)行周密的考慮[2]。
根據(jù)多年的教學(xué)實(shí)踐經(jīng)驗(yàn),譚浩強(qiáng)編寫的《C語言程序設(shè)計(jì)》作為程序設(shè)計(jì)課程的啟蒙教育,是比較好的選擇;教學(xué)人員安排上,要求由至少具有三年教學(xué)工作經(jīng)驗(yàn)、工作責(zé)任感強(qiáng)的老師擔(dān)任此課程的教學(xué)。
(二)模塊化程序設(shè)計(jì)能力的培養(yǎng)
學(xué)生在學(xué)完第一門程序設(shè)計(jì)課程后,只掌握基本程序設(shè)計(jì)能力,能編寫處理一些簡(jiǎn)單的問題程序(代碼通常不超過20行)。對(duì)于復(fù)雜一點(diǎn)的問題,還不能運(yùn)行模塊化技術(shù)分解一個(gè)程序的功能進(jìn)行設(shè)計(jì)程序。模塊化程序設(shè)計(jì)能力培養(yǎng)主要由《C語言程序設(shè)計(jì)》的“課程設(shè)計(jì)”完成,即“理論+實(shí)踐+設(shè)計(jì)”課程教學(xué)模式的“設(shè)計(jì)”完成。《C語言程序設(shè)計(jì)》教師擔(dān)任,更利于學(xué)生模塊化程序設(shè)計(jì)能力的培養(yǎng)。在《C語言課程設(shè)計(jì)》中,教師重點(diǎn)培養(yǎng)學(xué)生的抽象思維能力,對(duì)程序要解決的復(fù)雜問題按功能進(jìn)行分解成一個(gè)個(gè)具有獨(dú)立意義的子功能,用C語言函數(shù)分別實(shí)現(xiàn)各個(gè)子功能,并使每個(gè)函數(shù)包含程序代碼長(zhǎng)度符合學(xué)生容易理解的代碼長(zhǎng)度。
案例教學(xué)法是快速培養(yǎng)模塊化程序設(shè)計(jì)能力的有效教學(xué)方法。任課教師精心準(zhǔn)備幾個(gè)典型的案例[4],并對(duì)這些案例進(jìn)行詳細(xì)分析、講解,讓學(xué)生運(yùn)行程序和閱讀程序代碼,分析程序中各函數(shù)的功能和算法,分析各函數(shù)間的調(diào)用關(guān)系,使學(xué)生對(duì)程序的一般組成和結(jié)構(gòu)有一個(gè)直觀的認(rèn)識(shí),然后讓學(xué)生模仿一個(gè)類似的實(shí)例,編制一個(gè)程序?qū)嵺`,使學(xué)生逐步適應(yīng)和學(xué)會(huì)運(yùn)用抽象思維方式,學(xué)會(huì)模塊化程序設(shè)計(jì)技術(shù),編寫出有一定規(guī)模、具有一定實(shí)用性的程序的能力,從而掌握模塊化程序設(shè)計(jì)的基本思想。在后續(xù)課程學(xué)習(xí)中,如《數(shù)據(jù)結(jié)構(gòu)》、《操作系統(tǒng)》,擔(dān)任這些課程的教師要對(duì)模塊化程序設(shè)計(jì)技術(shù)做進(jìn)一步的加強(qiáng)、提高。
(三)數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)能力的培養(yǎng)
信息管理系統(tǒng)應(yīng)用非常廣泛,信息管理系統(tǒng)實(shí)際上就是數(shù)據(jù)庫應(yīng)用系統(tǒng),因此,數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)技術(shù)是計(jì)算機(jī)專業(yè)類學(xué)生必須掌握的技術(shù)。數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)能力(單機(jī)環(huán)境)的培養(yǎng)主要是通過《數(shù)據(jù)庫原理》、可視化面向?qū)ο蟪绦蛟O(shè)計(jì)(如 VC++)等課程設(shè)計(jì)完成[2][4]。
在實(shí)踐教學(xué)中,主要采取兩項(xiàng)措施保證這種能力的訓(xùn)練。一是教師講解數(shù)據(jù)庫原理、面向?qū)ο蟪绦蛟O(shè)計(jì)(如VC++、Java)課程時(shí),一定要仔細(xì)分析一個(gè)信息系統(tǒng)開發(fā)案例,如“圖書管理系統(tǒng)”,“人才信息管理系統(tǒng)”,“學(xué)生信息管理系統(tǒng)”等等。這種生動(dòng)熟悉實(shí)用的案例學(xué)習(xí),能激發(fā)學(xué)生的學(xué)習(xí)興趣和動(dòng)力,也很容易使學(xué)生理解掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的一般規(guī)律。二是通過隨后開設(shè)的《數(shù)據(jù)庫課程設(shè)計(jì)》、《VC++課程設(shè)計(jì)》、《Java課程設(shè)計(jì)》,要求學(xué)生自己用學(xué)到的知識(shí),嚴(yán)格按照軟件工程的思想,開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)實(shí)例。這種反復(fù)的訓(xùn)練,使學(xué)生數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)能力得到進(jìn)一步鞏固、完善。
(四)多層分布式系統(tǒng)開發(fā)能力的培養(yǎng)
隨著Internet/Intranet網(wǎng)絡(luò)的發(fā)展與廣泛應(yīng)用,應(yīng)用系統(tǒng)的規(guī)模不斷擴(kuò)大,業(yè)務(wù)量的變化,用戶需求的進(jìn)一步提高,多層分布式應(yīng)用系統(tǒng)開發(fā)模式成為系統(tǒng)開發(fā)的主流,掌握多層分布式系統(tǒng)開發(fā)的基本過程、思想,也成為學(xué)生程序設(shè)計(jì)能力必不可少的教學(xué)內(nèi)容。這種體系結(jié)構(gòu)的軟件設(shè)計(jì),要考慮兩個(gè)方面的問題,一個(gè)是業(yè)務(wù)邏輯層(也叫應(yīng)用服務(wù)器)設(shè)計(jì),是程序設(shè)計(jì)的一個(gè)重點(diǎn)難點(diǎn)。另一個(gè)是網(wǎng)絡(luò)環(huán)境下,軟件系統(tǒng)部署和運(yùn)行在多臺(tái)計(jì)算機(jī)上,需要相互協(xié)調(diào)地工作,必須考慮網(wǎng)絡(luò)通信協(xié)議的使用,客戶端與服務(wù)器之間怎樣建立連接,以及怎樣實(shí)現(xiàn)數(shù)據(jù)的交流等因素。
這個(gè)層次通常在數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)能力培養(yǎng)和計(jì)算機(jī)網(wǎng)絡(luò)課程開設(shè)后進(jìn)行。多層分布式系統(tǒng)開發(fā)編程技術(shù)訓(xùn)練,可以在第三個(gè)層次培養(yǎng)案例基礎(chǔ)上進(jìn)行,只需將系統(tǒng)的單機(jī)環(huán)境改為網(wǎng)絡(luò)環(huán)境,教師學(xué)生都只要把精力重點(diǎn)放在“多層、分布式”技術(shù)上,既節(jié)約了時(shí)間,而且效果好。
(五)校外專業(yè)頂崗實(shí)習(xí)
校外專業(yè)頂崗實(shí)習(xí),主要是對(duì)學(xué)生進(jìn)行職業(yè)素養(yǎng)培訓(xùn)。在大四的第一個(gè)學(xué)期,學(xué)生被安排到合作公司進(jìn)行長(zhǎng)達(dá)2個(gè)月的專業(yè)頂崗實(shí)習(xí)。實(shí)習(xí)期間,公司將對(duì)學(xué)生實(shí)行員工式管理,不僅要參與公司實(shí)際項(xiàng)目,而且也進(jìn)行上班出勤考核。通過2個(gè)月的校外專業(yè)頂崗實(shí)習(xí),學(xué)生專業(yè)知識(shí)的綜合實(shí)踐應(yīng)用能力得到進(jìn)一步鞏固提高,協(xié)作能力更強(qiáng),具有責(zé)任感和良好的團(tuán)隊(duì)精神,職業(yè)素質(zhì)得到提升。
程序設(shè)計(jì)能力是計(jì)算機(jī)專業(yè)學(xué)生的基本能力,同時(shí)又是最重要的職業(yè)能力,需要花大力氣培養(yǎng)。試想一個(gè)軟件開發(fā)團(tuán)隊(duì),如果沒有幾個(gè)程序設(shè)計(jì)能力強(qiáng)的程序設(shè)計(jì)人員作堅(jiān)強(qiáng)后盾,無論需求分析和設(shè)計(jì)方案做得多么好,最終可能只是空中樓閣。實(shí)踐表明,實(shí)踐教學(xué)環(huán)節(jié)的重視和實(shí)踐教學(xué)體系的不斷完善,畢業(yè)生的整體知識(shí)運(yùn)用能力明顯得到不斷提高,社會(huì)對(duì)畢業(yè)生的滿意度也在逐年提高。但軟件設(shè)計(jì)能力具有時(shí)代性強(qiáng)、變化快的特性,學(xué)生軟件能力的培養(yǎng)又是一個(gè)系統(tǒng)工程,因此,研究和探索學(xué)生程序設(shè)計(jì)能力的培養(yǎng),仍是今后一個(gè)時(shí)期內(nèi)計(jì)算機(jī)專業(yè)教學(xué)研究、教學(xué)改革的重點(diǎn)。
[1]姜貴平.高校計(jì)算機(jī)專業(yè)實(shí)踐教學(xué)的薄弱環(huán)節(jié)及改進(jìn)措施[J].實(shí)驗(yàn)室研究與探索,2010,(4):66-69.
[2]何昭青.計(jì)算機(jī)專業(yè)程序設(shè)計(jì)語言類課程教學(xué)探討[J].湖南第一師范學(xué)院學(xué)報(bào),2008,(3):40-42.
[3]劉磊安,閆大順.基于應(yīng)用能力與創(chuàng)新意識(shí)培養(yǎng)的實(shí)踐教學(xué)體系設(shè)計(jì)[J].計(jì)算機(jī)教育,2010,(10):147-149
[4]何昭青,陽西述,彭立,胡湘勇.計(jì)算機(jī)專業(yè)軟件設(shè)計(jì)課程群建設(shè)的研究與實(shí)踐[J].赤峰學(xué)院學(xué)報(bào),2011,(12): 226-228.
On Computer Practice Teaching System Based on the Program Design Ability Cultivation
HE Zhao-qing
(Information Science and Engineering Department,Hunan First Normal University,Changsha,Hunan 410205)
The ability to design program is a basic ability and also the most important professional ability for a computer student.And how to improve the student's ability of programming has been the focus of research.A study after years of teaching practice shows that an effective teaching should stress on practice teaching,strengthen program designing curriculum group construction,and construct a hierarchical,traction progressive practice teaching system.
ability to design program;curriculum group construction;practice teaching system;professional ability
TP3-4
A
1674-831X(2012)01-0062-04
2011-09-10
湖南省科學(xué)技術(shù)廳科技計(jì)劃課題(2011FJ3162);湖南省教育廳科技課題(11C0282)
何昭青(1964—),女,湖南邵陽人,湖南第一師范學(xué)院教授,碩士,主要從事計(jì)算機(jī)教育,計(jì)算機(jī)優(yōu)化算法,Web 3D研究;彭立(1974—),男,湖南汨羅人,湖南第一師范學(xué)院講師,碩士,主要從事軟件體系結(jié)構(gòu),Web服務(wù)技術(shù)研究;傅紅普(1973—),男,湖南汨羅人,湖南第一師范學(xué)院副教授,碩士,主要從事計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)研究。
[責(zé)任編輯:胡 偉]
湖南第一師范學(xué)院學(xué)報(bào)2012年1期