吳粉俠,李 紅,王 維
(咸陽師范學院 計算機學院,陜西 咸陽 712000)
2001年教育部4號文件中明確要求,各高校需要在3年內(nèi)開設5%~10%的雙語教學課程。2007年進一步提出鼓勵雙語(主要指使用英漢雙語)教學工作,自此雙語教學備受關注。在我國高校中,雙語教學課程是指采用外文教材并用外語授課的課時達到課程課時的50%及其以上的課程[1]。
雙語教學是以教育國際化為背景,旨在培養(yǎng)學生利用外語學習專業(yè)知識、解決專業(yè)問題的能力。以培養(yǎng)國際型人才為目標,是高等教育發(fā)展的必然趨勢。開設雙語課程是解決高等教育國際化問題的重要途徑。
“C++程序設計”是計算機學科中一門實踐性很強的專業(yè)基礎課。既有面向過程的思想,又有面向對象的思想,同時具有泛型編程思想,在整個課程體系中下接專業(yè)基礎教育,上承專業(yè)核心能力培養(yǎng),可以為后繼專業(yè)核心課程奠定良好基礎[2]。該課程引入雙語教學優(yōu)勢如下。
C++語言中的關鍵字、控制語句等都是用英語表述的,程序結構也接近英語的自然表達。因此,良好的英語基礎有助于學生掌握C++語言的編程技術。
C++語言的大多數(shù)編譯環(huán)境者是英文的,如Qt,Visual Studio等。雖然也有漢化的,但漢化界面生澀,不好理解。編譯器的報錯信息也都是英文的,如果英語水平不好就很難理解錯誤提示信息。因此,學生具有良好的英語基礎,有助于使用編譯環(huán)境調(diào)試C++程序。
該學科的技術、理論、方法都源于西方,學科相關第一手資料、著作、期刊都是英文。閱讀英文文獻是了解該領域最新前沿動態(tài)和發(fā)展方向的重要渠道。因此計算機專業(yè)學生必須具備較高的英語水平才能滿足專業(yè)學習的需求,適應未來的發(fā)展[3]。
用C++語言編寫程序解決實際問題時也會遇到一些意想不到的錯誤,經(jīng)常需要查閱幫助文檔,最權威的幫助文檔基本都是英文。只有具備較好的英語水平才能正確理解其含義糾正錯誤。
在國家政策的推動下,各高校均積極開展雙語課程的建設。學校在制定相應政策上存在以提高英語授課比例為目標的誤區(qū),忽視了不同層次學生的英語水平差異,影響了專業(yè)知識的掌握。
目前,雙語課大多采用英文原版教材。這些教材講解詳盡、內(nèi)容豐富、頁數(shù)多,學生易產(chǎn)生畏難心理。另外,由于中西方思維方式不同,外文教材的陳述思路不太適合中國人學習,這也影響了雙語課的教學效果。
雙語課程給學生的學習帶來了兩方面的困難:(1)英文的理解;(2)C++語言的面向對象的編程思想難以理解。若不考慮學生的情況,采用雙英語教學,將會事倍功半。
由于咸陽師范學院學生英語水平較低,所以教材采用的是全英文教材、中英文雙語PPT(中文小字體呈現(xiàn))、英文板書。簡單知識采用英文講解,復雜抽象的概念和思想結合英文課本,英語講一句,中文譯一句。這樣學生既能正確理解英語,又能掌握專業(yè)核心知識、思想和技術。
清華出版的鄭莉老師的全英文C++教材的編寫思路符合中國人的思維邏輯,英語表述清晰易懂,知識體系完備,融入了軟件工程的思想。講解和學習都相對輕松。
多維互動教學模式是在開放的教育環(huán)境下,把 “教”和“學”相關的各種教學要素優(yōu)化組合,調(diào)節(jié)它們之間的內(nèi)在關系及其相互作用,調(diào)動學生的學習積極主動性,形成多角度、多層次、多方式、多主體的和諧互動,最終提高教學效果的一種全新的教學模式[4]。
在“C++程序設計”雙語課中引入多維互動教學模式的具體措施有以下7個方面。
3.3.1 學生分組以團隊形式開展教學
將學生以3~5人分組,課堂任務以小組形式開展,互相討論,互相幫助,但每個同學都得獨立完成程序任務,以達到每個學生都能掌握任務所要求的知識點。這種模式可以增強學生對知識點的理解和應用,培養(yǎng)學生的溝通能力、互助合作能力及團隊精神。
3.3.2 教師啟發(fā)引導,學生編程實現(xiàn)
在整個教學過程中,教師扮演指導者的角色。在任務開始時,教師分析問題給出初步的解決方案,并針對性地講解重難點,由學生編程實現(xiàn)。及時發(fā)現(xiàn)各小組存在的問題,幫助學生完成任務,讓學生體驗完全成任務的小成就感,增加學習的樂趣,激發(fā)學習的熱情和積極性。這種方式拉近了師生距離,增進師生的感情,實現(xiàn)有效互動。
3.3.3 任務驅動式案例教學法
任務驅動式案例教學法是將任務驅動與案例教學深度融合,以任務為載體,將項目案例與相應理論知識、基本原理有機結合,通過任務驅動,引導學習者自主學習[5]。教學過程中主要采用任務推動模式,圍繞知識點精心設計程序案例,指導學生編程實現(xiàn)。任務使用英語描述,要求學生編程使用正確的英語單詞。通過任務來組織教學,達到在做中學,學中理解,最終達到學以致用的目的。任務的表達采用規(guī)范的UML建模語言,有利于建立軟件工程的思想,類名屬性方法都是英語,有利于學生實現(xiàn)編程。所展示的任務如圖1—4所示。

