淺談建構(gòu)式教育理論在數(shù)據(jù)結(jié)構(gòu)教學(xué)中的應(yīng)用(2)
時(shí)間:
孫連山 趙曉1由 分享
2建構(gòu)式數(shù)據(jù)結(jié)構(gòu)教學(xué)
教學(xué)理論研究以及教學(xué)實(shí)踐反饋均表明,學(xué)生主動(dòng)學(xué)習(xí)的效果遠(yuǎn)較被動(dòng)地接受老師灌輸?shù)男Ч玫亩唷R虼?,為?shí)現(xiàn)上述教學(xué)目標(biāo),在建構(gòu)式教育理論的指導(dǎo)下,筆者探索并采用了一系列建構(gòu)式教學(xué)措施,激發(fā)學(xué)生的主動(dòng)性和興趣,取得了較好效果。
建構(gòu)主義認(rèn)為,學(xué)習(xí)并非學(xué)習(xí)者對(duì)教師所授知識(shí)的被動(dòng)接受,而是學(xué)習(xí)者以自身已有知識(shí)和經(jīng)驗(yàn)為基礎(chǔ)的主動(dòng)建構(gòu)過(guò)程[4]。知識(shí)不僅是通過(guò)教師傳授而得到,更是學(xué)習(xí)者在一定的情境中,利用必要的學(xué)習(xí)資料,通過(guò)同化新知識(shí)、順化自身知識(shí)結(jié)構(gòu)的方式而獲得。建構(gòu)主義提倡在教師指導(dǎo)下的、以學(xué)習(xí)者為中心的學(xué)習(xí),也就是說(shuō),既強(qiáng)調(diào)學(xué)習(xí)者的認(rèn)知主體作用,又不忽視教師的指導(dǎo)作用,教師是意義建構(gòu)的幫助者、促進(jìn)者,而不僅僅是知識(shí)的傳授者與灌輸者。學(xué)生是信息加工的主體、是意義的主動(dòng)建構(gòu)者,而不僅僅是外部刺激的被動(dòng)接受者和被灌輸?shù)膶?duì)象。下面從理論教學(xué)和實(shí)踐教學(xué)兩個(gè)方面介紹我們采用的一些教學(xué)措施。
2.1理論教學(xué)措施
課堂教學(xué)是數(shù)據(jù)結(jié)構(gòu)教學(xué)活動(dòng)的主要部分,充分利用課堂教學(xué)時(shí)間,激發(fā)學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的興趣和信心,幫助學(xué)生建立學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的環(huán)節(jié)非常重要。我們采用了如下措施:
1) 組織小型討論。
好的開(kāi)始是成功的一半,好的課堂教學(xué)須在上課之初就抓住學(xué)生的注意力,讓學(xué)生帶著輕松、愉快的心情聽(tīng)課。我的做法是在課堂的前5分鐘,提出一個(gè)學(xué)生感興趣的話題,組織若干個(gè)有3~5位同學(xué)參與的小型討論。到一個(gè)學(xué)期結(jié)束時(shí),每位同學(xué)都有至少一次的發(fā)言機(jī)會(huì)。討論的主題可以靈活設(shè)置,如時(shí)事、技術(shù)、社會(huì)熱點(diǎn)等。有時(shí),課堂中間學(xué)生比較疲憊、注意力下降的時(shí)候,也可以穿插一點(diǎn)討論,改善課堂環(huán)境。大多數(shù)學(xué)生非常喜歡這種討論活動(dòng),積極參與其中,成為課堂的一部分,從被動(dòng)上課轉(zhuǎn)變?yōu)橄矚g上課。
2) 重建理論知識(shí)所針對(duì)的問(wèn)題。
國(guó)內(nèi)的經(jīng)典數(shù)據(jù)結(jié)構(gòu)教材側(cè)重嚴(yán)謹(jǐn)?shù)睦碚摚^少討論各種概念、算法出現(xiàn)的背景以及探討的問(wèn)題是否仍然具有現(xiàn)實(shí)價(jià)值。而回答這些問(wèn)題能夠幫助學(xué)生重建理論知識(shí)所針對(duì)的問(wèn)題原型,重現(xiàn)解決方案的提出、發(fā)展乃至最終成熟的整個(gè)過(guò)程,更有助于培養(yǎng)學(xué)生解決實(shí)際問(wèn)題的能力,養(yǎng)成批判性、創(chuàng)新性思考的習(xí)慣。眾所周知,關(guān)于樹(shù)的存儲(chǔ)方法很多,有雙親表示法,孩子表示法和二叉鏈表表示法[5],其中以樹(shù)的二叉鏈表表示法使用最廣,但其他存儲(chǔ)方法也有其適合的應(yīng)用。例如,在利用樹(shù)表示各個(gè)集合,求集合中的等價(jià)類(lèi)時(shí),雙親表示法更為合適。每一個(gè)集合都用樹(shù)的雙親表示法存儲(chǔ)時(shí),并設(shè)樹(shù)的根結(jié)點(diǎn)的值為集合名,集合中的每個(gè)成員都對(duì)應(yīng)一個(gè)結(jié)點(diǎn),這樣很容易找到一個(gè)元素所屬的子集(順著雙親指針找樹(shù)的根結(jié)點(diǎn))。
3) 組織“我來(lái)講”活動(dòng)。
數(shù)據(jù)結(jié)構(gòu)涉及很多抽象的概念和算法,初學(xué)者很難理解。而教師則對(duì)理論內(nèi)容比較精熟,常常傾向于從理論的角度逐步遞進(jìn)、展開(kāi)講解,這就增加了學(xué)生的學(xué)習(xí)難度。教師和學(xué)生在教學(xué)語(yǔ)言上的鴻溝是影響教學(xué)效果的一個(gè)重要障礙。教師當(dāng)然可將抽象的理論概念與生活中更形象的概念進(jìn)行類(lèi)比,幫助學(xué)生理解,也可以將復(fù)雜的算法過(guò)程用多媒體動(dòng)畫(huà)模擬出來(lái),直觀地展示給學(xué)生,幫助學(xué)生掌握。但一方面,根據(jù)建構(gòu)主義理論,教師和學(xué)生的知識(shí)背景不同,由教師設(shè)計(jì)概念類(lèi)比語(yǔ)境和算法模擬動(dòng)畫(huà)實(shí)際上仍然是基于教師的知識(shí)結(jié)構(gòu)對(duì)知識(shí)點(diǎn)進(jìn)行的同化和順化,而不是對(duì)學(xué)生知識(shí)體系的直接建構(gòu)。另一方面,教師的經(jīng)驗(yàn)和智慧有其局限性,未必總能夠找到最適合的類(lèi)比語(yǔ)境和動(dòng)畫(huà)模擬。為此,筆者采用了充分發(fā)揮學(xué)生智慧的方法,組織“我來(lái)講”活動(dòng),要求學(xué)生通過(guò)設(shè)計(jì)算法的動(dòng)畫(huà)模擬,創(chuàng)建概念的類(lèi)比語(yǔ)境等方式進(jìn)行學(xué)習(xí),并隨機(jī)選擇學(xué)生走上講臺(tái)對(duì)抽象理論概念和復(fù)雜算法進(jìn)行說(shuō)明。這樣不但能夠調(diào)動(dòng)學(xué)生思考問(wèn)題,還能幫助那些無(wú)法完成自我知識(shí)體系建構(gòu)的同學(xué)從學(xué)生的視角去理解同一個(gè)問(wèn)題。例如,對(duì)于n維數(shù)組是元素為n-1維數(shù)組構(gòu)成的線性表這一遞歸的類(lèi)型定義,可采用符號(hào)推理的方式,培養(yǎng)學(xué)生的理論素養(yǎng),而同時(shí)可鼓勵(lì)學(xué)生根據(jù)自己的理解將抽象理論具體化,建立幫助理解和記憶的現(xiàn)實(shí)語(yǔ)境。
2.2實(shí)踐教學(xué)措施
數(shù)據(jù)結(jié)構(gòu)是幫助具有基本編程語(yǔ)言基礎(chǔ)的學(xué)生錘煉編程技術(shù)的關(guān)鍵課程。它揭示了程序設(shè)計(jì)的基本面,即如何處理相互之間存在一種或多種數(shù)據(jù)關(guān)系的數(shù)據(jù)元素所構(gòu)成的集合、如何設(shè)計(jì)算法并分析算法的優(yōu)劣。若沒(méi)有相應(yīng)的配套實(shí)驗(yàn)指導(dǎo)學(xué)生如何將理論應(yīng)用于實(shí)際問(wèn)題,只是泛泛而談、紙上談兵,學(xué)生容易迷失在數(shù)據(jù)結(jié)構(gòu)的一連串復(fù)雜概念和算法之中,而不知道學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的意義何在。為實(shí)現(xiàn)教學(xué)目標(biāo),筆者鎖定實(shí)驗(yàn)內(nèi)容設(shè)置和實(shí)驗(yàn)考核等兩個(gè)關(guān)鍵環(huán)節(jié),實(shí)踐了如下措施,取得了較好效果。
2.2.1實(shí)驗(yàn)內(nèi)容設(shè)置
實(shí)驗(yàn)內(nèi)容設(shè)置是進(jìn)行實(shí)踐教學(xué)的最重要部分。從覆蓋知識(shí)點(diǎn)的角度看,實(shí)驗(yàn)內(nèi)容須面向數(shù)據(jù)結(jié)構(gòu)教學(xué)目標(biāo),即實(shí)驗(yàn)內(nèi)容須能夠鍛煉學(xué)生的編程技巧,如算法設(shè)計(jì)、調(diào)試、測(cè)試以及調(diào)優(yōu)等能力,還能夠讓學(xué)生體會(huì)到圍繞復(fù)用開(kāi)展軟件開(kāi)發(fā)的威力以及思路。從覆蓋教育對(duì)象的角度來(lái)看,實(shí)驗(yàn)內(nèi)容須面向大多數(shù)同學(xué)并充分考慮優(yōu)秀同學(xué),即實(shí)驗(yàn)內(nèi)容須劃分不同的層次,讓大多數(shù)學(xué)生能夠很容易入手,并讓有能力、有余力的學(xué)生能夠不斷地深入,直至形成綜合型課程設(shè)計(jì)。
基于以上考慮,并借鑒同行經(jīng)驗(yàn),筆者開(kāi)展三個(gè)層次的實(shí)驗(yàn)教學(xué)活動(dòng),一是要求所有學(xué)生都完成的實(shí)驗(yàn)內(nèi)容,要求學(xué)生采用不同的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)同一個(gè)問(wèn)題并進(jìn)行對(duì)比分析,例如,分別使用靜態(tài)數(shù)組和動(dòng)態(tài)分配的連續(xù)內(nèi)存區(qū)實(shí)現(xiàn)順序表,使用整型、字符型數(shù)組或者鏈表實(shí)現(xiàn)長(zhǎng)整數(shù)的乘法,使用帶頭結(jié)點(diǎn)或不帶頭結(jié)點(diǎn)的循環(huán)鏈表模擬約瑟夫環(huán)等;二是組織程序設(shè)計(jì)競(jìng)賽,讓部分學(xué)有余力的同學(xué)能夠在算法設(shè)計(jì)、程序?qū)崿F(xiàn)和調(diào)試、優(yōu)化等方面得到鍛煉和提高;三是設(shè)計(jì)綜合型課程設(shè)計(jì)鍛煉學(xué)生解決問(wèn)題的綜合能力,并通過(guò)適當(dāng)分組,培養(yǎng)學(xué)生團(tuán)隊(duì)協(xié)作精神和能力,鍛煉學(xué)生解決問(wèn)題的綜合能力的目標(biāo),最終達(dá)到以點(diǎn)帶面全面提高學(xué)生能力的目的。
2.2.2實(shí)驗(yàn)考核手段
考核手段在教學(xué)環(huán)節(jié)中至關(guān)重要??己耸侄问菍W(xué)生學(xué)習(xí)和鍛煉自身能力的風(fēng)向標(biāo)。為保證每位同學(xué)都能積極完成實(shí)驗(yàn)并有所收獲,避免抄襲和敷衍的現(xiàn)象,筆者采取了綜合型的考核手段。其一,提交實(shí)驗(yàn)成果,即程序及其運(yùn)行結(jié)果;其二,記錄實(shí)驗(yàn)過(guò)程、分析實(shí)驗(yàn)結(jié)果以及總結(jié)實(shí)驗(yàn)得失的實(shí)驗(yàn)報(bào)告,對(duì)實(shí)驗(yàn)報(bào)告進(jìn)行選優(yōu)講評(píng),培養(yǎng)學(xué)生撰寫(xiě)科學(xué)實(shí)驗(yàn)報(bào)告的能力;其三,每位同學(xué)必須面向教師講解自己編寫(xiě)的程序,包括主要思路和細(xì)節(jié)性語(yǔ)法,優(yōu)秀的同學(xué)可走上講臺(tái)宣講自己的實(shí)驗(yàn)方案和程序設(shè)計(jì)技巧。這就基本杜絕了學(xué)生相互之間抄襲程序和實(shí)驗(yàn)報(bào)告的現(xiàn)象,使得學(xué)生真正能夠思考問(wèn)題,并盡力動(dòng)手完成實(shí)驗(yàn)。綜合上述三種手段的綜合型考核方法既能夠達(dá)到督促大部分同學(xué)完成實(shí)驗(yàn)、鍛煉動(dòng)手能力目的,又能夠達(dá)到培養(yǎng)優(yōu)秀同學(xué)的目的。特別地,優(yōu)秀同學(xué)宣講活動(dòng)能夠使學(xué)生觀摩到如何從學(xué)生的視角從無(wú)到有的解決問(wèn)題的過(guò)程,這能夠培養(yǎng)學(xué)生解決實(shí)際問(wèn)題的信心并激發(fā)其學(xué)習(xí)積極性。
3應(yīng)用中遇到的問(wèn)題
建構(gòu)式教學(xué)模式在應(yīng)用和推廣過(guò)程中遇到的主要問(wèn)題來(lái)自三個(gè)方面。其一,目前學(xué)生的課業(yè)負(fù)擔(dān)較重,習(xí)慣于被動(dòng)“填鴨”而不習(xí)慣于主動(dòng)“求索”,這是推動(dòng)和開(kāi)展建構(gòu)式教學(xué)模式的主要障礙。其二,建構(gòu)式教學(xué)活動(dòng),需要師生的密切交流,但現(xiàn)有師資不足難以滿足實(shí)際需求。一個(gè)可能的解決方法是綜合多門(mén)課程和多個(gè)老師,建構(gòu)整體的知識(shí)框架和學(xué)習(xí)體系,避免課程教學(xué)中的重復(fù)勞動(dòng),提高師資的利用率。另一個(gè)可能的解決方法是利用互聯(lián)網(wǎng)技術(shù),建立在線教學(xué)園地。其三,建構(gòu)式教學(xué)模式仍然處于探索階段,各學(xué)科缺乏建構(gòu)式教學(xué)素材。從筆者在實(shí)踐教學(xué)的體驗(yàn)來(lái)看,應(yīng)盡量從學(xué)生的學(xué)習(xí)背景和能力成長(zhǎng)規(guī)律出發(fā)而不僅僅是從學(xué)科背景出發(fā),為學(xué)生建構(gòu)知識(shí)體系設(shè)計(jì)更平滑的路線。
4結(jié)語(yǔ)
筆者提出將“培養(yǎng)超越具體程序設(shè)計(jì)語(yǔ)言技巧的編程技術(shù)”和“培養(yǎng)圍繞復(fù)用的軟件開(kāi)發(fā)方式”作為普通本科院校的數(shù)據(jù)結(jié)構(gòu)教學(xué)目標(biāo),在建構(gòu)式教育理論的指導(dǎo)下,設(shè)計(jì)并實(shí)踐了一系列建構(gòu)式教學(xué)措施,分析了應(yīng)用建構(gòu)式教學(xué)模式所遇到的一些問(wèn)題。
未來(lái)將開(kāi)展兩個(gè)方面的工作。一是通過(guò)問(wèn)卷調(diào)查、統(tǒng)計(jì)分析等手段定量地分析建構(gòu)式教學(xué)方法的實(shí)際效果;二是創(chuàng)造和積累建構(gòu)式教學(xué)素材,如研究數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)過(guò)程中不同類(lèi)型學(xué)生的知識(shí)建構(gòu)路線,挖掘并推廣其中優(yōu)秀的知識(shí)建構(gòu)方法。
參考文獻(xiàn):
[1] 教育部高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會(huì). 高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)發(fā)展戰(zhàn)略研究報(bào)告暨專(zhuān)業(yè)規(guī)范(試行)[M]. 北京:高等教育出版社,2006:8-101.
[2] 蔡敏,鄭尚志,梁寶華.“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)改革之我見(jiàn)[J]. 計(jì)算機(jī)教育,2009(4):50-51.
[3] 揭安全,李云清,楊慶紅,等. 項(xiàng)目教學(xué)模式指導(dǎo)的“數(shù)據(jù)結(jié)構(gòu)與算法”教學(xué)改革[J]. 計(jì)算機(jī)教育,2008(22):21-23.
[4] 郝長(zhǎng)勝,賈茹. 運(yùn)用建構(gòu)主義理論構(gòu)建程序設(shè)計(jì)基礎(chǔ)的新型教學(xué)結(jié)構(gòu)[J]. 計(jì)算機(jī)教育,2007(1):24-25.
[5] 嚴(yán)蔚敏,吳偉民. 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)[M]. 北京:清華大學(xué)出版社,2008:135-136.