任建平,趙美虹,周慶亞,陳 思
(蘇州科技大學 電子與信息工程學院,江蘇 蘇州 215011)
“程序設計基礎”課程是蘇州科技大學(簡稱“我校”)電子類相關專業的一門重要專業基礎課。該課程包含了大量的算法,課程的邏輯性、理論性和實踐性較強,學生掌握起來不是很容易,教學效果一直不理想。如何使程序設計課程的教學效果得到改善,成為我們一直在考慮、研究、探索的問題。
近年來,計算機輔助教學[1](CAI)在教學中的應用越來越多,而我校的程序設計基礎課程的輔助教學工具,僅僅停留在PPT 制作的幻燈片上。因此,計算機輔助教學在該課程中的應用還非常不完善。為此我們設計了程序設計基礎課程的算法動態演示系統。該系統以現有的教材為依據,根據教學大綱進行設計。學生通過該系統能清楚地觀察算法的實現步驟、每一步動作的結果及關聯的原始數據和運行結果,比較形象、直觀地進行展示。學生通過該系統還可以學習各個章節的主要內容,例如:順序、選擇、循環等三種基本結構,以及數組、結構體、指針等數據類型,還有函數等主要內容。通過該系統也可以了解數據在內存中的存在格式,更直觀地理解數據在計算機中的表示方法,有助于學生進行更高級的應用開發。這樣,教師講解內容不再那么枯燥,學生學習理解起來不再那么難以琢磨。在有限的90 分鐘內,教師可以講更多的內容,學生也可以理解和掌握更多的知識,提高了教學效果。
多媒體課件是把教學想法、教學目的、教學內容、教學活動等方法,用計算機語言進行描述,多媒體課件是反映教學的一種計算機教學程序。其中,在制作多媒體課件時,要求課件具有生動、效率高等特點;其次在制作時,要根據需要選擇多媒體CAI 課件的類型,按照準備、制作、應用等三個階段進行,要按照交互、多樣、美觀、實用等要求來完成多媒體課件的制作。
程序設計基礎課程動態演示系統的設計,需要考慮以下問題。
(1)演示系統中出現的算法[2],要有正確的理論依據,涉及的基本概念要正確。
(2)引用CAI 制作的動態演示系統,側重的是算法演示,應該是課程內容中的難點和重點,以幫助學生更好地理解和學習算法。
該演示系統主要以演示過程為主。緊扣程序設計基礎中的教學重點,包括了程序設計基礎課程教學中的主要內容。制作過程力爭讓學生理解程序運行的實際過程。
程序設計基礎課程的演示系統,通過主界面中的算法標題進入各個界面。在各個界面中都有重點和難點進行學習,還有常用算法的動態演示過程。程序設計基礎課程實例演示系統應具有以下特點:
(1)系統中包含教學知識點整理和算法演示兩個部分;
(2)可通過后臺管理對教學內容進行設定、查看、增加、刪除;
(3)準確演繹系統中的算法思想;
(4)系統界面設計要求:具有較強的交互能力,動態的算法演示,形象的圖形設計,充分體現算法細節,外觀設計簡潔明快,元素布局合理,突出教學內容重點等;
(5)操作簡單,易于理解,便于使用。
(1)根據課程的教學大綱,選取典型的算法。
(2)每個算法代表相應章節內容應掌握的知識點。
(3)系統經過概要設計、詳細設計、編碼實現,最后進行系統測試。
(4)利用Flash 軟件[3]實現程序流程的動態演示。
(1)總體設計。根據程序設計基礎課程的教學需要,演示系統其內容豐富、具有針對性、涵蓋課程的主要知識點。
(2)框架設計。程序設計基礎課程的算法演示,是根據教材的編排,按照章節的順序,由淺入深、由易到難進行的。
程序設計基礎課程實例演示系統包括教學內容、算法演示、后臺管理三個部分。教學內容包括章節及章節內容;后臺管理包括章節管理與章節內容管理,如圖1 所示。

圖1 系統功能模塊圖
該系統包含的算法如表1 所示,演示系統的主界面如圖2所示。

圖2 演示系統主界面

表1 算法內容表
本文利用ActionScript 程序設計語言與Flash 技術設計實現了一個程序設計基礎課程常用算法的動態演示系統。該演示系統能夠通過人機交互的方式形象、直觀、動態地展示程序設計基礎課程中的常用算法的基本思想、執行步驟、運行結果,使學生能夠比較直觀地輕松地掌握本課程中難點和重點。
本系統的功能和演示方法,需要根據制作工具以及學生的實際情況進行修改和完善。