摘要:計算機語言課雖然很難學,但也有方法可循,本文從如何打好語言基礎、學會知識的遷移、訓練方法策略等方面闡述了如何學好計算機語言課。
關鍵詞:編程 計算機語言 基礎 訓練
一、如何打好語言基礎
1.學好語言基本功
學習一門語言新課程,開始都會碰到一系列的新概念、數據結構、常量變量、函數、基本語句和思想方法等等。教學生某種語言,就要踏踏實實教好本語言的特點,教好常量、變量、數據類型、表達式等基本知識。如對函數要使學生切實掌握函數的格式、功能、自變量取值范圍;對表達式要切記與數學和其他計算機語言表達式區別,突出本語言的特點;運算符號要書寫正確,括號應標記謹慎,例如:應為a/(b·c),而不能寫成a/bc;括號應配對出現,內外層關系要弄清楚。比如,在C語言教學過程中,在講解兩個變量的值交換時,一開始學生很容易使用A=B; B=A; 的語句,而不能理解為什么要引入另一變量C,使用 C=A; A=B; B=C; 的語句。筆者使用比喻法,假設A和B兩個杯子中分別放了水和酒,要將兩個杯子中的東西互換,必須引入第三個杯子。通過此比喻,學生恍然大悟,不僅容易理解了這部分內容,而且還有了繼續學習的興趣。
2.基本語句要熟練掌握
學習一門程序設計語言,對本語言程序的基本語句的格式、功能和基本使用方法的掌握顯得十分重要。如果某一環學得不扎實,會直接影響編程語言認知結構的形成。
例如,學習選擇結構語句:if...else,首先要使學習掌握格式:
if(表達式) <語句組1> else <語句組2>
然后是初步了解其功能,再通過編程實例掌握其用法。
二、學會知識的遷移
學習者在學習新知識或新技能時,總是受到先前學過的知識、技能的影響。教師在教學中若能注重遷移,很好地把握遷移方法,學生就可以舉一反三、觸類旁通,縮短學習過程。
1.數學知識認知規律能遷移到計算機編程學習
以函數的學習為例,數學函數的掌握首先要理解函數名稱、功能和格式,然后掌握自變量的取值范圍、函數值域,再掌握用法。如三角函數SIN,先給出函數的名稱,指出這是已知角(弧度)求正弦的值,自變量的取值范圍是一切實數,函數值域是閉區間[-1,1]的一切實數。同樣這樣的學習過程,我們亦可遷移到計算機語言學習上來,當我們學習各種語言的函數時,先是回顧一下我們在數學中學習函數的過程,然后把它與當前函數學習作對比,如C語言的正弦函數,它的函數名亦是sin(X),自變量、函數值的取值范圍都與數學函數沒有差別,不同點是自變量X必須用括號括起來。
2.一種語言編程的認知規律能遷移其他種語言的編程學習
學會一種語言之后,再學習另一種與之相近的語言人們就會學得輕松,易于掌握。對于計算機語言的學習也是如此,我們學習過BASIC語言之后,再學習C語言,就覺得易學、易記。因為這些語言有許多和共同特點,如基本程序結構,輸入輸出格式等。老師應著重去比較這些共同之處。同時還應指出它們的差異。如BASIC語言與C語言中的循環語句,他們的語句結構相同,一個是:
WHILE <條件>
<循環體>
WEND
另一個是:
WHILE 〈條件表達式〉
{ <循環體> }
不同地方,字面的書寫符號不同。
學習不同的語言還應指出這兩種語言的功能和作用的著重點不同,如BASIC與C語言,前者以初學者和計算為主,而后者以編寫實用程序為主。
三、訓練方法策略
在使學生掌握某部分編程基本語句或全部語句后應及時訓練學生進行編程,培養編程思維的策略。在訓練手段上應有片斷訓練、限題限時訓練以及參加考級競賽訓練。在這些訓練中會暴露出一個又一個的問題,為了回答這些問題,學生不得不進行更進一步的反省,當解決了這些問題后,又有新的問題等待著學生去解決。在如此多個循環過程中,學生的心智被充分地調動起來,漸漸地懂得了編程的實質問題。
1.片斷訓練
在教完某種基本語句后常采取片斷訓練的策略,如講完分支、循環,可安排編程解決排名次的問題。
2.限題限時訓練
學生的思維有一定的惰性,只會套書上或老師提供的例子編程,碰到問題,首先不是考慮自己盡快解決,而是依賴老師或別的同學給他(她)分析透徹了,才自己編程上機調試。碰到稍復雜或沒有現成模式的問題就束手無策。長此以往,就不能激發學生編程的靈感性,就會泯滅學生思維的火花。因而,在編程教學中,就應使學生在規定時間內完成練習的給予標準分。這樣就能培養出學生的直覺思維,培養出靈感。經過經常限題限時的訓練,就迫使學生平時下功夫,多思考。
3.課余時間訓練
程序設計課程安排課時相對較少,時間間隔較長,要達到預期目標就要求能夠合理有效地利用課余時間,引導學生在課余時間鞏固所學知識,并根據自己的興趣愛好進行拓展。比如開展程序設計的課外興趣小組,教師為他們設置中等難度的項目練習,并且予以指導。
計算機編程教學雖然很難,但是非常有意義,因為它有利于培養學生的創造性思維能力,有利于學生建立通過計算機解決問題的意識和途徑。因此,我們只要能根據學生實際,就能在很大程度上化難為易,讓每一個學生都能很好地掌握這門課程。
參考文獻:
[1] 《C程序設計》第二版,譚浩強,清華大學出版社出版
[2]《PowerBuilder6.0應用與開發》,清華大學出版社