趙榆琴
摘要:介紹了程序設(shè)計(jì)語言雙語教學(xué)模式現(xiàn)狀,分析了雙語教學(xué)優(yōu)勢(shì)和存在的問題,提出“多維”雙語教學(xué)模式。以C程序設(shè)計(jì)語言為例,對(duì)雙語教學(xué)的形式、比例和內(nèi)容進(jìn)行了設(shè)計(jì);經(jīng)過教學(xué)實(shí)踐,分析實(shí)施效果,總結(jié)了“多維”雙語教學(xué)在提高教學(xué)質(zhì)量,提升學(xué)生C語言程序設(shè)計(jì)興趣和能力方面的積極作用。
關(guān)鍵詞:雙語教學(xué);程序設(shè)計(jì)語言;教學(xué)質(zhì)量
DOIDOI:10.11907/rjdk.171166
中圖分類號(hào):G433
文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2017)006-0222-04
0 引言
國際通行的雙語教育基本要求是:在教育過程中有計(jì)劃、有系統(tǒng)地使用兩種語言作為教學(xué)媒體,使學(xué)生在整體學(xué)識(shí)、兩種語言能力以及這兩種語言所代表的文化學(xué)習(xí)及成長上,均能達(dá)到順利而自然的發(fā)展[1]。在這里,第二種語言是教學(xué)手段而不是教學(xué)內(nèi)容或科目[2]。
雙語教學(xué)的目標(biāo)具有雙重性:①對(duì)本科生開設(shè)雙語教學(xué),可以培養(yǎng)英語口語、閱讀英語教材、英語資料和英語文獻(xiàn)的能力,為進(jìn)入研究生學(xué)習(xí)打下基礎(chǔ);教師可通過雙語教學(xué),培養(yǎng)和鍛煉閱讀和撰寫英文paper的能力;②雙語教學(xué)的目的是幫助教師更好地傳輸學(xué)科知識(shí),學(xué)生更容易地接收學(xué)科知識(shí)。
1 C語言雙語教學(xué)現(xiàn)狀
計(jì)算機(jī)類課程中,最適合雙語教學(xué)的課程是計(jì)算機(jī)語言課程,學(xué)生一般最先接觸的是C語言,理工類專業(yè)課程中講授最多的也是C語言。
C語言本身就采用英語格式,這是此課程作為雙語教程的最大優(yōu)勢(shì)[2]。學(xué)習(xí)C語言語法時(shí)不需要進(jìn)行漢語翻譯,只需對(duì)其英文本意進(jìn)行直譯,這是這門課程和其它非語言類課程的最大區(qū)別,也是其開展雙語教學(xué)的主要原因。
計(jì)算機(jī)程序設(shè)計(jì)的知識(shí)源自國外,實(shí)施雙語教學(xué)勢(shì)在必行。如C語言的圣經(jīng)《The C Programming Language》,《Thinking in C》,沒有英文基礎(chǔ)也可接收知識(shí),但根本無法真正領(lǐng)會(huì)程序設(shè)計(jì)思想的精髓。因此,C語言實(shí)施雙語教學(xué),結(jié)合各種程序調(diào)試來加強(qiáng)對(duì)英文程序內(nèi)容的理解,才能引導(dǎo)學(xué)生理解C語言程序設(shè)計(jì)的語法、邏輯和算法意義。
C語言開展雙語教學(xué)已有多年,取得了一些成績,但多停留在課堂理論知識(shí)上,對(duì)以下幾個(gè)問題缺乏深入思考:①雙語教學(xué)時(shí)第二語言的比例是多少?②雙語教學(xué)中學(xué)生的英語水平和計(jì)算機(jī)水平如何?③雖然理論課采用雙語教學(xué),但實(shí)驗(yàn)環(huán)節(jié)如何理解英文的相關(guān)提示等信息?④雙語教學(xué)內(nèi)容選擇是否合理?⑤雙語教學(xué)如何設(shè)計(jì)實(shí)施?
2 C語言雙語教學(xué)設(shè)計(jì)
C語言語法和程序設(shè)計(jì)思維是學(xué)科知識(shí),雙語是手段和方法,有效利用英語服務(wù)于C語言教學(xué)對(duì)教學(xué)效果影響很大。通過對(duì)上述5個(gè)問題的深入思考,以筆者學(xué)院開設(shè)的《C程序設(shè)計(jì)》雙語課程為例,設(shè)計(jì)并實(shí)施了“多維”C語言雙語教學(xué)模式。
C語言的教學(xué)設(shè)計(jì)應(yīng)具備以下幾個(gè)基本條件:①授課教師非常熟悉雙語教學(xué)內(nèi)容,能用英語交流程序設(shè)計(jì)方法;②學(xué)生具備一定的英語聽說讀寫能力;③學(xué)生具備一定的計(jì)算機(jī)基礎(chǔ)知識(shí)。
C語言的雙語教學(xué)設(shè)計(jì)原則:①根據(jù)學(xué)生的英語能力適當(dāng)調(diào)整英語授課比例;②根據(jù)學(xué)生計(jì)算機(jī)基礎(chǔ)(背景),適當(dāng)調(diào)整英語授課比例;③根據(jù)教學(xué)內(nèi)容,精心選擇英語教學(xué)內(nèi)容;④根據(jù)學(xué)習(xí)情況適當(dāng)調(diào)整英語授課比例;⑤基本概念、句法結(jié)構(gòu)和語法結(jié)構(gòu)等使用準(zhǔn)確的英文表達(dá);⑥基本概念、句法和語法結(jié)構(gòu)的解釋和使用說明使用一定比例的漢語進(jìn)行講解;⑦設(shè)計(jì)出的程序要保證在符合C語言語法、句法的條件下,使用一定比例的英語表達(dá);⑧算法可以采用自然英語或偽代碼形式表達(dá),幫助學(xué)生用自然思維去理解;⑨使用英文表達(dá)調(diào)試程序,盡量使用英文解釋程序調(diào)試問題;⑩授課資料、教材、學(xué)生作業(yè)、實(shí)驗(yàn)指導(dǎo)、測試和考試應(yīng)保證一定比例的英語表達(dá)和一定比例的雙語表達(dá)。
C語言雙語教學(xué)設(shè)計(jì)要根據(jù)學(xué)生實(shí)際情況和教學(xué)具體內(nèi)容而定,內(nèi)容應(yīng)涵蓋C語言教學(xué)的多個(gè)方面,始終遵循“從C語言教學(xué)本身出發(fā)”的基本思想。
3 C語言“多維”雙語教學(xué)實(shí)施
C語言實(shí)施雙語教學(xué),主要從“理論基礎(chǔ)、控制結(jié)構(gòu),算法設(shè)計(jì)、程序調(diào)試和程序設(shè)計(jì)”5個(gè)維度展開。
3.1 理論基礎(chǔ)
C語言的理論基礎(chǔ)知識(shí)包括關(guān)鍵字、常量、變量、數(shù)據(jù)類型、運(yùn)算符、表達(dá)式、預(yù)處理指令和C庫函數(shù)等,這些基礎(chǔ)知識(shí)要使用準(zhǔn)確的英語來講解。例如:
在這個(gè)程序中,出現(xiàn)以下幾類基礎(chǔ)知識(shí):①int、return是關(guān)鍵字;②printf是C庫函數(shù)名;③int是數(shù)據(jù)類型;④#include
其次,分析這幾類基礎(chǔ)知識(shí):①return、include、main與英語中對(duì)應(yīng)的單詞含義幾乎一致;②int漢語是整型,是英語單詞integer的前3個(gè)字母;③printf是輸出函數(shù)的函數(shù)名,其中 “print”在英語中有打印輸出的意思,“f”是英語單詞function(函數(shù))的第一個(gè)字母;④stdio.h是一個(gè)頭文件名,其中,“std”是英語單詞standard的簡寫,“i”是英語單詞input的第一個(gè)字母,“o”是英語單詞output的第一個(gè)字母,“h”是英語單詞head的第一個(gè)字母,“.h”是文件的后綴名;⑤This is my first C program!是一個(gè)字符串,是一句英文準(zhǔn)確表達(dá)的句子;⑥\\n是一種字符常量,叫轉(zhuǎn)義字符,起“換行”的作用。
首先要記住這些基礎(chǔ)知識(shí)的含義,然后用雙語講解這些基礎(chǔ)知識(shí)的作用、用在什么地方、如何使用。值得注意的是,在雙語教學(xué)中,學(xué)生知道漢語解釋是為了容易理解,但在后續(xù)教學(xué)中,應(yīng)要求學(xué)生用準(zhǔn)確的英文表達(dá)而不是漢語表達(dá)。例如:當(dāng)學(xué)生看到、讀到或用到“int”時(shí),腦海里浮現(xiàn)的就是“int”,讀的也是“int”,用的也是“int”,而不是去翻譯它。學(xué)生理解和掌握了理論知識(shí),后續(xù)理解和掌握聲明或定義結(jié)構(gòu)、句法、語法就能水到渠成。
3.2 控制結(jié)構(gòu)
程序設(shè)計(jì)的三大控制結(jié)構(gòu)利用人們?nèi)粘I钏季S來設(shè)計(jì)程序,使得計(jì)算機(jī)能按照人類思維去運(yùn)行、計(jì)算結(jié)果。三大結(jié)構(gòu)采用雙語教學(xué)方式,有利于學(xué)生理解和掌握。
需要說明的是,這個(gè)教學(xué)內(nèi)容與生活思維完全相似,學(xué)生比較容易理解。因此,可以增加雙語教學(xué)比例,甚至采取全英文的教學(xué)模式。
3.3 算法設(shè)計(jì)
算法是程序設(shè)計(jì)之前必須考慮的問題,簡單說就是讓計(jì)算機(jī)解決問題的方法。算法的描述方法有很多種,筆者經(jīng)過多年的教學(xué)實(shí)踐發(fā)現(xiàn)偽代碼很適合初學(xué)者。偽代碼接近自然語言,便于初學(xué)者理解和掌握。在C語言雙語教學(xué)的算法設(shè)計(jì)中采用英語偽代碼更能消除算法與程序之間的距離感。
例如:設(shè)計(jì)一個(gè)能進(jìn)行多次計(jì)算的四則運(yùn)算器,直到用戶強(qiáng)制結(jié)束程序。
(1)算法的自然語言描述:首先,輸入計(jì)算用的兩個(gè)操作數(shù)和運(yùn)算符;接著判斷運(yùn)算符是哪一種(+、-、*、/),進(jìn)行四則運(yùn)算;然后輸出運(yùn)算結(jié)果;重復(fù)以上3個(gè)過程直到用戶輸入結(jié)束程序的命令。
(2)算法的英文描述:①input the expression as a+b,“a” and “ b” are operation numbers,“+”is operator;②judge the operator then select the right formula;③output the result;④repeat the three steps ahead until user input the character “N”,the program is end。
通過以上對(duì)算法的描述,特別是使用偽代碼,大大降低了算法的抽象性,能看到程序的雛形。這時(shí)學(xué)生編寫程序會(huì)覺得可以動(dòng)手,增強(qiáng)了自信心。
3.4 程序調(diào)試
學(xué)習(xí)程序設(shè)計(jì),除了學(xué)習(xí)學(xué)科知識(shí)(knowledge)外,更為重要的是計(jì)算思維(Computational Thinking)和編程技能(Computational Skills)訓(xùn)練。《C程序設(shè)計(jì)》實(shí)驗(yàn)課非常重要,漢化的C語言編譯系統(tǒng)存在缺陷,學(xué)生應(yīng)使用全英文版的VC++6.0調(diào)試程序。調(diào)試程序時(shí)得到的警告、錯(cuò)誤提示和調(diào)試方法全部用準(zhǔn)確的英文描述。如圖1為程序改錯(cuò)題調(diào)試界面。
程序調(diào)試過程中,要求學(xué)生填寫表1。
調(diào)試程序是對(duì)程序結(jié)構(gòu)、邏輯問題、語法問題和算法進(jìn)行調(diào)整和測試,經(jīng)過閱讀、調(diào)試和改錯(cuò)訓(xùn)練,學(xué)生對(duì)全英文的錯(cuò)誤和警告提示理解力提高,調(diào)試程序也變得容易。
3.5 程序設(shè)計(jì)
程序設(shè)計(jì)是一個(gè)綜合學(xué)科知識(shí)和編程技能的過程,學(xué)生要依靠所獲得的知識(shí)和技能才能完成此項(xiàng)工作。首先給出程序結(jié)構(gòu),然后用英文注釋說明程序的某個(gè)部分應(yīng)該實(shí)現(xiàn)哪些內(nèi)容,最后再逐漸把程序補(bǔ)充完整。
4 C語言“多維”雙語教學(xué)效果
C語言“多維”雙語教學(xué)實(shí)施后,在以下方面取得成效:①學(xué)生對(duì)理論知識(shí)掌握比以往牢靠,特別體現(xiàn)在語法和句法的掌握上,鮮有學(xué)生在程序設(shè)計(jì)時(shí)出現(xiàn)語法和句法的書寫錯(cuò)誤;②學(xué)生對(duì)三大結(jié)構(gòu)的理解和實(shí)現(xiàn)比以前清晰;③利用英語偽代碼進(jìn)行算法設(shè)計(jì),為學(xué)生從算法到程序的過渡建立了直觀的橋梁,消除了對(duì)算法的恐懼性和對(duì)程序的神秘性;④從實(shí)驗(yàn)課完成情況看,學(xué)生會(huì)優(yōu)先做程序改錯(cuò)題,再做程序填空題和程序設(shè)計(jì)題。在程序調(diào)試過程中,對(duì)很多錯(cuò)誤和警告都能馬上改正;⑤學(xué)生進(jìn)行程序設(shè)計(jì)不一定一次成功,但通過多次重復(fù)思考和注釋的過程,可以做到“設(shè)計(jì)一點(diǎn)、調(diào)試一點(diǎn)、完成一點(diǎn)”,最終逐步實(shí)現(xiàn)整個(gè)程序。
5 C語言“多維”雙語教學(xué)總結(jié)和展望
筆者學(xué)校2014級(jí)和2105級(jí)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)學(xué)生使用同一份試卷考試,2014級(jí)未使用雙語教學(xué),2015級(jí)使用“多維”雙語教學(xué),成績統(tǒng)計(jì)情況如圖2~圖3所示,成績頻數(shù)分布見表2、表3。
改革是為了提高教學(xué)質(zhì)量,將雙語教學(xué)應(yīng)用于C語言是課程的客觀需要。但是,在雙語教學(xué)中如何體現(xiàn)“從C語言教學(xué)本身出發(fā)”是應(yīng)該不斷探索的問題。C語言“多維”雙語教學(xué)模式可以移植到其它程序設(shè)計(jì)語言中,因?yàn)樵O(shè)計(jì)的5個(gè)維度是互相支持、互相補(bǔ)充的,體現(xiàn)了“循序漸進(jìn)學(xué)習(xí)知識(shí),由易到難訓(xùn)練技能”的程序設(shè)計(jì)學(xué)習(xí)方法。 “多維”雙語教學(xué)模式還可以應(yīng)用于計(jì)算機(jī)程序設(shè)計(jì)類或其它課程教學(xué),以提高教學(xué)質(zhì)量。
參考文獻(xiàn):
[1]朱小艷,白景華.軟件學(xué)院C語言雙語教學(xué)探討[J].電腦知識(shí)與技術(shù),2011,22(7):156-159.
[2]洪炎,王仲根.C 語言雙語教學(xué)研究[J].科技信息,2010(25):99-103.
[3]趙艷紅,邵定宏.計(jì)算機(jī)專業(yè)課程雙語教學(xué)探究[J].中國大學(xué)教學(xué),2005(4):25-26.
[4]李忠娟.“C語言程序設(shè)計(jì)”雙語教學(xué)探討[J].廣東工業(yè)大學(xué)學(xué)報(bào):社會(huì)科學(xué)版,2005,5(9):129-130.
(責(zé)任編輯:杜能鋼)