張永梅 馬禮 孫海燕 付昊天 周奇
摘 要: 針對計(jì)算機(jī)專業(yè)學(xué)生在編程和算法設(shè)計(jì)與分析中存在的問題,在課程設(shè)置與教學(xué)目標(biāo)、實(shí)驗(yàn)性課程教學(xué)、多模態(tài)教學(xué),和學(xué)習(xí)態(tài)度的指引等方面,給出了具體的改革措施,有效提升了學(xué)生的編程能力、算法設(shè)計(jì)與分析能力,以及分析和解決實(shí)際問題的能力。
關(guān)鍵詞: 編程能力; 算法設(shè)計(jì); 計(jì)算機(jī)專業(yè); 改革措施
中圖分類號:G642 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2016)03-60-04
Research and exploration of cultivating students' ability of programming,
algorithm design and analysis
Zhang Yongmei, Ma Li, Sun Haiyan, Fu Haotian, Zhou Qi
(School of Computer Science, North China University of Technology, Beijing 100144, China)
Abstract: Aiming at the problems existing in programming and algorithm design and analysis of computer specialty students, the concrete reform measures are given on the aspects of the curriculum and teaching objectives, experimental course teaching, multi-mode teaching and the guiding of learning attitude, which effectively improve students' ability of programming and algorithm design and analysis, as well as the ability to analyze and solve practical problems.
Key words: programming ability; algorithm design; computer specialty; reform measures
0 引言
計(jì)算機(jī)科學(xué)與技術(shù)本科生的基本學(xué)科能力可以歸納為計(jì)算思維能力、算法設(shè)計(jì)與分析能力、程序設(shè)計(jì)與實(shí)現(xiàn)能力、系統(tǒng)能力[1]。其中計(jì)算思維能力是指模型化、抽象思維能力、邏輯思維能力。系統(tǒng)能力是指計(jì)算機(jī)系統(tǒng)的認(rèn)知、分析、開發(fā)與應(yīng)用能力,也就是要站在系統(tǒng)的觀點(diǎn)上去分析和解決問題,追求問題的系統(tǒng)求解,而不是被局部的實(shí)現(xiàn)所困擾。算法設(shè)計(jì)與分析能力、程序設(shè)計(jì)能力是計(jì)算機(jī)類專業(yè)學(xué)生應(yīng)該具備的基本能力之一,是從抽象思維到具體應(yīng)用方法的轉(zhuǎn)換,涉及到閱讀判斷、思考分析、抽象綜合、表達(dá)創(chuàng)造等多項(xiàng)能力,對計(jì)算機(jī)專業(yè)高素質(zhì)人才的培養(yǎng)不可或缺。
從目前社會對計(jì)算機(jī)專業(yè)人才的需求來看,高校在培養(yǎng)學(xué)生的程序設(shè)計(jì)、算法設(shè)計(jì)與分析能力上所作出的努力還遠(yuǎn)遠(yuǎn)不夠。本文探討了計(jì)算機(jī)專業(yè)學(xué)生在程序設(shè)計(jì)、算法設(shè)計(jì)與分析方面存在的主要問題,給出了在課程與實(shí)踐中提高學(xué)生的程序設(shè)計(jì)、算法設(shè)計(jì)與分析能力的具體措施。
1 現(xiàn)狀與問題分析
近年來,企事業(yè)用人單位較普遍的反映是計(jì)算機(jī)類畢業(yè)生的實(shí)際應(yīng)用知識、動手能力和程序設(shè)計(jì)開發(fā)經(jīng)驗(yàn)嚴(yán)重不足,尤其是程序設(shè)計(jì)能力、算法設(shè)計(jì)與分析能力無法達(dá)到用人單位的要求。這不僅影響學(xué)生就業(yè),更阻礙了其進(jìn)一步發(fā)展與自我提升。
我們歸納了問題的主要原因。一是學(xué)生對于有關(guān)程序設(shè)計(jì)及算法的知識僅僅停留在了解的程度上,未能融匯貫通,進(jìn)而應(yīng)用這些知識解決實(shí)際問題。二是教師在講解程序設(shè)計(jì)、算法設(shè)計(jì)與分析的相關(guān)知識時,并沒有將理論與實(shí)際有機(jī)的結(jié)合。三是實(shí)際教學(xué)過程中并未對學(xué)生進(jìn)行真正的軟件項(xiàng)目開發(fā)訓(xùn)練。四是對第一門程序設(shè)計(jì)課程的教學(xué)不夠重視。五是學(xué)生的數(shù)學(xué)基礎(chǔ)差、邏輯思維能力弱,阻礙了學(xué)生進(jìn)一步設(shè)計(jì)算法和分析算法。
2 程序設(shè)計(jì)、算法設(shè)計(jì)與分析能力培養(yǎng)的具體措施
教育教學(xué)工作應(yīng)該以學(xué)生為主體,同時充分發(fā)揮教師的引領(lǐng)、指導(dǎo)作用,二者有機(jī)結(jié)合,才能充分調(diào)動學(xué)生的學(xué)習(xí)積極性和主動性,從而達(dá)到最佳的教學(xué)效果。因此本文以“學(xué)生為主體,教師為主導(dǎo)”這一思想為指導(dǎo),結(jié)合本校的實(shí)際情況,以及教師在教育教學(xué)工作過程中遇到的問題和廣大學(xué)生的反饋,從以下四個方面探討教育教學(xué)改革的措施。
2.1 調(diào)整課程設(shè)置和教學(xué)目標(biāo)
用計(jì)算機(jī)求解一個實(shí)際問題,首先要從這個實(shí)際問題中抽象出一個數(shù)學(xué)模型,然后設(shè)計(jì)一個解此數(shù)學(xué)模型的算法,最后根據(jù)算法編寫程序,以便調(diào)試、編譯、連接和運(yùn)行,從而形成該問題的解。從實(shí)際問題中抽象出一個數(shù)學(xué)模型的實(shí)質(zhì),其實(shí)就是要用數(shù)學(xué)方法抽取其主要的、本質(zhì)的內(nèi)容,最終實(shí)現(xiàn)對該問題的正確認(rèn)識。設(shè)計(jì)出解決問題的算法后,要清楚地知道算法的優(yōu)劣處,如果是好的算法則不必對其懷疑而再浪費(fèi)時間進(jìn)行研究;如果不是好算法則應(yīng)再進(jìn)行改進(jìn)。而如何知道算法的優(yōu)劣,則需要學(xué)會分析算法。算法分析是對一個算法需要多少計(jì)算時間和存儲空間作定量的分析。編程就是設(shè)計(jì)程序,用計(jì)算機(jī)來解決問題。
與數(shù)據(jù)結(jié)構(gòu)和算法設(shè)計(jì)相關(guān)的課程較多,其中三分之二以上的專業(yè)課都需要學(xué)習(xí)編程,主要是提高學(xué)生編程能力和算法分析能力。對于本科生來說,這些課程的重要性是不言而喻的。如果掌握不好則會阻礙他們對編程能力乃至對計(jì)算機(jī)系統(tǒng)的認(rèn)識和理解。因此,應(yīng)該從課程的意義出發(fā),以提高學(xué)生的編程能力和算法設(shè)計(jì)與分析能力為目標(biāo),結(jié)合計(jì)算機(jī)專業(yè)的特點(diǎn)與教學(xué)實(shí)際情況,將“C語言程序設(shè)計(jì)”、“面向?qū)ο蟪绦蛟O(shè)計(jì)”、“離散數(shù)學(xué)”、“數(shù)據(jù)結(jié)構(gòu)”、“算法設(shè)計(jì)與分析”、“網(wǎng)絡(luò)編程”、“Windows編程技術(shù)”、“操作系統(tǒng)”、“計(jì)算機(jī)網(wǎng)絡(luò)”、“編譯原理”和“數(shù)據(jù)庫技術(shù)”等幾門課程有機(jī)地結(jié)合起來,并充分利用它們內(nèi)在的聯(lián)系優(yōu)化授課的順序與內(nèi)容,為學(xué)生提供一套以編程能力和算法設(shè)計(jì)與分析能力為中心的教學(xué)體系,為學(xué)好相應(yīng)的課程打下堅(jiān)實(shí)基礎(chǔ)[2]。
“C語言程序設(shè)計(jì)”和“離散數(shù)學(xué)”作為計(jì)算機(jī)專業(yè)學(xué)生較早接觸的兩門課程,應(yīng)該為后續(xù)專業(yè)課的學(xué)習(xí)打好基礎(chǔ)。C語言是學(xué)生在大學(xué)接觸的第一門編程語言,教學(xué)中應(yīng)該重點(diǎn)介紹程序設(shè)計(jì)思想,并培養(yǎng)學(xué)生的邏輯思維能力、抽象能力、編程習(xí)慣,而不是一味地強(qiáng)調(diào)C語言的語法特性。同時,“C語言程序設(shè)計(jì)”這門課也為后續(xù)的數(shù)據(jù)結(jié)構(gòu)、算法設(shè)計(jì)與分析課程做好實(shí)踐上的鋪墊?!半x散數(shù)學(xué)”的概念、理論及方法應(yīng)用于計(jì)算機(jī)科學(xué)與技術(shù)的諸多領(lǐng)域,并大量出現(xiàn)在“數(shù)據(jù)結(jié)構(gòu)”、“數(shù)據(jù)庫系統(tǒng)”、“編譯原理”、“算法設(shè)計(jì)與分析”、“計(jì)算機(jī)網(wǎng)絡(luò)”等專業(yè)課程中。此外,離散數(shù)學(xué)所提供的訓(xùn)練十分有益于學(xué)生的邏輯推理、抽象概括及歸納構(gòu)造能力的提高,十分有益于培養(yǎng)學(xué)生嚴(yán)謹(jǐn)、完善、規(guī)范的科學(xué)態(tài)度。
通過“數(shù)據(jù)結(jié)構(gòu)”課程,使學(xué)生了解數(shù)據(jù)對象的特性,學(xué)會數(shù)據(jù)組織的方法,以及各種類型數(shù)據(jù)的處理方法,同時培養(yǎng)學(xué)生良好的程序設(shè)計(jì)技能。“算法設(shè)計(jì)與分析”課程重點(diǎn)講授分治法、貪心法、動態(tài)規(guī)劃、回溯法、分支限界法,培養(yǎng)學(xué)生分析問題和解決問題的能力,使學(xué)生掌握算法設(shè)計(jì)的基本方法,熟悉算法分析的基本技術(shù),并能熟練運(yùn)用一些常用算法?!安僮飨到y(tǒng)”、“計(jì)算機(jī)網(wǎng)絡(luò)”、“編譯原理”和“數(shù)據(jù)庫技術(shù)”都是對前面學(xué)習(xí)到的一些基本的數(shù)據(jù)結(jié)構(gòu)和算法的具體應(yīng)用,再加上一些相關(guān)領(lǐng)域的專業(yè)知識。
在“操作系統(tǒng)”教學(xué)中,讓學(xué)生了解操作系統(tǒng)的一些基本概念,如:進(jìn)程和線程、虛擬內(nèi)存、死鎖等,并按操作系統(tǒng)的五大功能分模塊進(jìn)行介紹。通過相應(yīng)實(shí)驗(yàn)幫助學(xué)生理解重要概念,如通過實(shí)現(xiàn)“銀行家算法”讓學(xué)生明白進(jìn)程間的通信過程、模擬LRU算法了解頁面如何置換,通過實(shí)驗(yàn)使學(xué)生更加深刻地理解有關(guān)概念[3]。對于“編譯原理”這門課,由于其理論性較強(qiáng),在教學(xué)過程中應(yīng)該盡量多與實(shí)驗(yàn)相結(jié)合,在課堂上比較難理解的內(nèi)容,例如詞法分析中的有限自動機(jī)內(nèi)容或語法分析中LL(1)文法的理解等等,都可以通過與實(shí)驗(yàn)結(jié)合來促進(jìn)對課堂內(nèi)容的理解,可通過完成詞法分析器的實(shí)驗(yàn)了解編譯器如何把輸入的源程序轉(zhuǎn)化為單詞符號串。
2.2 加強(qiáng)實(shí)驗(yàn)性課程教學(xué)
計(jì)算機(jī)專業(yè)相關(guān)的課程總體來說理論性比較強(qiáng)[4-5],開設(shè)實(shí)驗(yàn)性課程有利于學(xué)生通過自己的實(shí)際操作加深對課堂知識的理解,同時強(qiáng)化編程能力、算法設(shè)計(jì)能力和創(chuàng)新能力。許多課程都有上機(jī)編程實(shí)驗(yàn)內(nèi)容,如“C語言程序設(shè)計(jì)”、“面向?qū)ο蟪绦蛟O(shè)計(jì)”、“數(shù)據(jù)結(jié)構(gòu)”、“算法設(shè)計(jì)與分析”、“Java程序設(shè)計(jì)”、“操作系統(tǒng)”等課程,都要求學(xué)生完成一定數(shù)量的設(shè)計(jì)性,完成驗(yàn)證性實(shí)驗(yàn)。我們設(shè)立了工程與學(xué)術(shù)實(shí)踐、計(jì)算機(jī)軟件課程設(shè)計(jì)、獨(dú)立實(shí)驗(yàn)課程以及畢業(yè)設(shè)計(jì)等實(shí)訓(xùn)科目,堅(jiān)持編程實(shí)踐四年不間斷。
實(shí)驗(yàn)貫穿于理論、抽象和設(shè)計(jì)過程;實(shí)驗(yàn)對軟件的設(shè)計(jì)和實(shí)現(xiàn)、測試原理和方法起示范作用;實(shí)驗(yàn)不僅是對理論的驗(yàn)證,也是技術(shù)訓(xùn)練和能力培養(yǎng),包括動手能力、分析問題解決問題能力、表達(dá)能力、寫作能力等。教學(xué)活動是教師和學(xué)生不斷交流的過程,實(shí)驗(yàn)是實(shí)現(xiàn)這個過程的橋梁,可以彌補(bǔ)課堂教學(xué)的不足,加深對理論過程的理解,啟發(fā)學(xué)生深入思考,敢于創(chuàng)新,理論聯(lián)系實(shí)際。
例如“編譯原理”課程是計(jì)算機(jī)類專業(yè)的一門重要專業(yè)課。設(shè)置該課程是讓學(xué)生學(xué)習(xí)編譯系統(tǒng)的結(jié)構(gòu)、工作流程及編譯程序各組成部分的設(shè)計(jì)原理和實(shí)現(xiàn)技術(shù),使學(xué)生通過學(xué)習(xí)既掌握編譯理論和方法基本知識,也具有設(shè)計(jì)、實(shí)現(xiàn)、分析和維護(hù)編譯程序等方面的初步能力。編譯原理是一門理論性和實(shí)踐性都比較強(qiáng)的課程。實(shí)驗(yàn)的目的是加深學(xué)生對課堂知識的理解,掌握幾個主要編譯階段的處理方法,增強(qiáng)實(shí)踐能力,能完成初步設(shè)計(jì)、編制和調(diào)試編譯系統(tǒng)。
實(shí)驗(yàn)一詞法分析器構(gòu)造,通過對給定源語言詞法分析程序的設(shè)計(jì),加深對詞法分析原理的理解,掌握源語言的接受、存貯、預(yù)處理和掃描分析,生成正確的單詞符號串二元式序列。實(shí)驗(yàn)二語法分析器構(gòu)造,借助于詞法分析程序提供的分析結(jié)果,編寫一個算符優(yōu)先語法分析程序,程序能進(jìn)行語法結(jié)構(gòu)分析和錯誤檢查并產(chǎn)生相應(yīng)的歸約信息。同時給出出錯信息和錯誤類型,從而加深對語法分析的理解。進(jìn)一步設(shè)計(jì)實(shí)現(xiàn)球類描述語言詞法分析、語法分析實(shí)驗(yàn)(擴(kuò)展實(shí)驗(yàn)),根據(jù)球類比賽技戰(zhàn)術(shù)分析的需求,設(shè)計(jì)的解釋器由詞法器、語法器和語義分析模塊三部分組成,詞法分析器負(fù)責(zé)詞法分析的預(yù)處理和輸入單詞的解釋;語法分析負(fù)責(zé)輸入碼的語法結(jié)構(gòu)檢查和解釋;在詞法和語法分析器基礎(chǔ)上,語義分析模塊負(fù)責(zé)比賽技戰(zhàn)術(shù)的分類與統(tǒng)計(jì)工作。
本校開設(shè)了“程序設(shè)計(jì)專題訓(xùn)練”、“計(jì)算機(jī)網(wǎng)絡(luò)專題訓(xùn)練”、“操作系統(tǒng)專題訓(xùn)練”、“數(shù)據(jù)庫專題訓(xùn)練”、“軟件測試技術(shù)”、“嵌入式技術(shù)”等實(shí)踐課程。如“程序設(shè)計(jì)專題訓(xùn)練”課程是C程序設(shè)計(jì)課程后續(xù)的訓(xùn)練課程,針對程序設(shè)計(jì)中常見問題,以專題形式進(jìn)行訓(xùn)練。通過該課程的學(xué)習(xí),使學(xué)生能深入理解C語言特性,掌握基本程序設(shè)計(jì)方法,學(xué)會常見問題的處理技巧,提高程序設(shè)計(jì)能力,為后續(xù)專業(yè)課程的學(xué)習(xí)打下良好基礎(chǔ)。又如“操作系統(tǒng)專題訓(xùn)練”課程重點(diǎn)提高學(xué)生對操作系統(tǒng)的實(shí)際操作能力,使學(xué)生了解和掌握在Windows、Linux操作系統(tǒng)上運(yùn)行的應(yīng)用服務(wù),對操作系統(tǒng)與外部接口(shell)有更深入的了解和認(rèn)識。
為了能切實(shí)提高學(xué)生的編程水平和算法設(shè)計(jì)與分析能力,我們開設(shè)了“項(xiàng)目管理實(shí)踐”、“軟件課程設(shè)計(jì)”、“企業(yè)實(shí)訓(xùn)”、“學(xué)術(shù)與工程實(shí)踐”等實(shí)踐課程,如“項(xiàng)目管理實(shí)踐”課程培養(yǎng)學(xué)生參與大型軟件項(xiàng)目開發(fā)的基本能力,使學(xué)生能夠熟練掌握軟件開發(fā)環(huán)境使用和軟件開發(fā)的基本方法,為畢業(yè)設(shè)計(jì)和就業(yè)提供了必要的技能訓(xùn)練。按照5-8人的規(guī)模成立軟件開發(fā)項(xiàng)目組,以開發(fā)一個軟件項(xiàng)目作為實(shí)訓(xùn)的主線;項(xiàng)目經(jīng)理由學(xué)生擔(dān)任,項(xiàng)目成員的角色由項(xiàng)目經(jīng)理根據(jù)各成員的技能來確定;由實(shí)訓(xùn)方提供項(xiàng)目的用戶需求,并且確定要開展的軟件工程活動和管理活動及項(xiàng)目里程碑;根據(jù)開展的軟件工程和管理活動,提取出一些關(guān)鍵知識點(diǎn),以案例的方式進(jìn)行項(xiàng)目培訓(xùn),并將其用于項(xiàng)目開發(fā)的實(shí)踐中,其中案例來自實(shí)際開發(fā)的軟件和系統(tǒng)集成項(xiàng)目。
2.3 緊跟時代變化,實(shí)現(xiàn)多模態(tài)教學(xué)
首先重視教學(xué)內(nèi)容的時效性,教師在教學(xué)過程中,不僅僅著眼于所選用的教材,還應(yīng)融入前沿思想、技術(shù)和一些交叉學(xué)科的內(nèi)容。例如在“編譯原理”課程的教學(xué)中,不局限于一種語言,而應(yīng)該選擇多種不同體系結(jié)構(gòu)的編程語言進(jìn)行介紹;又例如可以選擇C語言、Ruby、Python,甚至是蘋果最新推出的Swift語言,通過比較這些語言的不同特征,給出其在編譯過程中的各自特點(diǎn),從而使學(xué)生對編譯程序所做的工作有更加清晰透徹的了解。在“數(shù)據(jù)結(jié)構(gòu)”、“面向?qū)ο蟪绦蛟O(shè)計(jì)”這類課程的教學(xué)中,可以多介紹一些國內(nèi)外的文獻(xiàn)、最新應(yīng)用等,從多種不同角度引導(dǎo)學(xué)生程序閱讀及編程的興趣。這就要求教師關(guān)注計(jì)算機(jī)及電子信息產(chǎn)業(yè)發(fā)展研究的最新內(nèi)容,并及時將這些新內(nèi)容融入到教學(xué)工作中。
其次,重視教學(xué)方式的時效性,培養(yǎng)學(xué)生程序閱讀能力、編程能力,其手段要緊跟時代步伐。充分利用互聯(lián)網(wǎng)時代的MOOC,如北京大學(xué)的MOOC、浙江大學(xué)的MOOC、本校的MOOC等,將原先只能在電腦上或書本中的程序放在手機(jī)上,使學(xué)生可以隨時隨地從手機(jī)端進(jìn)行學(xué)習(xí)。學(xué)生課外可以利用北京航空航天大學(xué)實(shí)驗(yàn)類MOOC的計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)課程、移動計(jì)算兩門課程,通過計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)課程,了解網(wǎng)絡(luò)基本原理,遠(yuǎn)程配路由器、交換機(jī),組一個小的網(wǎng)絡(luò),掌握基本的網(wǎng)絡(luò)故障排查方法。通過移動計(jì)算即Android編程,MOOC已經(jīng)搭好大的框架,教學(xué)生編寫小的app程序,并將編寫好的代碼嵌入到框架中。
通過促進(jìn)在計(jì)算機(jī)系本科教學(xué)工作中多模態(tài)教學(xué)模式的實(shí)現(xiàn),可以將原先計(jì)算機(jī)專業(yè)教學(xué)以課堂教學(xué)為主、課下上機(jī)實(shí)驗(yàn)為輔,其余全靠學(xué)生自覺學(xué)習(xí)的格局,轉(zhuǎn)化為課堂教學(xué)為主導(dǎo),智能端隨時學(xué)習(xí)為輔,課下上機(jī)實(shí)驗(yàn)為監(jiān)督檢測的新格局。這樣的格局摒棄了過去教學(xué)只能在課堂進(jìn)行的成見,給予學(xué)生更多的學(xué)習(xí)自由,可以有效提高學(xué)生的程序設(shè)計(jì)、算法設(shè)計(jì)與分析能力,同時節(jié)約課堂時間,教師在課堂中能夠有更多時間講解一些更加實(shí)用的難以從書本中直接獲得的知識。
2.4 注重對學(xué)生學(xué)習(xí)態(tài)度的引導(dǎo)
在對計(jì)算機(jī)系學(xué)生的調(diào)查中發(fā)現(xiàn),后進(jìn)生大多有“畏難”情緒。他們往往還未開始編程,就對自己的能力進(jìn)行主觀否定,這種特征在調(diào)劑生身上表現(xiàn)得較為突出。對于這種情況,教師在課堂上如果只單方面強(qiáng)調(diào)知識的重要性,甚至直接點(diǎn)出考試及格的重要性并不會對這類學(xué)生思維模式的轉(zhuǎn)變有好處。教師在教學(xué)過程中,常常會不自覺地將自己體驗(yàn)過的應(yīng)試競爭態(tài)度帶入教學(xué)工作中,具體表現(xiàn)為:過于強(qiáng)調(diào)考試分?jǐn)?shù),為了提起學(xué)生的聽課興趣甚至以考試題型作為誘餌,經(jīng)常強(qiáng)調(diào)獎學(xué)金和保研問題,整個教學(xué)工作圍繞著考試等。這其實(shí)都是不正當(dāng)?shù)母偁幹敢绞?,只會增?qiáng)學(xué)生的厭學(xué)心理。
因此,計(jì)算機(jī)專業(yè)講師在教學(xué)過程中,應(yīng)格外注重對學(xué)生學(xué)習(xí)態(tài)度的指引,特別是在代碼類課程的教學(xué)過程中,教師不應(yīng)根據(jù)自己多年的代碼編寫經(jīng)驗(yàn)來對代碼進(jìn)行講解,而是應(yīng)該想象自己是這種代碼的一名新學(xué)生,對這類代碼一無所知的情況下,可能會從哪里入手進(jìn)行理解。與其說“這門課掛科了,你畢業(yè)就有危險”,不如說“學(xué)會寫代碼,你就可以自由駕馭整臺計(jì)算機(jī)”;與其說“這種數(shù)據(jù)類型期末考試一定會考”,不如說“你玩的泡泡龍中,屏幕上的泡泡就可以用這種數(shù)據(jù)類型來寫”。在教學(xué)中注重引導(dǎo)學(xué)生的學(xué)習(xí)興趣,激發(fā)學(xué)生的學(xué)習(xí)熱情和探索精神,真正做到以學(xué)生為本,從學(xué)生的角度理解教學(xué),才能在教學(xué)工作中正確指引學(xué)生的學(xué)習(xí)態(tài)度,達(dá)到最佳教學(xué)效果。
3 總結(jié)
計(jì)算機(jī)科學(xué)是一門具有創(chuàng)造性意識活動的學(xué)科,計(jì)算機(jī)本質(zhì)上是一個程序的機(jī)器,只有那些真正懂得程序的人才能懂得計(jì)算機(jī)。因此程序設(shè)計(jì)能力、算法設(shè)計(jì)與分析能力是一名合格計(jì)算機(jī)類專業(yè)的畢業(yè)生必須具備的兩大基礎(chǔ)能力。本文給出的具體措施,有效提高了學(xué)生的編程能力、算法設(shè)計(jì)與分析能力,以及分析和解決實(shí)際問題的能力,有利于培養(yǎng)經(jīng)濟(jì)社會發(fā)展急需的信息產(chǎn)業(yè)人才。
參考文獻(xiàn)(References):
[1] 王銳.改革計(jì)算機(jī)實(shí)驗(yàn)課,提高計(jì)算機(jī)教學(xué)水平[J].科技與教
育,2008.5:197-198
[2] 曹曉蘭,彭佳紅,彭劍.計(jì)算機(jī)本科生編程能力與軟件能力的
培養(yǎng)研究[J].計(jì)算機(jī)教育,2014.4:72-75
[3] 張曉孿,王西鋒.計(jì)算機(jī)專業(yè)大學(xué)生程序設(shè)計(jì)能力培養(yǎng)模式的
探索[J].信息技術(shù),2011.10(10):43-46
[4] 劉幸.教育改革背景下工科院校學(xué)生培養(yǎng)模式探析[J].考試
周刊,2015.56:144-145
[5] 耿國華.程序設(shè)計(jì)能力培養(yǎng)模式的探索與實(shí)踐[J].中國大學(xué),
2009.3:30-32