佘玉萍
(莆田學院 電子信息工程學系,福建 莆田 351100)
應用型本科非計算機專業(yè)VFP程序設計教學模式的探討
佘玉萍
(莆田學院 電子信息工程學系,福建 莆田 351100)
本文通過分析應用型本科非計算機專業(yè)的VFP程序設計的教學現狀,并從任務驅動方法、多媒體機房上課、基于軟件工程的案例教學、培養(yǎng)學生提出問題的能力及考核方式五個方面探討應用型本科非計算機專業(yè)的VFP教學.
VFP程序設計;教學模式;任務驅動;基于軟件工程;提出問題;考核方式
Microsoft Visual Foxpro 6.0(以下簡稱VFP)是一個可視化的面向對象的數據庫管理系統(tǒng).目前VFP已成為各高校非計算機專業(yè)開設的一門計算機主干課程.盡管省考試中心將VFP及C語言一道劃為二級考試范疇[1],但是VFP以其獨特的數據管理功能又不同于其它高級語言.應用型本科的非計算機專業(yè)學習這門課程是為了使學生了解數據庫的基本原理和程序設計基礎知識,它不僅要求學生既要學好理論知識,而且還要掌握實際操作技能,更要具備獨立的編程能力.但是由于非計算機的學生既要掌握自己所學專業(yè),又要學習這全新的課程,所以在時間的的投入上相對較少,就使得他們在學習VFP時有一定的困難,認為VFP高深莫測、枯燥乏味,甚至有的學生灰心喪氣.教師在教學過程中遇到很多困難,學生僅僅滿足課堂教學,并不能自我學習,后期為了應付計算機等級考試,只是機械地練習題目,不能真正理解題目的考察要點.因此,要求教師在教學上從多方面精心組織教學,充分調動學生的主觀能動性,使學生能順利通過等級考試的同時增強他們的計算機應用能力,以便今后更好地使用計算機作為工具去解決工作中的任務.本人結合個人的教學實踐,現就VFP的教學方法進行一些探討.
VFP開設在我院已經有多年的歷史了,教學目的是使學生掌握中小型數據庫管理系統(tǒng)開發(fā)的基本方法,并要求學生通過省二級考試.但從多年多位教師的教學反饋中得知,學生對該課程的學習存在“學完忘完”現象.主要原因有以下幾個方面:一是非計算機專業(yè)學生計算機水平良莠不齊,動手能力差,教學對象英語底子薄弱,記憶VFP函數和命令的方式不當,容易產生反感.二是學生沒有形成系統(tǒng)開發(fā)的學習模式,掌握知識沒有系統(tǒng)化,學生對知識的學習尚且停留在專題講解,難于在實踐中將各個部分只是在具體問題中組合,使其系統(tǒng)化.三是考核方式驅使教師和學生把VFP的重心放在應付省計算機二級考試上,進而導致學生考試前背命令,背操作步驟的應急學習現象.忽略了學生自主學習與獨立分析問題、解決問題能力,這也正是培養(yǎng)應用型人才所急需的.
針對以上現狀,通過幾年的理論和實踐教學,從任務驅動方法、利用多媒體機房上課、基于軟件工程的理論進行案例教學、培養(yǎng)學生“提出問題”的能力和建立等級考試與VFP綜合能力兩手抓的考核形式.
“任務”驅動教學法[2]是在計算機實例教學的基礎上總結出來的探究式教學模式.課堂教學中,老師通過創(chuàng)設問題情境把所要學習的知識巧妙地隱含在一個個任務中,使學生在完成任務的過程中掌握知識,增加技能,從而獲得清晰的思路和方法,掌握知識的脈絡.
在VFP程序設計教學中,表的創(chuàng)建及相關概念是數據庫的基礎知識,歷來是非計算機專業(yè)學生不容易理解的內容,如果直接引入,勢必使學生感覺入墜迷霧.如果在講解表的創(chuàng)建之前,讓學生先從自己班級的學生信息表入手,先熟悉一張二維表應該有哪些內容.使學生產生親切感和迫切想要知道怎么創(chuàng)建學生信息表;然后明確學習任務--使用常用數據類型創(chuàng)建表;接著,介紹設計表的工具—表設計器及其構成,與學生一起分析學生信息表由哪些字段構成,并且根據這些字段創(chuàng)建學生表(student.dbf),依次輸入各個字段,同時介紹相應的數據類型及寬度;最后,往新創(chuàng)建的表里添加數據,激發(fā)學生的成就感.在教學過程中,學生在老師的引導下完成設計任務,并且對所學內容逐步深入.在此基礎上,再總結表設計器的結構,各個字段及其不同類型的選取,同時引出表、字段、數據類型等概念.將知識溶解在任務中,學生在學習過程中始終充滿期待和熱情,最后達到學習知識和培養(yǎng)探索與創(chuàng)新能力[3]的雙重教學目的.
針對非計算機專業(yè)學生動手能力較差的問題,可以利用如今在大多數學校均已普及的多媒體機房上課來替代純粹的教室上課來解決,基于VFP程序設計是一門實踐性很強的學科,學生只有通過及時上機實踐才能消化理解并掌握課堂教學中所學的內容,即所謂“百聞不如一見,百見不如一做”,針對這一問題,利用機房的多媒體實現同步教學演示,老師在上面講解,學生模仿操作,這樣讓學生在老師的演示下實時操作,動手能力得到一定提高.當然,除此授課方式之外,教室還應安排額外的上機時間并精心設計上機的內容來鞏固授課內容,避免出現教學實踐流于形式,學生上機前不做任何準備,一味模仿教師操作實例,或照著實驗指導書操作一遍,把上機只作為教條地驗證理論的手段.
面向案例的教學研究,有很多教室給出了自己的思路與方法,但大多都是針對具體的例子或工程項目,缺乏從系統(tǒng)系統(tǒng)理論的高度去審視教的過程控制與學的目標控制.利用軟件工程的理論和思路進行VFP案例教學,不僅僅要“授之以魚”,更要強調“授之以漁”,強調創(chuàng)新能力的培養(yǎng)與全面素質的提高,是對傳統(tǒng)教學的延伸與發(fā)展.
對于應用型本科非計算機專業(yè)的學生而言,開設VFP的主要意義在于,學習以數據庫為核心信息系統(tǒng)開發(fā)的基本過程、設計方法,并通過具體開發(fā)工具的使用,初步掌握代表當前先進開發(fā)思想的面向對象技術及可視化編程,具有使用計算機解決實際問題的初步能力.故應針對學生專業(yè)的不同設計不同的小型案例,如針對營銷專業(yè)可以進行客戶管理系統(tǒng)設計,針對旅游專業(yè)可以進行旅游管理系統(tǒng)設計等,在此過程引入軟件工程的教學思路,使學生學習VFP的過程中成為教學活動的主體,形成了學生自主學習、合作學習、研究性學習和探索性學習的開放型的學習范圍.
軟件工程[4,5]特別強調解決問題的思路,在VFP案例設計講解過程中,避免按照程序程序代碼從上而下流水賬式敘述,具體方法是先描述需要,然后描述如何分析需求,如何抽象概括,問題解決的核心是什么,接著以如何從用戶角度設計友好的界面,等方面循序漸進、逐步完善程序的代碼.在課堂上,解決每個階段任務時,教師是需求者,學生是該問題的解決者,這種方式充分體現學生是解決問題的主人,也增加了他們解決問題的責任感,有效地避免了學生解決問題的依賴性和惰性.這種教學方式在筆者的班級實施后收效良好.
愛因斯坦說過“提出問題比解決問題更重要”,李政道也曾說過“最重要的是提出問題,否則將來做不了第一流的工作”.要推進應用型非計算機專業(yè)的素質教育,培養(yǎng)符合時代要求的人才,就是要培養(yǎng)學生提出問題的能力,根據筆者在授課與實踐過程中,發(fā)現很多學生對知識并不是太了解,甚至心存疑問,但是就是不見發(fā)問.究其原因,主要有以下三點:一怕在課堂上提問會影響教師的教學秩序,而挨教師的批評;二怕提出的問題不成問題而成為同學們的笑料;三怕提出的問題毫無價值而被人瞧不起.因為為了營造一個良好的質疑氛圍,激發(fā)學生“提出問題”的興趣和勇氣,要鼓勵學生大膽地猜想,大膽地懷疑,提出自己的問題.例如:在課堂上,講解表的創(chuàng)建時,針對表創(chuàng)建的兩種常見方式,即界面操作和命令操作,引導學生提出問題,兩種形式到底哪一種更好,并讓學生自己分析比較,適當給予引導,最后比較出了各自的優(yōu)缺點,達到既學習了表創(chuàng)建的兩種不同方式,又讓學生因為參與思考而學習得更為深刻.在提問過程中,即使那些回答錯誤的同學,也不要批評,二是跟其他同學分析其錯誤產生的原因.
這種引導提出問題的教學方式不僅適用于課堂授課,更應該引入實踐教學.實踐環(huán)節(jié)一直都是VFP教學的重要組成部分,實踐模式的探討一直是一個熱門話題.筆者認為VFP的實踐跟學生的“提出問題”相結合可以帶來意想不到的收效.實踐不同于課堂,有書可循,教師直接解惑.實踐課要求學生根據實驗的指導書進行課堂知識的驗證,指導書一般應以提問的形式來引導學生完成任務,在學生對問題理解不夠透徹的情況下,可以提出自己的疑問,這時教師不要直接給出答案,而是引導學生通過獨立思考,自己發(fā)現問題和解決問題.例如:要求在學生表[6]上創(chuàng)建一個名為專業(yè)年齡的索引,該索引先以專業(yè)排序,相同專業(yè)的再按年齡順序排序.解答此題的難點就在于該索引表達式.解答這道題的關鍵要引導學生提出兩個問題,其一,該索引涉及一個以上的字段,引導學生提出“如何正確書寫多個字段構成的索引表達式”;其二,鑒于學生表并沒有年齡字段,引導學生提出“如何通過學習過的函數和表達式來正確表達年齡”.如果學生能發(fā)現以上兩個問題,并提出來,再想辦法解決,這樣比直接告知答案讓學生去消化的效果強的多,也發(fā)揮了學生的探索精神和獨創(chuàng)之見,促進教師自身素質的提高.
良好的考核方式能促使學生明確學習的目的與方向,激發(fā)學生的積極性和上進心,檢查學生的學習效果,合理的考核方式應使學生在注重等級考試的同時注重計算機應用能力的培養(yǎng).鑒于省等級考試方式的局限,一般設置選擇,操作及設計題三種題型結構,此考核方式可以在局部知識范疇內考察學生的掌握程序,但不能從VFP的課程目標上考察學生對整個數據庫管理信息系統(tǒng)的全面了解及綜合能力的鍛煉.為此,筆者在教學中,嘗試采用等級考試和小型系統(tǒng)開發(fā)能力測試相結合的考核形式,在課程開設之初,就組織學生進行分組并選取一個小型系統(tǒng)作為小組的任務,結合教師上課的案例,學生就可以分階段完成任務直至整個系統(tǒng)的整合.小型應用系統(tǒng)開發(fā)能力測試主要測試學生的綜合應用能力,使學生切身感受到VFP的強大功能,激發(fā)學生對知識應用的興趣和熱情,也可以培養(yǎng)同學之間的團隊協(xié)作能力.
經過本院多位老師多年的教學實踐,證實以上所探討的VFP教學方法可操作性強,均取得一定的教學成果.但是隨著社會對高校人才培養(yǎng)需求的變化,應用型本科非計算機專業(yè)的VFP程序設計的教學模式仍然是個任重道遠的課題.以上是筆者在教學過程總結的一些探討與嘗試,有些還需進一步完善.
〔1〕高等院校計算機基礎教育改革課題研究組.中國高等院校計算機基礎教育課程體系2008[M].北京:清華大學出版社,2008.
〔2〕(美)威廉·威爾斯曼.教育研究方法導論[M].袁振國,譯.北京:教育科學出版社,2003.
〔3〕陳琦,劉儒德.當代教育心理學[M].北京師范大學出版社,2007.
〔4〕張海藩.軟件工程導論.北京:清華大學出版社,2008.
〔5〕Shari Law rence Pfleeger.Software Engineering:Theory and Prac-tice(4th edition)[M].Pearson/Education.2009.
〔6〕鄂大偉.Visual Foxpro6.0程序設計與應用教程[M].廈門:廈門大學出版社,2002.
G642
A
1673-260X(2012)01-0264-02
福建省教育廳省屬高校科研專項項目(No.JK2010049)