圖1 任務1 Complex運算符重載

圖2 任務2 Point運算符重載
3.3.4 精心設計教學案例,調(diào)動學生的學習興趣
教學案例不僅要能涵蓋知識,而且要生動有趣,吸引學生,同時又要保證大多數(shù)同學通過努力,在課堂上就能完成任務。設計思路是把每節(jié)課的知識點設計成多個遞進小任務。例如,運算符重載與類型轉換的知識點,在2學時里設計了如圖2—4所示的3個逐層深入的案例。對于繼承與組合,教師設計了如圖4所示的畫圖程序作為案例。

圖3 任務3-Point和Complex之間的相互轉換

圖4 繼承與組合的繪圖案例
3.3.5 對學生的學習及時評價反饋。
每節(jié)課,學生都是帶著任務學習,教師對學生的任務完成情況進行總結,將寫得好的程序演示給大家,開拓學生的編程思路。為了更好地督促學生完成任務,對學生的任務打分并記入平時成績。這樣做不僅調(diào)動了學生的積極主動性,而且培養(yǎng)了學生的進取心及創(chuàng)新能力。
3.3.6 錄制微課,輔助教學
鑒于雙語講授“C++語言程序設計”給學生增加了學習難度,所以教師對類、繼承、虛函數(shù)、模板及標準模板庫STL等核心概念和方法都錄制了微視頻,以輔助學生的課后學習。
3.3.7 改革考試方式為上機考試
上機考試模式可以排除考試各環(huán)節(jié)中人為因素的影響,比如評分標準不一致等現(xiàn)象,能真正檢測學生的程序設計能力。該課程考核方式采用考試系統(tǒng)上機考試[6],有效地引起了學生對實踐的重視,實現(xiàn)了編程能力的有效檢測。
本文針對“C++程序設計”雙語課中存在的問題進行了研究和探討,并結合雙語教學實踐提出了“C++程序設計”課程雙語教學的解決方案。即:因材施教,選用適合的教材,以英語為工具語言,以激發(fā)學生自主學習能力為先導,以多維互動為手段,以提高學生程序設計能力為目標,提升利用外語學習專業(yè)知識、解決專業(yè)問題的能力。