陳紅琳(安徽財經(jīng)大學(xué)管理科學(xué)與工程學(xué)院,蚌埠 233030)
《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)改革與實踐
陳紅琳
(安徽財經(jīng)大學(xué)管理科學(xué)與工程學(xué)院,蚌埠 233030)
《數(shù)據(jù)結(jié)構(gòu)》作為一門計算機程序設(shè)計的基礎(chǔ)課程,初學(xué)者往往會對繁雜、枯燥的理論產(chǎn)生畏難情緒,學(xué)習(xí)效果較差?!稊?shù)據(jù)結(jié)構(gòu)》課程的教學(xué)目標(biāo)強調(diào)學(xué)生編程技能和綜合運用能力的提高,因此在教學(xué)中立足加工數(shù)據(jù)的特性,引導(dǎo)學(xué)生學(xué)習(xí)數(shù)據(jù)的合理組織,同時根據(jù)操作的相關(guān)特性,采用高效的方式存儲數(shù)據(jù),并設(shè)計高效率算法。然而由于傳統(tǒng)教學(xué)方法以及教師教學(xué)技能的局限性,同時由于學(xué)生對基本理論知識學(xué)習(xí)積極性不高,雖然一再強調(diào)提高編程能力,但始終不能達(dá)到預(yù)期效果。《數(shù)據(jù)結(jié)構(gòu)》的教學(xué)效果直接影響到其他后續(xù)課程的學(xué)習(xí),關(guān)系到學(xué)生的編程水平及計算機實際應(yīng)用能力,以及學(xué)生對后續(xù)課程的學(xué)習(xí)興趣。因此,對《數(shù)據(jù)結(jié)構(gòu)》課程建設(shè),應(yīng)以提高課程的教學(xué)效果,充分發(fā)揮學(xué)生的潛能,激發(fā)學(xué)生的學(xué)習(xí)興趣,提升職業(yè)技能為目標(biāo)。
針對該課程能力的“目標(biāo)缺位”、“知識本位”等問題,文章提出將工程項目理念引入到教學(xué)活動中,對《數(shù)據(jù)結(jié)構(gòu)》課程的教學(xué)改革進(jìn)行了研究與探討。
《數(shù)據(jù)結(jié)構(gòu)》理論性極強,能力提高是知識體系不斷積累的過程,從短期看,學(xué)習(xí)效果不明顯,只有在學(xué)習(xí)中實現(xiàn)從量變到質(zhì)變的飛躍,學(xué)生才能有學(xué)習(xí)成就感。同時,由于缺乏實踐應(yīng)用經(jīng)驗,空洞理論的學(xué)習(xí)往往會使得學(xué)生從“主動學(xué)習(xí)”轉(zhuǎn)化為“被動學(xué)習(xí)”,以致不能真正明確該課程的學(xué)習(xí)目的以及課程在整個課程體系的重要作用,最終使得教學(xué)效果達(dá)不到期望值。具體來講,該課程教學(xué)中存在以下兩個方面的問題。
(1)知識本位的教學(xué)目標(biāo)
《數(shù)據(jù)結(jié)構(gòu)》的教學(xué)大綱強調(diào)幾種數(shù)據(jù)結(jié)構(gòu)的特點及操作方法,要求學(xué)生能進(jìn)行算法設(shè)計和程序編寫??梢姡缶V專注于知識體系的構(gòu)建,雖然強調(diào)培養(yǎng)編程水平,提高能力,但知識積累的初衷弱化了能力培養(yǎng)的目標(biāo)。盡管知識積累是能力構(gòu)建的基礎(chǔ),但知識積累的數(shù)量并不能代表能力的高低,教師授課過程中立足于理論體系,對每個知識點精講細(xì)講,強行灌輸,這極大地禁錮了學(xué)生的思維,不能很好地發(fā)揮學(xué)生的能動性,很難使學(xué)生的自主性、創(chuàng)造性、學(xué)習(xí)能力以及工程能力得到充分的發(fā)展。這與我們初衷卻是背道而馳的。
當(dāng)然,能力的構(gòu)建應(yīng)以知識為基礎(chǔ),教師在教學(xué)中應(yīng)引導(dǎo)學(xué)生實現(xiàn)知識積累的量變到到能力提升的質(zhì)變的轉(zhuǎn)化,這是教師應(yīng)堅持的目標(biāo)。
(2)算法實現(xiàn)的實驗環(huán)節(jié)
《數(shù)據(jù)結(jié)構(gòu)》課程的實驗環(huán)節(jié)強調(diào)算法的實現(xiàn),以此來提高編程水平。在此過程中,學(xué)生逐步熟悉程序編寫的規(guī)則,對程序設(shè)計語言的使用也會越來越熟練,在一定程度上提高了編程技能。但學(xué)生一方面滿足于個人編程技能的提高,另一方面卻對該課程的應(yīng)用領(lǐng)域以及在整個課程體系中的作用感到困惑。目前,大學(xué)生抱怨沒有獲得校內(nèi)實踐經(jīng)驗,所以社會上缺乏有動手能力和實踐經(jīng)驗的大學(xué)畢業(yè)生[1],人才供需銜接不上,但教師由于自身的實踐經(jīng)驗缺乏而顯得力不從心??梢姡髮W(xué)課程建設(shè)應(yīng)以社會需求為導(dǎo)向,實驗環(huán)節(jié)必須兼顧算法實現(xiàn)與現(xiàn)實應(yīng)用。
目前培養(yǎng)出來的學(xué)生缺乏工程設(shè)計能力,不能滿足IT企業(yè)的需求。文中引入CDIO(構(gòu)思Conceive,設(shè)計Design,實現(xiàn)Implement,運作Operate)工程教育理念,來提高學(xué)生職業(yè)技能。
我校信息管理與信息系統(tǒng)專業(yè)的辦學(xué)定位是培養(yǎng)應(yīng)用型人才,《數(shù)據(jù)結(jié)構(gòu)》課程作為專業(yè)基礎(chǔ)課,一方面要通過該門課程提高學(xué)生編程能力,另一方面要與專業(yè)結(jié)合,進(jìn)行實踐創(chuàng)新,圍繞現(xiàn)實應(yīng)用,提高專業(yè)技能?!稊?shù)據(jù)結(jié)構(gòu)》課程內(nèi)容本身具有很強的理論性和抽象性等特點,講解和學(xué)習(xí)難度大,實踐環(huán)節(jié)的引入不僅可以補充、深化和拓展理論教學(xué),還可以加深學(xué)生對理論知識的理解。
作為目前被廣泛認(rèn)可的工程教育理念,CDIO以產(chǎn)品從研發(fā)到運行的生命周期全過程為載體,提倡在實踐驅(qū)動下,引導(dǎo)學(xué)生主動學(xué)習(xí),強調(diào)課程之間的有機聯(lián)系,在這種方式下學(xué)習(xí)相關(guān)理論、工程技術(shù),讓學(xué)生參與工程從構(gòu)思、設(shè)計到實現(xiàn)的全過程,從而擁有專業(yè)基本能力、工程實踐能力、團隊協(xié)作交流能力和系統(tǒng)綜合應(yīng)用能力。
通過引入CDIO的理念加強數(shù)據(jù)結(jié)構(gòu)綜合應(yīng)用能力的培養(yǎng),本文制定了CDIO能力培養(yǎng)的主線,如圖1,該《數(shù)據(jù)結(jié)構(gòu)》課程CDIO能力結(jié)構(gòu)框圖從四個能力層面,進(jìn)行理論與實踐教學(xué)的改革與創(chuàng)新。第一為基礎(chǔ)知識層面,培養(yǎng)學(xué)生數(shù)據(jù)結(jié)構(gòu)設(shè)計能力和算法設(shè)計能力;第二為基本能力層面,要求學(xué)生具備軟件設(shè)計能力;第三為項目成員的溝通協(xié)作能力層面;第四為參與項目研發(fā)的系統(tǒng)工程能力。在《數(shù)據(jù)結(jié)構(gòu)》的教學(xué)過程中設(shè)計項目為教學(xué)活動主線,立足于能力培養(yǎng)與知識的教、學(xué)、用的關(guān)聯(lián),而不是只關(guān)注數(shù)據(jù)結(jié)構(gòu)的理論知識[2]。
圖1 數(shù)據(jù)結(jié)構(gòu)CDIO能力結(jié)構(gòu)框圖
在數(shù)據(jù)結(jié)構(gòu)的教學(xué)過程中,筆者引入了CDIO的教學(xué)理念,對教學(xué)過程進(jìn)行改革,取得了良好的教學(xué)效果。
(1)真實項目為載體,教學(xué)做一體化
CDIO的核心是“項目化教學(xué)”,以項目為切入點,課堂教學(xué)圍繞項目展開,以此來實現(xiàn)學(xué)生能力培養(yǎng)的目標(biāo)。項目教學(xué)法是一種基于構(gòu)建主義理論的探究式學(xué)習(xí)模式,將教學(xué)內(nèi)容融入一個個小型項目的真實情境中,激發(fā)學(xué)生的自主性學(xué)習(xí),用項目引導(dǎo)學(xué)生開展理論探索,圍繞項目的實現(xiàn)過程來學(xué)習(xí)相關(guān)理論[3]。通過教學(xué)實踐,針對《數(shù)據(jù)結(jié)構(gòu)》課程的特點,在教學(xué)中通過小型項目驅(qū)動,實現(xiàn)“做中學(xué)”,極大提高了學(xué)生的學(xué)習(xí)興趣,表1為各知識點的項目設(shè)計情況。
表1 項目一覽表
教學(xué)活動立足項目的生命期來展開,先引入項目,讓學(xué)生明確教學(xué)目標(biāo),然后著手基本理論的學(xué)習(xí),培養(yǎng)學(xué)生的算法設(shè)計技能、編程能力以及團隊協(xié)作能力。這種將項目融入到各個知識點的教學(xué)思想,讓學(xué)生從主觀上對數(shù)據(jù)結(jié)構(gòu)課程有一個感性的認(rèn)識的同時,還使得他們在任務(wù)驅(qū)動下學(xué)習(xí)相關(guān)理論知識,提升編程能力。這點正符合項目教學(xué)、任務(wù)驅(qū)動的課程體系改革的目標(biāo)。
(2)分層次實踐教學(xué)
在本課程中采用理論知識、實驗教學(xué)、素質(zhì)拓展三位一體的課程體系,其中實踐教學(xué)是能力提高的重要環(huán)節(jié)。由于大多數(shù)學(xué)生編程能力較弱,一開始就直接開展項目設(shè)計,往往會心有余而力不足,合理設(shè)計實踐教學(xué)環(huán)節(jié)對提高學(xué)生能力起著至關(guān)重要的作用。為此,我們將實踐教學(xué)環(huán)節(jié)進(jìn)行分層設(shè)計,將課程實踐分成基礎(chǔ)實驗、開放性實驗兩個層次?;A(chǔ)實驗涉及簡單算法的實現(xiàn),主要引導(dǎo)學(xué)生自主、循序漸進(jìn)地學(xué)習(xí),鞏固學(xué)生對基本理論的理解,提高基本編程能力;開放性實驗對每種數(shù)據(jù)結(jié)構(gòu)有針對性地設(shè)計,如上表1,也可由學(xué)生自擬相關(guān)題目,采用軟件設(shè)計思想來完成該軟件項目,以此來訓(xùn)練學(xué)生的工程意識和程序開發(fā)能力。
(3)項目團隊共同協(xié)作
CDIO強調(diào)培養(yǎng)學(xué)生實踐動手能力,針對每個精心挑選設(shè)計的項目,我們要求學(xué)生以自由組合的方式組成項目開發(fā)團隊,學(xué)生在項目里承擔(dān)不同的任務(wù),比如項目規(guī)劃、軟件分析、程序開發(fā)、程序測試等,學(xué)生經(jīng)過這種模擬訓(xùn)練,掌握了程序設(shè)計的流程,了解了每個步驟的重要作用,同時加深了對相關(guān)理論知識的理解,增強了程序設(shè)計的能力。另外,學(xué)生在項目中的角色也要多樣化,在不同項目中充當(dāng)不同的角色,加大職業(yè)技能的深度的同時,兼顧廣度,向技能全面化方向發(fā)展。這種將“工作情境模擬教學(xué)法”引入實驗課程,引導(dǎo)學(xué)生團體交流合作,從方案設(shè)計、框架構(gòu)建、程序設(shè)計到調(diào)試實現(xiàn),使學(xué)生將所學(xué)知識貫穿起來,提高學(xué)生的實戰(zhàn)能力與綜合運用知識的能力。
通過項目團隊合作開發(fā)軟件,學(xué)生經(jīng)過真實過程的體驗,學(xué)習(xí)熱情高漲,業(yè)務(wù)能力也得到極大的提高。
(4)綜合能力評價的考核方式
課程的評價方式改革是教學(xué)改革的重要環(huán)節(jié)。CDIO課程采用多元化的考核機制,考核指標(biāo)融入到學(xué)習(xí)過程的各個環(huán)節(jié),除了專業(yè)技能被列入考核指標(biāo)外,學(xué)生的人際能力、團隊協(xié)作能力也是一個重要的考核依據(jù)。通過對學(xué)生的綜合素質(zhì)進(jìn)行全面評估的方式,督促學(xué)生認(rèn)真開展項目活動,將傳統(tǒng)的期末一次性考核方式轉(zhuǎn)變?yōu)槿矫婵己说哪J?。這種評價方式以學(xué)生團隊完成項目的情況作為評價依據(jù),將考核貫穿于整個教學(xué)過程的始終,有利于提高學(xué)生學(xué)習(xí)的自覺性和主動性,有利于培養(yǎng)學(xué)生團隊協(xié)作、溝通能力,避免了突擊應(yīng)付考試的現(xiàn)象,能顯著提高教學(xué)效果。
將CDIO理念融入教學(xué)環(huán)節(jié),學(xué)生不僅掌握本課程的主要知識和軟件開發(fā)技術(shù),并逐步形成軟件開發(fā)能力,同時掌握了軟件項目的設(shè)計流程。
CDIO項目教學(xué)的展開卻不是一件簡單的事,教學(xué)活動的每個環(huán)節(jié)必須由教師精心設(shè)計。除了本文中提到的幾點之外,還有一些問題有待解決[4]。
(1)教師自身項目經(jīng)驗的提升。要做到在教學(xué)過程中有的放矢、游刃有余,項目教學(xué)環(huán)節(jié)的每個細(xì)節(jié)都必須精心設(shè)計,而教師的個人能力及項目經(jīng)驗是至關(guān)重要的。
(2)加強課程之間的橫向聯(lián)系。要開展企業(yè)的工程項目,僅具備《數(shù)據(jù)結(jié)構(gòu)》課程知識,是遠(yuǎn)遠(yuǎn)不夠的,故需要學(xué)生將相關(guān)課程有機聯(lián)系起來。
(3)把握教師的參與度。在學(xué)習(xí)中提倡“自主設(shè)計、自己動手、自由探索”,強化學(xué)生的主體地位,教師引導(dǎo)學(xué)生開展項目教學(xué),在教學(xué)中教師應(yīng)嚴(yán)格把握參與度,參與過多,學(xué)生會產(chǎn)生依賴性,過少,學(xué)生則會盲目,無所適從。
[1]瞿英,陳軍霞,任飛飛.基于CDIO的《數(shù)據(jù)庫原理及應(yīng)用》課程群能力培養(yǎng)目標(biāo)體系構(gòu)建[J].河北工業(yè)科技,2012.3.
[2]逯艷玲等.基于CDIO教育理念的數(shù)據(jù)庫課程實驗設(shè)計[J].實驗技術(shù)與管理,2013.1.
[3]朱向慶,胡均萬,曾輝,陳宏華.ODIO工程教育模式的微型項目驅(qū)動教學(xué)法研究.實驗技術(shù)與管理[J],2012,11(29):159-162.
[4]陳紅琳.基于CDIO的《數(shù)據(jù)結(jié)構(gòu)》教學(xué)改革研究[J].現(xiàn)代計算機,2014.11.
Data Structure;CDIO;Teaching Reformation
Teaching Reformation and Practice of Data Structure Course
CHEN Hong-lin
(School of Management Science and Engineering,Anhui University of Finance and Economics,Bengbu 233030)
1007-1423(2015)30-0025-04
10.3969/j.issn.1007-1423.2015.30.007
陳紅琳(1975-),女,湖北江陵人,講師,碩士,研究方向為信息管理和信息系統(tǒng)
2015-09-22
2015-10-12
《數(shù)據(jù)結(jié)構(gòu)》是一門無論理論性還是實踐性都很強的課程,對提高學(xué)生的編程水平起著至關(guān)重要的作用。為了提高學(xué)生算法設(shè)計能力、軟件設(shè)計能力、溝通協(xié)作能力和系統(tǒng)工程能力,該課程運用CDIO理念,通過團隊項目驅(qū)動的形式,從具體項目的設(shè)計、層次化實踐教學(xué)、項目團隊協(xié)作及考核評價方式幾個角度闡述課程教學(xué)改革實踐,提升學(xué)生系統(tǒng)思維和工程項目能力。實踐證明,以實踐為導(dǎo)向的教學(xué)過程能極大提升教學(xué)效果。
數(shù)據(jù)結(jié)構(gòu);CDIO;教學(xué)改革
安徽財經(jīng)大學(xué)校級教研項目(No.acjyyb2014122)
Data Structure is a both theoretical and practical course,it plays an important role in improving students'programming ability.By using CDIO concept,improves some abilities of algorithm design,software design,communication and coordination,and systems engineering. Discusses the teaching reformation from the following several aspects:project design,hierarchical teaching practice,project team cooperation,way of examination,that improves students'ability of system thinking and engineering project.These facts proves that practice oriented teaching can greatly improve teaching effect.