摘要:本文針對程序設計實踐與方法重點課程建設,分析原教學方式、實踐教學中的不足,在課程內容設置、教學方法改革、實驗內容安排、課程設計以及教學環(huán)境的改善等方面,提出改進方法,并著重介紹達到本課程教學目的采取的具體措施。
關鍵詞:課程建設;教學內容;教學方法;實踐教學;教學環(huán)境
1課程建設的任務與目標
對于應用型本科院校,培養(yǎng)合格的高級程序員是計算機科學與技術專業(yè)和軟件工程專業(yè)的培養(yǎng)目標之一。程序設計實踐與分析課程是繼程序設計基礎、數(shù)據(jù)結構和面向對象程序設計之后開設的一門課程,其目的是讓學生在低年級時即學會使用當前流行的編程平臺,初步掌握中型程序設計的基本方法和理念,提高學生編寫程序的興趣,為其早日進入軟件公司實習打下基礎。
由于本門課程開設時間不長,所以,在課程建設之前,教學內容和教學方法與程序設計語言區(qū)別不大,因此,不能體現(xiàn)開設該門課程的本意。
在該門課程的建設過程中,我們不斷實踐、探索,在課程內容設置、教學方法改革、實驗內容安排、課程設計以及教學環(huán)境改善等方面做了一些探索性工作,下面介紹其相關內容[1]。
2理論教學
根據(jù)多年的教學實踐并參考其他院校的培養(yǎng)計劃,我們在第4學期開設該課程,3.5學分,64學時(48理論學時+16實踐學時)另外,有1周的課程設計。課程采用VisualC#.NET2008和SQLServer2005為平臺,在學生掌握了面向對象程序設計的思想后,掌握可視化編程平臺的使用,重點是進行實例分析,這可以使學生掌握正確的開發(fā)手段,了解軟件開發(fā)的主要過程,為學生盡早掌握軟件開發(fā)方法打下基礎。
2.1課程內容設置
程序設計實踐與分析是一門承上啟下的課程,學生已經初步具備了程序設計能力和面向對象程序設計的思想,因此,該課程的重點不再是程序設計能力及面向對象程序設計的培養(yǎng),而是轉向讓學生盡快掌握可視化、網絡化編程平臺,初步掌握利用軟件工程的方法進行軟件項目的分析、設計、實現(xiàn)和維護的能力。
課程內容及學時分配如表1所示。

