耿道渠 徐洋 李銳
摘 要 結合重慶郵電大學自動化學院軟件技術基礎教學的特點,分析基礎教學的現狀,針對學生的特點并結合教學實踐探索,總結了該課程的教學方法。
關鍵詞 軟件技術基礎 教學實踐 教學方法
中圖分類號:G642.0 文獻標識碼:A 文章編號:1002-7661(2012)23-0085-01
一、引言
近年來,計算機在科學研究、工農業生產、商貿、氣象、國防以及居民生活等領域的應用不斷深入。隨著計算機科學技術的發展,計算機的應用領域和范圍不斷擴大。其中,軟件技術是計算機技術的重要組成部分。隨著計算機應用領域的擴大和深入,非計算機專業的工程技術人員掌握必要的計算機軟件技術基礎知識是提高計算機應用水平的重要途徑。
“軟件技術基礎”課程是“大學計算機文化基礎”和C語言等相關程序設計課程的拓展和延伸。該課程是一門專業基礎課,課程內容涉及到數據結構、操作系統和軟件工程等。重慶郵電大學自動化學院在開設了“C語言程序設計”這門課程的基礎上,開設了“軟件技術基礎”這門課程。由于本課程學時較短、內容較多,部分內容較抽象,同時學生的學習基礎差異較大,如何利用有限的學時來教好本門課程是一個值得探討的問題。
二、教學實踐探索
(一)提高學生的學習興趣
興趣是學生最好的老師,也是他們學習的巨大動力。對該門課程產生興趣,將會得到事半功倍的效果。那么怎樣才能提高學生的學習興趣呢?通過教學實踐我們發現,在開始新知識點學習之前,列舉一些相關應用案例,并讓學生參與應用案例的分析,很快就能調動起學生的學習熱情,其注意力也非常集中。此時,迅速切入新的知識點的講解,學生會很快跟著老師的思路,學習效率非常高。
(二)教學內容的適當擴充
在本課程的教學中,結合重慶郵電大學自動化學院的實際情況,我們對本課程的教學內容適當擴充。本課程的授課對象是大學二年級學生,僅在大學一年級學習了C語言編程,沒有C++語言的基礎。在課程開始利用一次課的時間,給學生補充了C++編程語言[3]的類、模版及基本的輸入輸出等相關知識。有兩個目的,一是為了在后續教學中讓學生對本課程內容有更深入的認識,讓學生了解軟件技術基礎的一些編程思想是否與編程語言深度相關?二是讓學生充分利用課余時間好好掌握一下C++知識,拓展了學生的知識面,增強學生的自學能力。也為本課程的后續學習打下基礎。
(三)多編程語言、多結構形式的實例對比教學
在教學實踐中,針對某個新知識點,先進行理論講解,重點讓學生掌握新知識的應用特點以及編程思想等。然后通過編程實例,重點對知識點應用進行講解。在實例講解過程中,采用對比的方式進行,包括多種編程語言實現、多種實現方式的對比。舉例來說,在講解“棧”這個知識點講解時,先講述“棧”的特點及其相關操作,如“后進先出”的特點,初始化棧、入棧、出棧、讀棧頂元素等等,然后針對“棧”的操作進行實例講解。其中,棧的操作分別采用c語言和C++語言來實現,并針對兩種語言的實現方式展開對比,重點介紹編程思想。此外,對于“棧”的結構形式也有兩種,一是采用順序表的形式,一是采用鏈表的形式。針對這兩種不同的結構形式在進行對比講解。一個應用案例,通過多種實現形式的講解,讓學生對“棧”這個知識點有了更深刻的認識。
(四)適量的課后作業
對于“軟件技術基礎”這門課程,必須經過一定量的編程練習才能夠更好地鞏固所學知識。然而,每個學生學習基礎和完成作業的認真程度不同,甚至也有作業抄襲現象,因此作業的實際效果不甚突出。為了克服上述弊端,我們在作業量以及作業題型的選擇上進行了適當的改變,僅布置少量的且較典型的題目。另一方面,在作業的完成方面,我們也改變了傳統的作業提交形式。我們采用分組完成作業的形式。兩個或三個同學分成一組,在完成作業的過程中可以討論,尤其是編程思想、編程技巧方面,通過討論學生能夠對所學的知識有了更加深刻的認識,在編程方面能夠相互取長補短,最終個人編程能力得到了提高。
三、教學效果檢驗
“軟件技術基礎”這門課程還設置了實(下轉第88頁)(上接第85頁)驗教學環節,每次實驗都針對理論教學中的知識點,結合實際應用設計了合理的編程實驗。通過實驗環節,能夠很好地檢驗教學效果。在進行了教學改革實踐之后,從實驗的完成情況來看,學生實驗的完成效率和質量都有了較明顯的提高。
四、結束語
“軟件技術基礎”課程是針對非計算機專業學生開始的一門專業基礎課程。通過教學實踐探索,取得了一定的效果。在今后的教學實踐過程中,仍需要不斷地總結經驗,不斷探索和完善教學方法,提高教學質量。