張光妲
摘 要:高級語言程序設計課程是大多數高等院校非計算機專業學生必修的一門計算機基礎課程。該文著重分析學生在學習計算機基礎高級語言程序設計課程中存在的問題,進而通過理論教學設計和實踐教學設計來進行計算思維教學設計,探索如何將計算思維引入到高級語言程序設計課程中,使學生能夠按照計算機科學家的思維方式來考慮問題。高級語言程序設計課程中培養計算思維能力,提高學生獨立分析問題和解決問題的意識、方法和能力,使學生能夠從計算機的視角來對問題進行分析和解決。
關鍵詞:計算機基礎 高級語言 計算思維 教學內容 實施方法
中圖分類號:G64 文獻標識碼:A 文章編號:1672-3791(2014)12(a)-0167-01
高級語言程序設計是計算機基礎教育課程之一,通過該課程的學習,可以培養學生獨立分析問題、解決問題的意識、方法和能力,鍛煉學生的邏輯思維能力,因此培養學生計算思維的能力必然成為該課程的重中之重。
自從2006年3月美國卡內基·梅隆大學計算機科學系周以真[1]教授提出“計算思維”后,我國教育部高等學校計算機基礎課程教學指導委員會多次組織各高等院校進行計算機基礎教育學術研究、實踐探索以及交流研討活動,來探討計算思維的形式和內涵。并于2010年7月“九校聯盟C9計算機基礎課程研討會”上確定以培養學生“計算思維”能力為計算機基礎教育的核心任務,建設計算機基礎課程體系和教學內容[2]。該文針對計算機基礎高級語言課程中存在的問題,探索如何將計算思維引入到高級語言課程中,以提高學生能夠從計算機的視角來對問題進行分析和解決。
1 計算機基礎高級語言課程教學存在的問題
高級語言程序設計課程是大學不同專業新生進入高校后接觸的第一門程序設計語言課程,不同高校開設課程不同,大多開設C語言程序設計、Visual Basic程序設計、C++語言程序設計或Java語言程序設計,這些課程對于訓練學生的思維能力和解決問題能力起著重要的作用。針對該校開設這幾門課程的教學現狀,通過對學生和教師進行調研與分析,發現存在如下主要問題。
1.1 學生對課程學習目的不明確
通過對非計算機專業學生進行調查,雖然教師在首節課上詳細說明了該門課程的意義和開設的目的,但大多數學生對于為什么學習高級語言程序設計比較茫然,認為與他們的專業沒有太大關系,以后工作也不需要計算機編程,對該課程的學習缺乏動力。
1.2 現有教學方式過多依賴課本
在授課過程中由于受教材的影響,往往教學內容的前一部分都是在講語言和語法知識,學生無法看到一個完整的程序,無法了解這些繁瑣、復雜的語法與編程的關系。教師在講解時學生都能聽懂,但獨立編程解決問題時,就會變得一籌莫展。
1.3 忽略設計方法的講授
學生在學習的過程中過多地注重語言本身的學習,忽略了程序設計方法的學習,對知識的掌握只知其然而不知所以然。教師在授課過程中為了能夠讓學生聽懂、理解課程內容,只能講授語法,不敢講設計方法,擔心學生聽不懂、不會,導致課程的教學內容重心轉向了語法的講授。
1.4 忽略在實踐中鍛煉思維方式
學生在實踐過程往往注重程序運行結果,忽略程序設計過程;注重程序編碼,忽略程序設計的算法,不注重對問題求解過程的總結。作為一門實踐性很強的課程來說,必須通過實踐才能培養學生對程序設計的思維能力。
2 計算思維教學設計
作為人類三大科學思維之一的計算思維,涉及到運用計算機科學的基礎概念去求解問題、設計系統和理解人類行為[3],目前,計算思維的培養已經成為當今國內外高校研究的熱點。在深入的研究和學習“九校聯盟C9計算機基礎教學發展戰略聯合聲明”的核心要點后,明確了圍繞計算思維能力培養的程序設計課程的教學,應體現程序設計方法,而不是語言的本身,能夠讓學生通過實踐的練習感受和領悟利用計算機對問題求解的基本方法和思維模式[4],以便更好地應用計算機技術,推動社會各領域的發展與提高。因此,將計算思維引入計算機基礎高級語言課程教學中,貫穿計算思維的教學內容和教學方法,重點關注計算思維中關于問題抽象和問題分解能力的培養[5],提高學生對解決實際問題的基本能力和計算思維能力。
2.1 理論教學設計
理論教學內容設計將理論知識分為基本語句、基本應用、理論提升三個部分。基本語句部分重點突出基本數據類型與程序基本語句結構,以案例教學方式為切入點,通過問題引出語法知識點的學習,并對語法要點進行講解。基本應用部分重點突出對問題的分析與解決,理解與掌握算法構造思維的方法。
理論提升部分以程序設計方法為切入點,強化程序設計能力和思維能力的培養,通過綜合性項目訓練的方法,以技能訓練為主線提出關鍵技術的要點和課程設計的要求,采用個人或小組形式,對問題進行分析、算法框架設計、程序代碼設計、單元測試等一系列過程,讓學生體會計算思維,能夠將計算思維應用到實際中對問題進行分析和解決。
2.2 實踐教學設計
實踐教學是與理論教學并重的教學環節。實踐教學主要采用“驗證教材示例-設計簡單程序-設計綜合型程序”的循序漸進、由淺入深、逐步提高的方法。
首先,指導學生驗證教材示例,加強對基本知識的理解,模仿示例程序的解題方法。驗證型實驗主要是指導學生驗證已經學過的高級語言基本知識,要求學生在根據課堂講授的解題思路完成教材示例程序的編寫、調試基礎上,指導學生設計一些相對簡單的程序,使用已經學習的方法解決問題,培養計算思維途徑,體會示例程序解決問題的方法和步驟。
其次,在完成驗證型實驗內容的能力。要求學生能根據題目要求,獨立分析問題、解決問題。
最后,要求學生獨立完成一些綜合型設計題目,進一步培養學生使用計算思維方法求解問題的能力。綜合型設計題目要求學生充分利用課外時間盡量獨立思考完成,加強計算思維能力的培養。
3 結語
計算思維的形成需要一個長期的過程,將計算思維引入到高級語言程序設計課程教學中,不僅是程序設計方法的一個起點,也是一個發展方向。雖然,我們在計算機基礎教學中通過對教學內容、教學方法的改革來培養學生計算思維能力,但仍然還有許多方面需要改進或完善,尤其對不同層次的學生如何培養計算思維能力,如何更能體現多元化考核評價,這些都需要在教學過程中持續地研究和實踐應用。
參考文獻
[1] Jeannette M.Wing.ComputationalThinking[J].Communications of the ACM,2006,49(3):33-35.
[2] 何欽銘,陸漢權,馮博琴.計算機基礎教學核心任務是計算思維能力的培養:《九校聯盟C9計算機基礎教學發展戰略聯合聲明》解讀[J].中國大學教學,2010(9).
[3] 吳文虎.我怎么講好“程序設計基礎”這門課[J].中國大學教學,2011(12).
[4] 黃麗達,陳湘濤.將計算思維融入程序設計課程的教學方法研究[J].計算機教育,2014(3).
[5] 董衛軍,邢為民,索琦.以計算思維為導向的程序設計課程改革與實踐[J].工業和信息化教育,2013(6).endprint