2.2教學方法改革
教學方法是提高教學質量的關鍵環(huán)節(jié)之一,是教育思想、教育觀念在教學過程中的體現(xiàn),是一種經驗的積累。根據(jù)多年的實踐,我們突破了傳統(tǒng)教學方式的束縛,綜合利用任務驅動教學法、案例教學法、問題式教學法和討論式教學法,提高學生的學習興趣,取得了明顯的成效。
2.2.1任務驅動教學法
任務驅動教學法是一種建立在建構主義基礎上的教學方法。它強調教學活動應該通過設計一項重大任務或問題以支撐學習者積極的學習活動,幫助學習者成為學習活動的主體。設計真實的、具有挑戰(zhàn)性的、開放的任務環(huán)境和問題環(huán)境,誘發(fā)、驅動并支撐學習者探索,同時,對教學內容和教學過程進行反思與調控。
所謂“任務驅動”是學習者通過完成教師布置的任務,將自己所學的知識與技能真正內化。其中,任務蘊含了學習者應該掌握的知識與技能,也蘊含了學習者需要的能力訓練要求。學習者完成任務的過程應該是一個不斷提出問題、解決問題的過程,學習者的學習過程必須與任務的主題相結合。
在該門課程的教學過程中,教師要在不同的教學階段給學生提出不同的任務,并由學生自己提出設計方案,在以后的實踐教學和開放式實驗環(huán)境中完成任務。學生在方案設計過程中,主動查閱大量參考書,很自然地掌握了相應的理論知識,學會了提出問題、解決問題的科學思考方法。教師在學生完成任務后,對學生的完成情況進行點評,幫助學生分析存在的問題,使學生得到進一步地提高[2]。
2.2.2問題式教學法
問題教學法是由教師提出問題,激發(fā)學生積極思考,引導學生根據(jù)已有知識和經驗,通過推理來獲得知識的教學方法。即教師提出問題—學生思考問題—學生回答問題—教師再提出問題,由此,構成教師引導學生獨立思考、積極主動地獲得探求問題的答案。問題教學法從其心理機制看屬于探究性的,使用這種方法時,學生掌握的知識不是教師直接提供的,而是教師引導學生去發(fā)現(xiàn)的。因此,它有利于激發(fā)學生的思維活動,調動學習的積極性,這有利于培養(yǎng)學生獨立思考能力和語言表達能力。
教學中,我們首先要明確發(fā)問的目的,要根據(jù)教學內容、教學過程的實際需要和學生的實際情況來選擇問題。值得重視的是,選擇問題時,應注意應用性、啟發(fā)式、激勵性的問題,以激發(fā)學生進行較高水平的思維。即在“是什么”和“為什么”之間,應更多地選擇富有啟發(fā)性的“為什么”類的問題,而避免簡單化的“是什么”類的問題。
教學中的問題可作如下分類。
(1) 復習式問題:通過師生問答形式以幫助學生復習、深化、系統(tǒng)化已學的知識。
(2) 啟發(fā)式問題:通過提出學生未思考過的問題,引導學生深入思考和積極探求新知識。
(3) 診斷性問題:通過提出問題估計學生對某項學習內容已達到的水平,了解教學效果。
(4) 激勵性問題:通過提問激勵學生參與學習活動,激發(fā)學生學習興趣,控制學生的行為。
2.2.3案例教學法
案例教學法即圍繞一定的教學目的,把現(xiàn)實中真實的情景加以典型化處理,形成供學生思考分析和決斷的案例(通常為書面形式),通過獨立研究和相互討論的方式來提高學生分析問題和解決問題的能力的一種方法。
老師在課前要做好充分的準備,收集典型案例,并加以分類和整理,然后布置給學生。學生對已掌握的資料進行分析,歸納相似性、尋找差異性。教師將分析案例的 “主權”交給學生,讓學生運用所掌握知識,甚至是課外知識去分析問題,討論解決方法。教師此時所起的作用類似 “導演”,對學生的分析、討論不作過多干預、不作過多評論,充分尊重學生的觀點、想法,并對這些觀點加以歸納和總結。
2.2.4討論式教學法
討論式教學法在教學法體系中占有重要地位。利用討論式教學法組織教學,教師作為“導演”,對學生的思維加以引導和啟發(fā)。學生在教師指導下進行有意識的思維探索活動,始終處于“問題—思考—探索—解答”的積極狀態(tài)。由于看問題的方法不同,學生會從各個角度、各個側面揭示基本概念的內涵和基本規(guī)律的實質,就不同觀點和看法展開討論時,學生會受到強烈的外部刺激,它可以引起學生的興趣,吸引學生的注意力,從而產生自主性、探索性和協(xié)同性的學習。這樣的教學方法無疑是體現(xiàn)“教師為主導,學生為主體”的教學思想。
3實踐教學
實踐教學是本門課程的重要環(huán)節(jié),在實驗項目的安排上,充分體現(xiàn)程序設計的分析過程,通過安排兩個小型系統(tǒng)的實驗,使學生了解程序設計語言實驗與系統(tǒng)分析的區(qū)別,并使其在系統(tǒng)設計能力上有質的飛躍。在實踐教學方式上,采用任務驅動教學法,充分調動了學生的學習積極性。
3.1實踐教學內容
該課程是一門實踐性強的課程,設置教學內容的指導思想就是加強實踐性教學環(huán)節(jié)。因此,該課程安排課內16學時、課外32學時的實驗,實驗內容如表2所示。

