摘要:Visual Basic語言是一種基于Windows平臺的,面向對象的可視化編程語言,由于其具備了直觀、簡單易學的特性,因此,很多大學都把VB作為非計算機專業的計算機公共基礎課來講授。本文分析了VB教學在非計算機專業學生中所普遍存在的問題,結合教學實際,提出了相應的改進方法,這種方法在筆者的實際教學中取得了較好的效果。
關鍵詞:Visual Basic程序設計 非計算機專業 學習興趣 教學方法
文章編號:1672-5913(2011)18-0053-04 中圖分類號:G642 文獻標識碼:A
隨著Internet的發展以及辦公自動化的普及,一名合格的大學生必須掌握計算機技術的基礎內容。Visual Basic程序設計語言(以下簡稱VB)作為一門面向對象的程序設計語言,具有簡單易學、功能強大、應用廣泛的特點,被公認為是編程效率最高的一種編程工具[1],因此很多院校都選擇VB作為計算機程序設計的基礎課來培養學生的計算機應用的能力,本文首先指出了非計算機專業學習程序設計語言必要性,分析了教學中存在的不足,并對不足之處提出了改進的方法。
1 非計算機專業學生學習程序設計必要性
1.1 社會信息化的要求
非計算機專業的學生學習計算機,是信息素質教育的需要,也是創造教育的需要,更是發展我國信息產業的需要。掌握計算機知識和應用,是培養滿足時代要求的新型人才的一個重要環節。隨著科技的進步,計算機的應用促進了各個科學領域的發展。作為一名非計算機專業的大學生,在掌握本專業的同時,也應該初步的學習一些計算機高級語言和程序設計,從能夠更好的為本專業服務。
1.2 能夠更深入的了解軟件的運行機制,從而提高軟件的操作能力
Visual Basic程序設計語言(以下簡稱VB)作為一
門面向對象的程序設計語言,具有簡單易學、功能強大、應用廣泛的特點,被公認為是編程效率最高的一種編程工具[1]。高級語言程序設計課程不僅使學生能更深入地理解計算機的工作過程,而且在培養學生嚴密的邏輯思維、培養非計算機專業學生利用計算機解決本專業問題的能力方面有著非常重要的作用
1.3 能夠開拓學生的邏輯思維能力以及動手能力。
大學生學習VB,不僅僅是通過二級考試,更重要的培養學生具有相關領域中的計算機應用開發能力以及利用計算機分析問題、解決問題的意識。程序設計課程在培養學生分析問題、解決問題的能力和培養學生創造性思維上起著非常重要的作用。
2 VB教學中存在的問題
Visual Basic語言作為非計算機專業學生的一門計算機基礎課,在大學生素質教育中有著重要的作用,然而在這門課程的教授中,普遍存在著以下幾個問題。
1) 缺乏相應的基礎知識,有畏難心理。
大多高校的VB課程開設是在大一的下學期,盡管在開設VB程序設計課程之前,學校已經給學生開設過計算機文化基礎這門課,但很多學生仍然對計算機語言程序設計一無所知,學習程序設計語言過程中理解力、掌握程度相對較差,這直接影響著VB程序設計課程的教學效果。
2) 學習目的不明確。
學生對VB程序設計課程認識不夠,學習動機不明確,認為學習程序設計對他們來說沒有用,今后到工作崗位上不可能去編寫程序,大部分學生只是把VB程序設計課程當作一門不得不學的課程,只是單純的應付考試。也由于教師教學內容的安排和教學方法的選擇不當,使得很多學生學習興趣不濃,積極性不高,感到這門課程枯燥、難學。
3) 學生接受知識過于被動。
隨著計算機技術的發展和計算機課程教學實際要求,目前計算機課程一般采用多媒體教室授課。通過投影儀將教師操作過程及相關知識投射到大屏幕上,極大地豐富了課堂教學內容,加大了傳遞信息的容量,可以使講解的內容更加直觀形象,更易于理解。但在授課過程中,教師將講授內容做成電子教案和教學課件進行課堂演示,信息量大,速度太快,學生無法做到邊聽課邊做筆記,留給學生的印象較淺,容易遺忘。
3 課程教學方法的改進
由于上述問題的存在,很多學生學習這門課,只是簡單的應付一下期末考試,或者為了通過計算機等級考試,這就完全違背了開設這門課的初衷。為了提高學生的學習興趣,在教學過程中,我積極探索,結合大學生自身心理特征和這門課的特點,提出以下幾個方面的改進措施,以期提高學生學習VB的興趣。
3.1 提出問題,導入新課
在課堂教學中,每個新知識點的引入,對于學生來說,即新鮮好奇,又充滿畏懼,尤其是非計算機專業的學生,如果我們直接引入新的概念或者知識點,學生往往覺得很突然,難以接受,所以,教師能否做到知識的良好導入及適時啟發至關重要。
比如在講解“數組”這一概念時,我們先讓學生思考下面一個例題。
例:求三個學生計算機成績的總和。
這只是一個簡單的順序結構的程序,只需要4個變量,分別代表三個學生的成績、成績總和。
大多數學生都能夠很好的理解這段程序。在這個問題的基礎上,教師順勢提出下面一個問題:求整個班(50個人)學生的計算機成績總和。最初面對這個問題的時候,由于思維定勢的作用,學生自然想到了用50個變量來表示50個學生的成績,這時候,教師就反問學生,如果求整個學校,幾萬個學生成績的總和,需要多少變量?在學生一籌莫展的時候,教師進行提示,幫助學生回憶中學數學里學到的數列,在分析數列的特性的同時,引入新的知識點“數組”。
實踐證明,這種知識導入和課堂啟發無疑是一種很好的方法,大大提高了學生學習新內容的主動性和積極性。
3.2 任務分解,簡化問題
問題規約是人們求解問題常用的策略,就是把復雜的問題變換為若干需要同時處理的較為簡單的子問題后再分別加以求解。這其實是人工智能研究中問題求解的基本方法之一[2]。這種方法用在VB教學上,往往會受到事半功倍的效果。
比如在學習二重循環的時候,有下面一個例題要講解給學生。
學生在面對這個題目時候,往往會束手無策,如果在這個問題之前我們先講解10!問題解法:
這個程序只需要一重循環,學生較易理解。在此基礎上,我們把“for i=1 to 10”換成“for i=1 to J”這就變成了求J的階乘。接著告訴學生,既然這個J也是在變化。那么就需要另外一個循環來表示J的變化。在上面程序的外面再加一個循環就可以。變成如下的形式:
通過上面的處理,將復雜問題分步處理,再加以綜合來獲得解答,教學深入淺出,學生們就不會再懼怕復雜問題,逐步建立學生學習VB的自信心,從而提高學習興趣。
3.3 舉一反三,觸類旁通
孔子曰:“舉一隅,不以三隅反,則不復也?!币馑际钦f,如果告訴他一個角落是這樣的,他還不能推悟出其他三個角落也是一樣的,那我就不會再多說什么了。這就是成語“舉一反三”的由來。在教學中,如果能運用好“舉一反三”,啟發學生找出兩個知識點的聯系,就能夠從一個知識點,過渡到另外一個知識點,從而獲得新的知識,實現知識間的“舉一反三”。
比如在VB的教學中,首先給學生講解在屏幕上輸出一個星號表示的矩形,然后要求學生思考從矩形變換成菱形。
輸出正方形需要兩個循環,外層循環來控制輸出行數,內層循環來控制每行輸出的星號個數。
通過矩形和菱形的比較來看,所輸出星號的行數一樣,每行輸出的星號個數也是一樣,不一樣的只是每行星號所在的位置不一樣,控制輸出位置可以用tab(n)函數也可以直接輸出空格字符串。
“舉一反三”作為一種有效的教學方法在形式上是通過比較異同,抓住典型,突破單元等手段來達到拓寬學生學習思路,培養思維能力的。更為重要的是,作為一種有效的師生互動的教學方法,在潛移默化中授予他們探求新知識的方法,有助于他們將來在更高階段和更深層次上的學習,實現“授之以漁”的境界。
3.4 程序改錯,培養發現問題的能力
創新思維的可貴之處是隨時能發現問題。在程序設計教學中可通過“程序改錯”培養學生發現問題的能力。程序設計要求學生思維嚴謹,一個字符、一個標點錯了程序就不能運行或運行結果差之千里。因此,我在教學每一個基本語句時均安排“程序改錯”題讓學生練習。這些錯誤碼的程序或是因語法錯誤,或是表達式錯誤,或是變量類型定義錯誤。比如下面一個例題:打印一個5×5矩陣,按照常規思維,學生很容易寫出如下的程序代碼:
程序運行后,學生會發現所有的數組元素會在屏幕的第一列輸出。引導學生思考如何正確的分行,學生對程序進行改錯,一方面鞏固了新學知識,更重要的是培養了學生發現問題、解決問題的能力,促進了學生創新思維的發展。
3.5 閱讀程序,培養推理能力
創新思維要求對新事物的誕生有豐富的想象力和預知能力。發明家在發明新的東西時心中已經有該物的藍圖了。在程序設計教學中可否培養學生對事物的預知的思維能力呢?
程序設計教學必須培養學生閱讀程序的能力,其主要表現是“程序推理”教學。基本方法是給學生一段源程序,讓學生通過所學知識及算法推理程序運行的結果比如我們給出如下一段程序,讓學生進行程序推理,得出程序的運行結果。
學生剛面對源程序,猜想結果的類型可能會是數值、表達式或圖形,然后按程序執行的順序及算法再科學推理程序運行的結果,通過閱讀程序,培養了學生的推理能力。
3.6 由簡入繁,培養學生自信心
前蘇聯心理學家克魯切茨基指出:學習一定活動的愛好,導致能力的鍛煉和相應的發展,發展了的能力在活動成功上有積極的作用,而成功又反轉來“強化”愛好和興趣[3]。學生一開始接觸計算機編程語言的時候,往往覺得內容枯燥,不容易接受,容易讓學生感到挫敗感,久而久之就會對這門課程失去興趣。正如嬰兒學習走路,開始時大人應悉心照料,等嬰兒初步掌握了走路的技巧,再逐漸地把扶助的設備去掉,假如一開始就讓他跑,肯定事與愿違。
由繁入簡,在學習VB的開始階段,對于一個程序,不要奢望學生能一下就設計一個完美的程序出來。可以從最簡單的設計入手,然后使程序逐步完善,最后將其完善。
3.7 一題多解,培養發散思維
發散思維,又稱為求異思維。它是從同一來源材料求不同的(包括特異的)答案的思維過程和方法,思
維方向分散于不同方面,即向不同方面進行思考[4]。發散思維要求善于聯想、思路寬闊;要求善于分解組合、引申推導、靈活變通。如果教師在課堂教學中鼓勵、引導學生用不同的語句或不同的算法來編程解決同一個問題,往往也會收到事半功倍的效果。
比如我們再講到For循環時,要求學生用For循環來解決前面所學到的While循環中的例題。在教學中能求新、求變,實行開放式教學,逐步引導學生探求新的方法和知識,則能激發學生的學習積極性,達到最佳的教學效果。讓學生探索多種解法,培養發散性思維。
4 結語
VB作為一門重要的基礎性編程語言,對提高學生的綜合文化素質有著重要的意義,在教學中,如果能利用大學生強烈的好奇心和求知欲,合理的設置教學方式,把知識性趣味性融合在一起,就能夠幫助非計算機專業學生樹立克服困難的信心,培養他們學習的積極性。使學生能夠體驗到成功的快樂,。從而,使學生都能很好地完成學習任務,提高學生的實際應用能力,使得VB課程的教學質量得到不斷提高。
參考文獻:
[1] 何源. 任務導向教學在Visual Basic程序設計中的應用[J]. 北京:人力資源管理: