葛曉燕+毛志瑞
摘要:針對信息管理與信息系統專業的培養目標,在傳統教學方法的基礎上,為解決“C程序設計”課程中語法知識復雜、程序設計理論難理解、理論教學與專業應用相脫離等問題,提出增加融入探討式教學、“微課”教學、案例教學、團隊討論開發實踐等教學方法豐富教學模式,并給出相應考核方法的改進,更加有助于教學質量的提高。
關鍵詞: C程序設計;信息管理與信息系統;教學方法
中圖分類號:G642.0 文獻標識碼:A 文章編號:1009-3044(2016)12-0104-03
Abstract: In order to solve the problems of C programming such as complex grammars, difficult to understand programming theory, the inconsonance between theory teaching and professional application, etc. This paper according to the training target of information management and information system, increasing mutual interacting teaching, micro class, case teaching and group discussion and development practice to the original teaching mode based on the traditional teaching methods. And the improvement of the corresponding assessment method is given, which is more helpful to the improvement of teaching quality.
Key words: C programming; Information management and information system; Teaching method
1 引言
信息管理與信息系統專業主要是培養具備現代管理學理論基礎、計算機科學技術知識及應用能力,掌握系統思想和信息系統分析與設計方法以及信息管理等方面的知識與能力的人才。 因此該專業的學生必須具備和掌握系統程序設計的方法和思想,而C語言程序設計課程是應用最廣泛,最易讓非計算機專業學生接受的程序設計課程,通過該課程的學習可以訓練學生解決問題的邏輯思維能力,為更好的掌握信息系統的分析和設計方法而服務。信息管理與信息系統專業與計算機專業的C程序設計課程目標是有區別的,但是目前該專業的C程序課程教學模式大多與計算機專業的相同。由此為了適應教學的發展和社會的需要,培養學生的實踐能力和創新能力,提高信管專業學生的系統分析能力、信息技術應用能力,改進和豐富傳統的C語言程序設計課程的教學方法是非要有實際意義的。
2 教學現狀
C語言功能豐富,使用靈活方便,易學易用,不需要強大的計算機專業背景,因此是高等院校各個專業普遍開設的一門程序設計課程。該課程應用范圍廣泛、是一門實踐性很強的課程。目前在我國高校中,主要還是采用傳統的理論教學加上機輔導的模式。在現有教學條件的制約下,上機部分的教學效果并不理想。首先,上機課時較少,與其他課程不同,要想很好地完成C語言的學習,必須進行大量的實際操作,同時要完成課堂布置的實驗任務和課后作業,都需要上機實踐,這就需要學生配備電腦或者課余時間去學校機房進行操作,這都需要花費一定的資金,對于落后地區的學生來說,很難較好的完成該課程的學習。其次,傳統的理論授課方式(黑板或者PPT)很難將一些程序設計原理展現出來,光靠教師的講授和描述,很難在學生頭腦中準確的形成程序的運行過程,無法理解正確,上機實驗就無法正確進行,普遍還需要教師的幫助和程序調試;同時課堂被動的接收教師講解枯燥的語法知識,效果普遍不好。再次,課堂講解的例題以及上機實驗的題目基本都是固定的,沒有專業應用性;并且由于課時的限制只能給予大眾型答案,但實際上每個題目都有很多種算法和解法。這樣學生都是按照教師給予的思想去解題,禁錮了學生的創造性思維,不利于培養學生的創新能力和獨立分析能力。
3 存在的問題
C程序設計課程是一門需要大量實踐的課程,同時也是理論性較強的課程,與其他的程序設計語言課程(如ASP.Net Oracle 和C# 等)以及計算機專業課程(如數據結構、算法設計與分析等)都有著緊密的相互關聯性和啟發性。信息管理與信息系統專業的學生由于各種因素的限制而沒開設這些相關課程,因此以傳統的計算機專業的教學方法進行C程序設計課程的教授,必然會出現不相適應的問題。
1)課堂教學與專業應用相脫離
C程序設計課程的教學方法大多采取課堂教師講解,實驗課在機房進行上機練習實踐的形式。然而在課堂上講解的語句語法內容較多,需要記憶,往往會忽略培養程序設計思維;并且課堂上所舉的實例大多是為了體現所講解的語法或語句特點,忽略了與專業應用的結合性;學生對語言的掌握主要靠死記硬背,面對實際問題時就會不知所措。
2)教學模式單一
長期以來,都是老師課堂講授,學生記憶;老師布置上機任務并進行上機指導,學生被動接受。學生缺乏合作開發實踐的鍛煉以及思考和解決問題的訓練,不能夠很好地理解和運用程序設計理論,很多都是靠死記硬背通過考試,最后還是不會編程,更不用說去解決實際問題了。
3)案例枯燥
各種教材使用的案例都很類似,基本都是以闡述解釋語法、語句規則為目的選擇的程序案例,相對枯燥和抽象。對于沒有計算機專業背景的學生而言,學習和接受過程有一定的難度,不利于培養學生的學習興趣。
4 C程序設計課程教學模式的改進探索
1)融入探討式教學
不同專業的培養目標是不相同的,應該根據信息管理與信息系統專業的培養目標和程序設計課程的特點對課堂教學形式以及側重點進行重新設計,豐富課題教學形式。在傳統的理論教學課時中分出一部分來進行探討式教學,選擇一些具有專業應用特點的問題組織同學們進行探討。例如在講解數據類型的時候,傳統的方法是給同學們介紹數據類型有哪些,分別是怎么用的,流水賬式的講解枯燥而且難以記憶。此時就可以利用“學生信息管理系統中的學生信息都有哪些類型?”這樣一個實際問題,讓大家來討論這個學生信息管理系統中的各種學生相關信息的類型該如何設定?用什么類型的會比較合適?選擇錯了會出現什么樣的問題?……經過這一系列問題的討論,大家對每種數據類型的應用都有了比較深刻的認識,同時也了解了C程序課程在本專業上的應用。
2)融入“微課”教學
C程序課程含有大量的語法、語句規則,還有很多嵌套、循環等不易理解的程序設計思維,用口述的方式不易表達。對于這部分難理解的內容可以采用“微課”的教學方式,將這部分內容進行主題教學設計,做成教學視頻(課例片段),輔助于教學講解,既形象又生動的教學形式,既增加了教學的趣味性,又加深了學生對程序設計思維的理解,提高了學生的學習興趣。同時還可以將“微課”復制給學生,學生可以通過手機、電腦隨時進行自主學習和復習。這種方法需要教師花更多的制作時間,同時也不是所有的知識都適合做成“微課”的形式,教師可以根據需要適當的選擇一些知識點進行制作和應用。
3)案例教學法
案例教學法是一種以案例為基礎的教學法,最早應用于醫學院和法學院,是一種以社會生活的實際案例為主要研究對象的教學法。在教學過程中采用具有專業應用背景的問題進行教學,理論與實踐相結合,打破了傳統的理論教學與專業應用相脫離的境況,豐富了教師單純授課的教學方法,有利于調動學生主動學習的積極性,培養學生的實際應用能力。在信息管理與信息系統專業的學生的C程序設計課程的教學中,教師可以在教學過程中采用具有專業應用特點的實際問題為教學的切入點,用具體的案例和實際的應用背景給學生以真實感,激發學生主動學習知識去解決問題,層層深入。例如可以使用圖書管理信息系統、人事信息管理系統等一個或幾個實例貫穿整個教學過程,在介紹數據類型等語法知識的時候可以通過實例中的信息類型設計來講解;在介紹選擇結構程序設計、循環結構程序設計等內容的時候可以借助實例中的選擇功能、查詢功能、信息更新功能的設計實現方法來解釋。同時可以選擇一些類似的實例,啟發引導學生,引領著學生進行系統分析和設計,鼓勵指導學生進行程序的設計和編寫。學生從實際問題的分析和實踐中培養學習興趣,掌握和應用理論知識,并能與所學專業相結合。
4)教師講授與自主學習相結合
程序設計課程中的語法講解是枯燥的,但這部分對于課程的學習具有極其重要的鋪墊作用,單純的流水賬式的教學容易讓學生產生厭煩情緒,因此需要想辦法激發學生的學習興趣。可以將這部分內容的學習轉移至機房,采用教師課堂講授基本原理加學生自主實踐學習的方式完成,教師在課堂上將基本的理論和語法結構介紹清楚,讓學生運用前面所學的知識或者具體實例進行應用實踐。比如學習函數的調用以及函數參數的設計,教師將如何自定義函數的用法、語法和規則以及函數參數的類型等問題解釋清楚,讓學生通過具體的問題設計帶有不同類型和數量的參數的函數進行編程解題,這樣既鍛煉了學生的自學能力,又培養了學習興趣,同時還加深了對知識的理解。但是這種方法占用的時間較多,所以不需要所有的知識都采用這種方法,教師可以根據學生的情況酌情選擇一些知識點試煉。
5)教師講授與團隊討論實踐
在C程序設計課程的教學開始,就可以將同學們分為多個開發團隊,可以自由結合的方式,這樣在課堂討論以及機房實踐中都可以以小組的形式進行。尤其在講解程序設計理論的時候,可以給學生一些固定的題目,或者讓小組自己選擇跟專業應用相關的題目進行開發訓練,讓學生自由發揮,會讓教師看到一些意想不到的效果。這樣學生在學習程序設計的同時,進行著實際問題的分析和編程求解,遇到困難并解決困難的過程會留下深刻印象,這種小組團隊形式的教學效果明顯優于之前的流水賬式的學習。教師屬于管理者和控制者的角色,在小組討論完畢以及實踐完畢后進行總結。
5 考核方式改進探索
一般C程序設計課程的最后成績都是由期末成績、上機實驗成績和平時作業情況來按比例劃分的,這種考核方式難免會掩蓋學生的實際水平,如平時作業和上機實驗報告難免會出現學生抄襲的情況,操作能力差但靠死記硬背最后期末取得了好成績;而平時操作能力強的一些學生往往會忽視期末考試的重要性,不注重語法知識點的記憶,最后成績不理想。對于教學質量的保證,合理的考核方式也是非常重要的,因此對考核方式進行改進也是非常有必要的,可以根據教學方式的改進逐步調整考核方式,如在成績評定中加入小組成績,該成績是由小組在平時針對問題提出的解決方案、小組作業完成情況、成員表現等方面來構成。還可以將教學過程中布置的綜合案例作業作為考核成績的一部分,綜合案例體現了學生對程序設計理論掌握的情況以及程序設計在本專業中的應用能力,同時也鍛煉了學生的演講表達能力。當然在實際教學中,由于課時以及各方面因素的限制,不能完全實現理想中的教學模式,考核方式需要具體根據當時的教學模式進行調整。
6 小結
C程序設計課程作為一門功能強大的軟件開發語言課程,各大高校理工類專業均普遍開設了該課程,但是每個專業的培養目標是不一樣的,因此對該課程的教學方法以及要達到教學目的也是不一樣的;但是傳統的教學方法都是按照同樣的方法對不同的專業進行教學,因此會出現很多不相適應的問題;針對這些問題,本文對信息管理與信息系統專業C程序設計課程的教學方法和考核方法進行了探索,在課堂教學和實驗教學中,有效結合討論式教學法、“微課”教學、案例教學法以及團隊開發學習等教學方法,通過這些方法可以培養學生對C程序設計課程的興趣,鍛煉學生的獨立分析能力和實踐操作能力,同時培養了團隊精神;在教學實踐過程中,取得了比較好的教學效果。同時做出相應的考核方式改進,更加真實的反應學生的真實水平,體現公平性,更加有助于教學質量的提高。
參考文獻:
[1] 百度百科.信息管理與信息系統[EB/OL].[2015-10-25].http://baike.baidu.com/link?url=OwlYRFjpafk2x3SHhYDvy_p45V91RhtoAcrAnPujaXVekdaVaUB9XhaGWqOGUHqEmhzOc-lRrUnDWdewTOhe_K.
[2] 由育陽.非計算機專業C++程序設計課程教學改革探索[J].黑龍江教育,2015(5):68-70.
[3] 李志芳,牛琳. 醫學信息管理專業 C++ 程序設計教學方法研究[J].計算機教育, 2012(16): 78-81.
[4] 肖明.案例教學法在“C++語言程序設計”教學中的應用[J].計算機教育, 2010(6): 83-86.
[5] 羅建軍,朱丹軍,顧剛,等. C++程序設計教程[M].北京:高等教育出版社, 2010: 142-144.