3.2實踐教學方法
在實踐教學中,我們采用任務驅動式教學方法,即設計題目只有設計目標,而沒有具體實現(xiàn)細節(jié),其細節(jié)需要學生根據(jù)設計目標,充分發(fā)揮自己的想象力,設計一個具體的項目。如果不能在實驗學時中完成任務,學生可以在開放式實驗環(huán)境中利用業(yè)余時間進行。
兩年的實踐使學生的程序設計能力、系統(tǒng)分析能力上都得到了較大的提高。
3.3課程設計
課程設計屬于綜合性創(chuàng)新實驗,在整個課程的課堂理論教學和課程實驗完成后,根據(jù)課程的特點和內容,教師設計出綜合整個課程的創(chuàng)新實驗。學生利用業(yè)余時間在教師的指導下獨立完成實驗。課程設計可以培養(yǎng)學生運用課程專業(yè)知識分析、解決實際問題的能力以及對專業(yè)知識的綜合應用能力,它在整個實踐教學體系中占有非常重要的地位。
4網絡教學環(huán)境建設
為了構建良好的學習環(huán)境,我們充分發(fā)揮網絡教學的優(yōu)勢,創(chuàng)建程序設計實踐與分析教學網站,網站具有以下主要功能。
(1) 信息發(fā)布:有關該課程的教學信息,均在此網站上發(fā)布,各位任課教師可以從網站上獲取相關教學資料,學生可以獲知相關教學信息,下載與課程相關的教學資料以及相關的鏈接。
(2) 提供網上討論平臺:師生在登錄后可以在網站論壇中進行討論,討論可以是教師組織的專題討論,也可以是學生對學習中所遇到的問題的自由討論。
(3) 網絡作業(yè)平臺:教師可以通過網上作業(yè)平臺向學生布置作業(yè),學生完成作業(yè)后通過該平臺提交,實現(xiàn)了無紙化作業(yè)。
(4) 網絡考試平臺:該課程的考試通過網絡考試平臺進行,實現(xiàn)了隨機出題[3-4]。
5結語
通過課程建設,程序設計實踐與分析課程在教學內容、教學方法、實踐教學及教學環(huán)境等方面都得到了較大改善,課程教學效果有明顯提高。然而,計算機技術不斷發(fā)展,教學內容與教學方法要隨之作出調整和改進。在課程建設中,我們要把握計算機技術的發(fā)展變化,不斷改進教學內容和方法,使學生通過本門課程學習,在程序設計能力上有一個質的飛躍。
參考文獻
[1] 方海林. 應用型本科院校實驗教學體制改革的研究與實踐[J]. 江蘇高教,2007(1):102-104.
[2] 楊康,顧立志. 試論教學互動中的激勵機理[J]. 黑龍江高教研究,2008(7):159-161.
[3] 康梅娟. “網站建設與維護”課程的教學研究與實踐[J]. 計算機教育,2009(10):102-103.
[4] 鄧立新,楊震.“語音信號處理”網絡課程建設[J]. 計算機教育,2008(3):60-62.
Reformation and Exploration on Programming Practice and Analysis Course Construction
XU Ke-qi1, WU Wei1, LI Xing-peng2
(1.Dept.of Computer, Shanghai Institute of Technology, Shanghai 200235, China;
2.Dept. of Mechanical Electric Engineering, Suzhou Polytechnic Institute of Agriculture, Suzhou 215008, China)
Abstract: Based on the key course construction for Programming Practice and Analysis, This article analyzes the shortages of past teaching means and practice teaching. Some improved methods are presented in aspects of course content plan, teaching method reform ,experiment content arrangements, course design, teaching environment and so on. It introduces concrete measures for achieving this course teaching target.
Key words: course construction; teaching content; teaching means; practice teaching ; teaching environment
(編輯:郭小明)