李曼 石鋒 張少應
摘要:按照“全面建設合格課程,重點建設學院重點課程,創(chuàng)建學院優(yōu)質課程”的建設思路,不斷進行課程教學改革與創(chuàng)新。針對目前《數(shù)據結構》教學中存在的問題,進行應用型本科院校《數(shù)據結構》課程教學目標及教學對象分析,提出了從教學內容組織、教學方法、實驗教學和考核方法四個方面進行教學改革的方案。以陜西省第二屆微課競賽三等獎作品為例,分析數(shù)據結構中《棧的應用》中的主要知識點、教學設計及授課效果。教學實踐表明:該方案的實施可取得明顯的教學效果。
關鍵詞:微課課程;應用型本科院校;教學改革;教學方法;雙向互動
中圖分類號:G642 文獻標識碼:A
文章編號:1009-3044(2020)03-0130-03
《數(shù)據結構》是計算機科學與技術專業(yè)、軟件工程及相關專業(yè)的一門重要專業(yè)基礎課。通過該課程的學習,使學生能夠針對實際問題,分析數(shù)據之間的關系,設計合理的存儲結構和算法[1],為后續(xù)課程學習打下良好的基礎。學生學好該課程,對于學習其他課程、考研以及培養(yǎng)解決問題[2]的能力等至關重要。因此,該課程教學改革的研究具有非常重要的意義。
按照“全面建設合格課程,重點建設學院重點課程,創(chuàng)建學院優(yōu)質課程”的建設思路,加強課程建設,不斷進行課程教學改革與創(chuàng)新。針對目前《數(shù)據結構》教學中存在的問題,提出了從教學內容組織、教學方法、實驗教學和考核方法四個方面進行教學改革的方案。
1《數(shù)據結構》教學目標及教學對象分析
1.1 教學目標
通過《數(shù)據結構》的學習,知道《數(shù)據結構》這門學科的性質、地位和獨立價值[3];理解算法在數(shù)據結構中的地位和作用;知道數(shù)據結構的研究范圍、研究方法、研究現(xiàn)狀和未來發(fā)展趨勢[4];掌握數(shù)據結構的理論實質內涵;熟練掌握數(shù)據結構算法實現(xiàn)的基本方法。
1.2 教學對象分析
《數(shù)據結構》的教學對象是計算機科學與技術專業(yè)、軟件工程專業(yè)的本科二年級學生,此類學生在學習《高級語言程序設計》課程的基礎上,再學習《數(shù)據結構》課程,就具有比較堅實的理論基礎[5],具備用C語言開發(fā)應用程序的能力,能夠更加深刻的理解和領會《數(shù)據結構》中算法的實現(xiàn)思想和實現(xiàn)過程。
課程開設前,組織學生召開教學聯(lián)系會,通過和學生面對面的交流,發(fā)現(xiàn)學生對基本語法、基本概念掌握情況,如單個知識點掌握較好,但綜合應用能力較弱,動手能力有待提高。
在學習、研究《數(shù)據結構》課程標準以及本課程現(xiàn)在所用教材的基礎上,對教學內容進行精心設計,在教學實施過程中注意采用靈活多樣的教學形式,引導學生在學習過程中養(yǎng)成積極思考的習慣,激發(fā)學生的學習熱情,最大限度發(fā)揮學生的主觀能動性和創(chuàng)新精神,培養(yǎng)學生的探究意識和科學精神。
2《數(shù)據結構》的教學組織與微課舉例
《數(shù)據結構》是一門專業(yè)技術基礎課。貫穿《數(shù)據結構》的命脈是存儲結構和算法描述[6],而描述又是圍繞線性結構和非線性結構進行的。每個章節(jié)之間既相互獨立,又相互聯(lián)系。教學中,如果能抓住主線,理清其內在聯(lián)系,對整個內容進行有機整合、合理安排,必將起到事半功倍的效果。
本課程制作SPOC平臺,通過課程建設將課程視頻、課件、大綱、評論、問答、輔助教學資源等上傳至平臺,學生可通過賬號進行學習。根據課程內容,召開相關見面會、團隊成員一起進行微課的設計,包括字幕配音稿,音樂,素材,相關圖片,拍攝模式(外景拍攝模式+扣像模式+背景虛化模式)等構成。本課程每周4課時,共64課時,錄制視頻時每個知識點大概10-15分鐘,至少錄全部章節(jié)的一半章節(jié)內容。
2.1 線性結構
線性結構包括線性表、棧和隊列、串、數(shù)組和廣義表。其中,線性表是最基本、最簡單的一種線性結構(7J,掌握了它的原理及操作方法之后,對于棧、隊列和數(shù)組的教學就非常容易。因此,應該將線性表作為教學的重點,并以它為主線帶動其他章節(jié)的教學。在教學中,要重點分析其本質,并講清其內在的區(qū)別和聯(lián)系。
以陜西省第二屆微課競賽三等獎作品為例,分析數(shù)據結構中《棧的應用》等主要知識點授課。棧是限定在表的一端進行插入和刪除操作的線性表,特點是“后進先出”。本微課用一個實際問題引入教學,激發(fā)了學生的學習興趣。采用PPT、flash動畫和算法演示系統(tǒng)輔助教學,采用“問題鏈式”等多種教學法相結合,層層遞進地與學生雙向互動,依次解決了以下幾個方面的問題:
1)棧的出棧序列如何求解?
2)中綴表達式求值如何通過堆棧來實現(xiàn)?
3)后綴表達式求值如何通過堆棧來實現(xiàn)?
最后用所學知識成功解決了開篇提出的問題,為課程的學習畫上了一個圓滿的句號。通過本微課的學習,達到以下教學目的:
1)學生了解棧的定義和特點。
2)學生掌握用堆棧進行中綴表達式求值的實現(xiàn)方法和算法思想。
3)學生掌握用堆棧進行后綴表達式求值的實現(xiàn)方法和基本步驟。
重點內容是棧的特點和棧的應用。難點是中綴表達式求值和后綴表達式求值。
2.2 樹形非線性結構
非線性結構包括樹和圖。主要涉及樹和圖的各種算法、知識要點以及在工程中的應用。其遍歷算法的本質是將一個非線性結構轉化為線性結構。
樹的重點是二叉樹,主要介紹二叉樹的概念、存儲、算法,樹的遍歷及線性化。重點要講清楚平衡二叉樹、排序二叉樹、滿二叉樹、完全二叉樹及最優(yōu)二叉樹的概念,以及它們之間的關系,進而使學生對二叉樹有一個全面、清晰的理解。
2.3 圖形非線性結構
圖這一部分要以存儲結構鄰接矩陣、鄰接表、十字鏈表的教學為重點,對每種存儲結構,分析其利弊關系。圖的應用如最小生成樹算法、最短路徑算法、關鍵路徑算法等也是這部分教學的關鍵,學生往往難以理解和接受。這就要求教師詳細分析其算法的思想,以及其來龍去脈。在學生有困難的情況下,教師可以提供給學生算法的源程序,并讓學生上機實踐。
排序和查找也是以線性結構和非線性結構為基礎的。如查找過程和排序過程都可描述為二叉樹,因此,這部分內容應把講授的重點放在介紹其思想和方法上。
3《數(shù)據結構》的教學方法與微課教學設計舉例
3.1 教學方法
根據教學內容的特點,一般采用“問題鏈式”教學法、啟發(fā)式教學、研討式及案例式教學等多種教學方式。
針對《數(shù)據結構》課程層次性,邏輯性很強的特點,老師主要采用“問題鏈式”教學法,并通過flash動畫演示、課堂討論、“啟發(fā)式”教學等多種教學方法和手段,進行課堂教學。學生主要通過討論、提問等方式進行學習。
“問題鏈式”教學法的一般模式是首先通過引入,提出問題,然后解決問題,再提出問題,解決問題等等,以此類推,環(huán)環(huán)相扣,形成一個問題鏈。“問題鏈式”教學法,其本質是以“問題”貫穿整個教學過程,以實現(xiàn)教學目標,培養(yǎng)學生思維能力,激發(fā)創(chuàng)新潛能。
針對數(shù)據結構教學內容抽象、不容易理解、算法復雜等特點,進行實驗教學方面的改革。采用算法演示系統(tǒng)與C語言環(huán)境相結合的方式進行教學。算法演示系統(tǒng)可以動態(tài)地演示數(shù)據結構算法執(zhí)行過程,使得抽象問題具體化,增加學生學習的積極性和主動性。注意教學方法的靈活性,組織學生進行問題教學、閱讀指導、研討、師生互動等,尤其是通過觀看演示模式,使復雜的理論知識形象化,具體化,增加學生的學習興趣,提高教學質量。提供給學生一些思考題,然后組織學生討論,培養(yǎng)學生發(fā)現(xiàn)問題、分析問題、解決問題的能力和探究意識。
在教學媒體使用方面,重點研究多媒體等現(xiàn)代化教學媒體的應用,充分發(fā)揮其在教學中的形象、直觀等優(yōu)勢[8],以利于提高教學效果。在多媒體課件的制作中,突出本課程教學過程中重點、難點的演示,對一些抽象的內容以動畫的形式展示,幫助學生理解學習。
3.2 微課教學設計
下面以10-15分鐘的微課課程《棧的應用》為例,如表1所示,進行微課教學設計。
4 課程教學改革
4.1 微課教學改革效果
在學習、研究《數(shù)據結構》課程標準以及本課程現(xiàn)在所用教材的基礎上,對教學內容進行精心設計,在教學實施過程中注意采用靈活多樣的教學形式,引導學生在學習過程中養(yǎng)成積極思考的習慣,激發(fā)學生的學習熱情,最大限度發(fā)揮學生的主觀能動性和創(chuàng)新精神,培養(yǎng)學生的探究意識和科學精神。
采用微課的授課方式、“問題鏈式”教學法、啟發(fā)式教學、研討式及案例式教學等多種教學方式相結合的方式的教學,效果良好,作者所講授《棧的應用》作品獲得陜西省第二屆高校教師微課教學比賽三等獎。
1)變“被動學習”為“主動學習”,培養(yǎng)學生的創(chuàng)新性思維。
2)使學生從感性認識上升到理性認識,使教材內容化難為易,化抽象為具體,達到掌握知識的教學目的。
4.2 課程教學模式改革
教學模式一般可以分為集體授課和個別學習兩種,目前教研室所承擔課程的主要教學模式是集體授課方式,充分調動“教”和學生“學”兩個方面的積極性,讓學生始終主動參與教育教學過程。其中教學班是主要的教學組織,班級授課制是目前教學的主要組織形式。在教室合班或單班上課均可,建議每周安排2次課,即4學時。針對某些期班的特殊情況,可以采取個別學習的方式。
4.3 實驗教學改革
實驗課教學,在軟件工程驗室進行,確保單人單機,建議理論課開始20學時后,安排每周1次實驗課,即2學時。教學中加強實驗室教學這一環(huán)節(jié),實驗內容結合DOS、Windows操作系統(tǒng)平臺,包括線形表的實現(xiàn)、棧的表示與實現(xiàn)、二叉樹的先序遍歷、二叉樹的后序遍歷以及二分法查找的實現(xiàn)等不同深度。讓學生動手操作、編制模式、上機調試。對每個實驗,均要求學生完成實驗報告。
學生業(yè)余學習場所應有校園網網絡資源,以便學生充分利用數(shù)據結構網絡資源進行課程內容溫習,為學生充分發(fā)揮學習潛力創(chuàng)造較大的空間和提供良好的平臺。
4.4 考核方式改革
1)考核目的
這門課程的考核目的是評價學生對《數(shù)據結構》課程的理解與掌握程度,通過分析算法、上機實驗等實踐環(huán)節(jié),檢測學生發(fā)現(xiàn)問題、分析問題和解決問題的能力,使學生具有較強的算法收集、分析、編寫能力;能夠在學習、研究過程中發(fā)現(xiàn)問題,并能夠運用所學知識去分析解釋,有一定的獨立思考、分析概括和創(chuàng)新能力。
2)考核方法
這門課程一門考試課,一般應安排在課程末或期末進行,采用筆試考試(80%)和實驗考核(20%)相結合的形式進行。筆試考試時間為120分鐘,實驗考核成績以實驗報告和上機完成情況給定。
5 結束語
由于《數(shù)據結構》是計算機專業(yè)的骨干、核心課程,也是大多數(shù)學校研究生入學考試的必考課程,因此,對于該課程的教學,不僅要從理論上進行探討,還要從內容組織、教學方法等方面進行研究。
《數(shù)據結構》是計算機科學與技術專業(yè)、軟件工程及相關專業(yè)的一門重要專業(yè)基礎課。也是大多數(shù)學校研究生入學考試的必考課程。結合陜西省獲獎作品《棧的應用》,我們提出了從教學內容組織、教學方法、實驗教學和考核方法四個方面進行微課及教學改革的方案,并在教學中進行了實施。選用較為適宜的教學方法和比較科學、先進的教學手段,有利于培養(yǎng)學生實踐能力和創(chuàng)新精神;構建“自學指導,課外訓練、實踐實驗技能訓練”三大課外自主學習體系建設,建立網絡教學資源庫,教學效果良好。
參考文獻:
[1]付向艷,蒲偉華,郭瑩瑩.基于雨課堂的《數(shù)據結構》教學改革與實踐[J].教育天地,2018(5):223-224.
[2]蔣翠玲,萬永菁,袁偉娜.基于微課與CDIO模式的數(shù)據結構課程教學改革[J]化工高等教育,2018(3):57-61.
[3]劉平山,張瑞霞,周婭.微課移動學習系統(tǒng)設計與教學實踐[J].當代教育理論與實踐,2016,8(5):85-87.
[4]王海艷,駱健,基于微課的《數(shù)據結構》多元化教材建設研究[J].教育教學論壇,2017(25):205-206.
[5]趙慶聰,基于翻轉課堂的數(shù)據結構課程實驗教學模式研究[J].大學教育,2016(02):9-10.
[6]劉曉靜,王曉英.基于翻轉課堂的數(shù)據結構與算法課程教學實踐[J].微型電腦應用,2015(31):18-19.
[7]張瑞霞,文益民,周婭,等.數(shù)據結構課程微課設計與應用研究[J].計算機教育,2015(16):59-62.
[8]唐世剛,鐘萬林.互動式教學模式構建研究[J]教育理論與實踐,2013(18):42-43.