引論:我們為您整理了13篇計算機程序設計論文范文,供您借鑒以豐富您的創作。它們是您寫作時的寶貴資源,期望它們能夠激發您的創作靈感,讓您的文章更具深度。
篇1
為了提高VisualBasic程序設計的實用性,增強學生學以致用的能力,需要將該門課程與學生所學專業有機的結合在一起,這樣能夠使學生的學習興趣更加濃厚,提高學習熱情。以交通運輸專業為例,課程開展至圖形圖像的使用時,可以選取紅綠燈變換例題作為學生的操作案例,如圖2所示。在這個案例中,與交通專業的專業知識也許還有一定的差距,但這樣一個簡單的實例足以吸引學生的注意力,控件要求也比較簡單,代碼結構并不復雜,但是需要提醒學生注意的是需要對于Image3控件需要添加具有3個元素的控件數組,來存儲紅、黃、綠三種顏色。類似的案例教師可以通過網絡搜索或圖書資料等多種方法搜集,難度不能太大,如果太復雜,反而會影響學生學習的積極性,以上就是對于非專業學生,將案例教學法應用于理論教學中的一些建議。
篇2
實驗對論文作者所授課的廣西師范大學物理教育專業4屆5個班本科生,其中1997級81人、1999級78人、2000級65人、2001級1班59人、2001級2班55人,選取大學一年級的力學、熱學的期考成績,力熱課程開設之后的計算機程序設計課程的段考、期考成績。利用相關系數法反映計算機程序設計課程成績與力學、熱學課程成績之間線性關系的密切程度[7,8]。
3實驗結果
分析所選取的計算機程序設計課程成績比例分布,考慮優秀、不及格兩端的學生人數相對較少,進行相關分析的誤差較大,而良好、中等、及格分數段的學生人數較多,因此將分數S分為優良分數段(S≥80)、中等分數段(70≤S<80)、及格與不及格分數段(S<70)三段,三段中的學生人數相差不大,分別計算計算機程序設計課程成績全部、優良分數段、中等分數段、及格與不及格分數段與力學、熱學課程相對應成績的相關系數,結果見表1、表2。可以看出,表中所有相關系數均為正值,除個別外主要分布在0.40~0.80之間,絕大部分相關系數均大于0.45,大于0.8的相關系數很少,沒有大于0.9的相關系數,說明力學、熱學課程成績對計算機程序設計課程成績有一定的影響,但影響并不是特別顯著,有一定的正相關性,但相關性并不是特別高,計算機程序設計課程成績還受其它因素的綜合影響。
篇3
計算機專業程序設計課程實踐教學主要包括上機實驗、綜合練習、課程設計、軟件開發實訓等幾個方面。上機實驗是最基本的實踐教學,由任課教師根據理論教學的具體進度,設置一些簡單的實驗,要求學生在規定時間內完成,通過這些實驗加強學生對理論知識的理解和掌握。綜合練習一般在經歷了一定的學習階段之后,任課教師根據現階段學生的學習情況,結合日常生活、工作中面臨的實際問題,設置一些難度較小的綜合性練習題,要求學生在規定的時間內進行調查分析,然后應用所學知識解決問題。綜合練習主要側重某一方面具體知識的應用。課程設計是在本門課程學習完畢后,任課老師根據教學大綱的要求,結合課程的特點和實際應用,設置一些難度適中、綜合性強的課題,要求學生按要求完成課題任務。課程設計主要考查學生對知識綜合運用的能力,培養學生利用所學知識來分析問題、解決問題的能力。軟件開發實訓則是通過實際軟件項目來提高學生的職業綜合技能。計算機程序設計實踐教學都采取由淺入深的原則進行,其過程為:上機實驗綜合練習課程設計軟件開發實訓。
2計算機專業程序設計課程實踐教學的重要性
2.1加強實踐教學是實現計算機專業程序設計課程教學目標的要求計算機程序設計課程的主要目的是培養學生的程序基本開發能力、程序代碼編寫能力和程序調試應用能力,重點培養學生的算法應用分析能力和數據綜合處理能力。其主要任務是通過日常教學,使學生掌握程序設計的一般方法和程序設計的具體過程,掌握計算機程序設計語言的語言特征,具備程序設計師的基礎應用能力。在教學過程中,任課教師應以人才培養為目標,側重編程綜合應用能力的培養,通過具體的實踐教學來提高學生的職業技能。
2.2實踐教學是提高程序設計課程教學質量的重要手段實踐教學是培養學生動手能力的重要手段,是提高學生的動手能力和職業技能最有效的方式,是對學生理論知識掌握程度的檢驗。“知識來源于實踐”,“實踐是檢驗真理的唯一標準”,計算機程序設計課程的理論知識應通過編程實踐體現,通過具體的程序設計案例和實際編程來提高學生對理論知識的掌握,學生
綜合編程能力的強弱是檢驗計算機專業程序設計課程教學質量的基本標準。
3成人教育業程序設計課程實踐教學存在的問題
我國成人教育業程序設計課程的實踐教學存在問題的體現在下述方面:①實踐設施不足,教學條件不完善;②對教學認識不足,實踐教學不受重視;③實踐教學方法陳舊,考核方式單一。 轉貼于
4積極探索,構建合理的程序設計課程實踐教學模式
4.1實踐教學要符合教學目標的需要計算機專業程序設計課程實踐教學必須緊緊圍繞專業培養目標、人才培養規格進行。要結合專業特點更新教學內容,調整實踐教學內容、方法和手段。實踐教學內容的更新,要注重對學生編程綜合能力的培養和創新能力的培養,要對已有的實踐教學內容進行篩選、整合,改變單一的演示性、驗證性實驗,增加綜合性、設計性、創新性實驗,要充分利用計算機課程的教學特征,提高實踐教學效果。
4.2以社會就業需求為主導,開展多種形式的實踐教學程序設計課程實踐教學主要有上機實驗、課程章節綜合練習、大作業、課程設計、軟件項目實訓、校外軟件基地實習、軟件合作企業頂崗實習、校內軟件課題研發等。其中實訓、實習和研發都是采用“真題真做”。通過上述這些實踐過程,學生的程序設計綜合應用能力和軟件開發能力都能得到良好的鍛煉。
4.3程序設計課程實踐教學設計一般要求定教學的具體內容。大多數情形下,采用實例教學效果比較明顯,通過實例的演練促進學生對知識的掌握。實例式實踐教學設計一般應包括教學目標、課時要求、教學組織、教學內容、實踐方式、實踐總結、成績評定等幾部分內容。在設計實踐教學內容的過程中,應做好三個方面工作。一是要結合學生實際情況,盡量體現知識性、實用性,激發學生的靈感和創造欲,使學生對實踐內容感興趣,以充分調動學生的學習積極性和主觀能動性,促進學生積極創新,完成實踐內容。二是應注重理論教學與實踐教學相結合,保證實踐教學與理論課教學相適應,加深學生對基本理論、基本知識的理解和掌握。三是保證實踐題目難度和工作量適中,學生通過自己的努力,可以在規定時間內完成實踐任務,實踐方式可以靈活多變。
篇4
為適應新的形勢,我院明確了計算機軟件人才的定位:培養應用型軟件人才。這個培養目標既是從獨立學院學生的自身條件出發,又符合當前社會對計算機軟件人才的需求。在這個培養目標的指導下,我們在計算機程序設計課程教學上進行了大膽嘗試,修訂了教學大綱,增加、刪除了部分教學內容,并將新的教學模式與教學方法引入計算機基礎教學中,取得了較好的效果。
1存在的問題
已往的教學經驗表明,學生在學習程序設計類課程時最難的地方不是掌握某種程序設計語言的語法規范,而是掌握程序設計的基本方法。
程序設計語言的語法規范是死的,并且與任何一種自然語言相比,程序設計語言的語法規范更簡單規則。因此,只要學生掌握好了程序設計的基本方法,再花費一定的時間掌握某一種程序設計語言的語法規范,就能用該程序設計語言設計程序,甚至達到精通水平。
具體而言,目前教學中存在的主要問題有:教學內容與教材組織過于陳舊;教學目標沒有反映新形勢的需要。其典型表現在:程序設計方法強調不夠,抽象思維能力培養不足;某些程序設計中重要的概念講授力度不足,如庫與接口、UML建模以及目前流行的軟件開發方法等,學生在實際的軟件開發中無法滿足企業的需要。
2構建程序設計基礎培養四階段課程體系
大多數獨立學院的本科計算機軟件專業現行的課程設計,與普通的一本、二本院校相比相差無幾,沒有突出獨立學院的特點,也沒有明確獨立學院的培養目標。因此,對獨立學院計算機軟件專業課程體系進行改革迫在眉睫。我院以“計算機導論與C語言程序設計”為公共基礎的程序邏輯訓練、以“高級程序設計技術”為核心的程序設計方法培養、以“數據結構”為支持的數據與程序抽象能力培養、以“C++程序設計”貫穿面向對象程序設計新理念,并在大三大四高年級開設了Java、Linux、UML建模等程序設計類選修課程,形成了“基礎訓練+方法培養+提高能力+拓展層面+實踐應用”的程序設計教學新模式[1],在強化程序設計能力培養過程中發揮了重要的作用。
3提出并實施四層次軟件人才培養新模式
我院以課程體系為基礎,提出并實施了“基礎訓練+提高能力+拓展層面+實踐運用”的四層次軟件人才培養模式。
3.1基礎訓練
程序設計基礎訓練課程開設在大學一年級,是大學階段系統認識計算機、應用計算機的入門課程,通過程序設計的詞法、語法及使用方法的學習,要求學生掌握、體會計算機解決問題的基本技能。在基礎訓練中,通過對計算機導論課程的學習,讓學生認識并能熟練運用計算機編寫程序;通過對C語言程序設計課程的學習,讓學生初步掌握程序設計的方法,訓練程序設計中的邏輯思維。
3.2能力提高
程序設計能力提高課程開設在二年級,主要從兩個方面提高學生的程序設計能力:一是高級程序設計技術課程,重點學習典型的程序設計方法技術,便于學生系統地學習并掌握程序設計方法技術。二是數據結構課程,通過構造性思維的訓練,重點突出數據抽象與程序抽象能力的培養,讓學生在基礎訓練階段之后能更深入地理解程序設計的概念。
3.3層面拓展
主要以市場需求為基礎,包括工具類別與應用環境的拓展,以選修課形式開設在三、四年級。在具有良好C程序設計能力基礎上,展開其他程序設計工具層面,如開設Java、VC++、VB等程序設計類選修課程,增強學生掌握新工具,舉一反三的能力。隨著我國經濟發展,國外市場份額不斷增加,熟悉和使用Unix環境已成為計算機軟件專業應當掌握的重要技術,開設Unix環境編程和Linux程序設計等課程,將拓展應用環境,提高學生適應新環境的程序設計能力。
3.4實踐應用
自2006年以來,我院就加大了程序設計課程中的實踐課時比例,實踐課時占到總學時的1/2或1/3,每門實踐課都單獨安排了實踐課老師,指導學生更好地進行實踐。在實踐課設計中,我們既重視學生理論知識的鞏固,又注重其解決實際問題能力的培養,因此,我們把實驗自下而上分為知識層、應用層和綜合層3個層次。
知識層注重對知識的理解和掌握,數據結構、數據庫原理和Java程序設計等理論課增設了相應的課程設計,課程設計的主要內容是:按軟件企業先進的項目管理和開發模式,以“項目驅動”進行軟件系統開發的實訓。應用層重點在于鞏固與應用,學生在校期間參加課外興趣小組或在畢業論文設計中,大部分學生都能使用VC++做系統級深層次應用。綜合層則關注綜合與創新,學校鼓勵學生參加大型的綜合性IT比賽,如ITAT、大學生挑戰者杯創業大賽等。
3.5創造性思維能力的強化
計算機程序設計能力,對計算機專業學生的知識結構、技能的提高和智力的開發變得越來越重要,技能培養的重要程度決不亞于知識傳授。對程序設計能力的提高來講,編程序不難,編好程序不易。質的飛躍來自量的積累、艱苦的磨煉,所以良好的專業技能和創造性思維培養的關鍵在于實踐。程序設計是高強度的腦力勞動,是創造性的藝術,只有提高了科學思維,學會了程序設計的真本領,才會將知識與技術變成能力,應用自如。
3.5.1案例驅動教學:興趣引導
針對獨立學院學生思維靈活但學習自覺性較差的特點,我們采用案例教學法,避免了傳統填鴨式教學方法的呆板,通過實例演示,讓學生對所學知識產生興趣,有了一定的感性認識之后,再提升到理論高度,循序漸進地掌握知識。經過多次教學的探索,總結出重點講授解題思路、算法設計及編程構思,突出上機訓練,在編寫程序過程中讓學生自己進行探索性的學習,程序設計中的成果能極大地增加學生的成就感、培養學生程序設計的興趣,并達到更加牢靠地鞏固理論知識的目的。好的程序設計案例所采用的程序設計方法教會學生用適當的語言清晰地表達其思考過程。
3.5.2指導―大運動量實踐―反饋訓練:加強創造性思維培養
數據結構[2]的學習過程,是進行復雜程序設計的訓練過程。技能培養的重要程度不亞于知識傳授。難點在于讓學生理解,習慣算法構造思維方法。針對數據結構技術性與綜合性較突出的特點,我們提出并實施了“指導―大運動量實踐―反饋訓練”教學法。通過作業練習、課程實習、課程設計3個環節實現實踐過程,前者偏重于對課程內容的理解,后者側重于軟件設計綜合訓練,促進了專業學生邏輯抽象能力和創新能力的培養。
3.5.3項目訓練:提高應用能力
通過“項目訓練”[3]方法,我們提出課程設計規范要求,突出關鍵技術要點,貫穿基本技能訓練主線,精心設計綜合性實驗,體現加強實踐能力培養的重要思路。數據結構課程設計時進行軟件開發綜合訓練的第一門課,通過選用具有一定實用性的綜合題目,采用學生個人進行和小組合作的方式,通過問題分析、總體結構設計、用戶界面設計、程序設計基本技能和技術的一系列過程,培養學生動手實踐、合作研究、協作開發大型軟件項目的能力,培養學生采用軟件工程正規方法進行設計與實現,為專業技能訓練奠定了基礎。“項目訓練”方式將學生引入具體的項目研發,使學生有更多的主動學習機會,培養了科研能力。
3.5.4提高學生的興趣與創新能力
競賽等多種活動為學生提供了展現程序設計能力的舞臺,激發了學生學習的主動性。我們已連續3年開展全校“電腦文化節”、“網頁設計大賽”、“Flash競賽”、“計算機知識競賽”;學生參加省級、國家級數學建模比賽,6人次獲國家級獎勵,20人次獲得省級獎勵;學生在程序設計大賽中取得優異成績,獲得多項獎勵,3人次獲ITAT國家級獎,多人次獲省大學生挑戰杯一等獎。
4結語
計算機課程改革勢在必行,特別是對于獨立學院來說,更是迫在眉睫。改革的成功與否將直接關系到學生以后的就業。在進行計算機課程改革的基礎上,我們針對軟件人才的培養,提出程序設計教學的新模式和以設計為中心的能力培養新方法。作為一種有益的嘗試,新的課程體系通過一種有趣的、面目可親的方式向學生說明了創造性思維能力在程序設計中起到的重要作用。
參考文獻:
[1] 翟玉慶,鄧建明. 計算機科學研究型人才培養模式的探討與實踐[J]. 計算機教育,2005(1):31-33.
[2] 耿國華. 數據結構[M]. 北京:高等教育出版社,2007.
[3] 王志英,寧洪,戴葵. 強化計算機專業實踐教學[C]//第七屆全國計算機系系主任論壇論文集. 北京:高等教育出版社, 2004:37.
Reform of Computer Courses and Training of Software Personnel in Independent Colleges
LIU Ya, TAN Qian-mao, ZHOU Li
篇5
Teaching Reform in Computer Program Curriculum
Wu Wenyun,Deng Yaming
(Hunan Biological and Electromechanical Polytechnic,Changsha410127)
Abstract:How to do a good job teaching computer program is the teachers embarrassing question.In this paper the author many years teaching experience,teaching on the characteristics of computer programs, teaching problems,reform needs of teaching and teaching methods to make plain the reform of areas for reference.
Keywords:Computer language;Logic;Abstract;Process;Object
一、計算機程序課程教學的特點
計算機語言具有很強的理論性、抽象性,學生學習起來難度大,很難激起他們的學習積極性;并且計算機語言發展速度非???種類繁多,并且都有各自的適用范圍?;诟鱾€學校的實際情況,課堂教學內容也遠遠滯后于計算機發展速度,只能將那些具有代表性的語言(面向過程程序設計語言如c語言、面向對象程序設計語言如C++等)引入到教學課堂。因此,搞好計算機程序課程教學難度很大,如何上好計算機語言課程也是大家都在探求的問題。
二、目前計算機程序課程教學中存在的問題
(一)教學方法存在有問題
在計算機程序的教學過程中,傳統的教法是按照教材編排的順序講授,即先介紹一條條語句及語言的語法規則,然后做適當的練習和實訓。這種傳統的教學方法存在以下幾方面的問題:
1.堆積的語法規則和語句學生很難在短時間內消化;
2.學生不能明確課程的學習目標和方向;
3.按步就班的教學順序會導致學生的厭學情緒;
4.達不到預期的教學效果。
(二)計算機程序課程教學中存在的客觀問題
實際中的語言程序課程教學又存在幾大棘手問題:
1.眾多的語言規則讓初學者望而生畏;
2.靈活多變的使用方法又令人捉摸不透;
3.課堂講授時間非常短暫,所學知識得不到及時鞏固;
4.學生不好的學習態度:學習思維、行為懶惰。
基于以上存在的問題,計算機程序課程教學改革勢在必行。我們在教學中應該有的放矢,不斷探索新的教學理念和方法。
三、教學改革方法
(一)突破傳統的思維方法,根據市場人才培養需求確定課程目標體系
1.認知目標:通過項目實踐,掌握程序、程序設計的基本概念、程序設計思路與方法;
2.能力目標:小組合作或獨立操作,簡潔明快,易于識別,寓意準確,內涵豐富,特征明顯,編寫精細的應用程序;
3.情感態度目標:培養學生的學習情趣,通過觀察,實踐,感受成就感,設計感,空間感,體驗程序設計的樂趣。
(二)精心選取教學內容
課程教學內容可以模擬一個軟件公司的設計部門,以一個普通的設計人員在工作中所遇到的實際問題為主線,將客戶的要求轉化為實際的任務,要求學生解決。整個教學過程共模擬若干個工作場景,設計教學過程于工作(生產)過程中的職場環境,將課程教學內容和要求都融入到這些案例中。
(三)認真設計并精心組織實施教學過程
本課程基于案例模擬真實公司環境的情景下,以項目案例驅動學生動手操作,進而對項目中的知識點進行總結。具體內容包括:
1.實訓項目:可根據課程教學需要來確定
2.實訓目標:掌握模塊結構設計、面向對象程序設計及程序設計風格,掌握程序基本結構設計及實現方法。
3.基本做法
a參與人員:全體學生(分組)
b實訓地點:教室+專業機房
c實訓途徑:設計+上機操作
4.實施步驟
策劃:情景引出―明確任務―教師引導分析任務,設計討論具體的解決方案。(由于學生初學,對代碼設計的掌握還沒有達到游刃有余的狀態,所以前期以教師引導,幫助設計解決方案為主。后期可減少策劃時間,將實施時間延長,讓學生自由發揮)
實施:事前要求學生分組設計模塊流程圖,設計實施方案,動手設計代碼,完成項目,鞏固知識點。(巡查學生的掌握程度,對實施過程中出現的問題進行輔導)
總結:小組互評設計的優劣
a緊扣實訓目標,總結達標程度。
b思考與互動:你學會了這個實訓項目,對你的畢業論文/設計,職業資格證書考試有什么幫助?
(5)課程評價
a教學效果考試方式
平時成績:考察學生的學習態度(20%)
學生自評:緊扣實訓目標,總結項目達標程度(20%)
老師評價:理論考試和實訓評價(60%)
b教學效果評價:
i組織學生參加軟件水平考試的合格率
ii畢業生在相關行業就業情況:畢業生就業信息反饋獲取數據
四、教學改革過程中應該注意的問題
(一)注重學生計算機思維的培養
在講課中,應集中精力對章節的知識結構進行詳細闡述、對所要解決的實際問題進行深入剖析,不應花太多的時間放在對語句語法的過多講解。當遇到實際編程時,需積極引導學生把“要想干什么”的問題,直接轉化為“要解決什么”的問題。當問題確定以后,必須選擇正確的算法。當然,計算機編程中的算法和數學中的算法存在很大區別,需要教師對學生們的計算機思維進行長期而有針對性的訓練和培養。
(二)啟發式教學激發學習主動性
計算機語言教學的關鍵是培養學生的編程思維,我們可以大膽采用啟發式教學,引導學生盡快明確編程思路,掌握基本編程方法。在課堂上,可以嘗試讓學生自己去編程實現,教師只扮演“打字員”的角色,直接把內容輸入到語言環境中,一邊輸入一邊和大家交流,如果實在有困難,教師停下來再加以詳細分析,直到程序編譯、運行和顯示出正確結果。啟發式教學很容易讓學生掌握程序設計的完整過程,也可以大大提高我們授課的效率。
(三)抓住重點、化解難點
講授重點內容時,應放慢速度、加重語氣,從而吸引學生的注意力。當遇到難點時,善于化解,把問題逐漸細化,所有小問題解決了,難點自然就解決了。
(四)強化實踐
計算機語言的實踐就是上機編程,是培養學生綜合運用相關知識解決問題的重要途徑,也是我們了解教學反饋信息的直接渠道。只有親自動手、親自實踐,才能真正體會到語言編程的樂趣,才能發現自己的智慧閃光點。通過上機練習也可以進一步加深對理論知識的掌握,也將有利于培養學生的創造思維、獨立分析問題和解決問題的能力以及培養學生實際編程的能力。需要強調一點,實驗內容安排上應由淺入深,開始時給出引導性實例,后期提出問題,讓學生分組自主發揮,教師抽空進行總結講解,這樣更能激發他們自主學習的主動性和積極性。
(五)搞好總結
課堂教學以后,授課教師特別年青教師多寫寫教學心得體會,多回憶回憶課堂情況,多和授課對象交流反饋,成功的有哪些,不足的有哪些,以后就能做到有的放矢,揚長避短,更好更快地提高我們教學能力和業務素質。
總之,要教好計算機程序課程,不能按照單一的“黑板―書本”教學模式,應大膽進行課程教學改革,采用豐富多彩、滿足學生需要的教學模式,精心設計并認真把握各個教學環節。只有如此,教學質量才會有本質的提升。
參考文獻:
[1]吳振峰.信息技術基礎,北京理工大學出版社,2001,9
[2]彭邵東.信息技術教育研究,湖南師范大學出版社,2002,6
篇6
文章編號:1004-4914(2014)08-252-02
引言
計算機基礎課程是非計算機專業本科生必修的公共基礎課,在公共基礎教育平臺和學生的基礎教育中占有重要的地位。計算機基礎教育課程包括《大學計算機基礎》課程和《計算機程序設計基礎》課程。為加強計算機基礎教育的針對性,更好地服務于專業學習,建立了“1+X”的課程體系?!洞髮W計算機基礎》是“1+X”課程體系中的“1”,其教學內容豐富、受眾面廣、教學成效顯著;《計算機程序設計基礎》是“1+X”課程體系中的“X”,根據不同專業需求,開設不同的程序設計語言。然而如何能使不同專業的學生更好地學習和接受計算機能力,將“課程服務專業”的思想引入到教學當中,是教學改革的重點也是難點。
一、課程服務專業思想的引入
計算機基礎教學的目標是為非計算機專業學生提供計算機知識、能力與素質方面的教育,培養非計算機專業的本科生掌握一定的計算機基礎知識、技術與方法,能夠利用計算機進行學習、工作和生活,適應信息化社會的發展,并在此基礎上,培養學生利用計算機解決本專業領域中問題的意識與能力。
進入21世紀以來,互聯網技術的發展和應用深度滲透到生活的各個領域,各個專業對信息處理的終生需求和計算機網絡應用的終生需求,使得計算機基礎教育的范圍不斷擴大,與之相對應的是如何將這些需求反映到計算機基礎教育的課程中。
1.充分考慮各專業差別,開展計算機基礎教學。根據各專業的不同需求和學生的自身發展需求以及國家信息化的要求,筆者所在的黑龍江科技大學為不同專業的學生開設了《計算機程序設計基礎(VB)》課程和《計算機程序設計基礎(C)》課程。例如,對電子信息類專業,開設《計算機程序設計基礎(C)》課程;對信息管理類專業,開設《計算機程序設計基礎(VB)》課程。
2.理念先進,服務人才培養定位,教學目標明確。以我校應用型人才培養為目標,在教學過程中,始終堅持“以學生為主體、以教師為主導”的教學理念,提倡“自主、合作、探究、創新”,不斷改革教學方法和手段,鼓勵學生進行研究式學習、自主式學習、資源式學習和協作式學習,注重對學生四個方面的能力培養:通過計算機、網絡及信息技術基本原理、基本知識的講授,掌握計算機分析問題、解決問題的基本方法,培養學生對計算機的認知能力;通過計算機數據處理、多媒體技術及程序設計知識的講解,培養學生應用計算機解決問題的能力;通過熟練掌握與運用計算機與網絡技術,有效地表達思想,掌握基于信息技術的團隊協作方式,接受信息社會道德規范的約束,并自覺承擔相應的社會責任,培養學生依托信息技術的共處能力;通過對信息的獲取、分析、評價和吸收,培養學生的自我學習能力。
二、課程服務專業思想的實施
根據我們多年在計算機基礎教育改革實踐過程中積累的經驗,改革的核心在于“以學生為主體,以教師為主導”和為專業服務的“計算機應用能力培養”的教學模式和方法。我校計算機基礎教育與學生專業結合的做法是在教學手段和模式富有建設性成效的基礎上積極主動思考,結合了我校辦學的主導思想和特色并有了創新性發展。從幾年的實踐過程看,做法日漸科學,效果積極顯著。
具體做法:“積累、實踐、服務”相結合。
1.及時與專業負責人進行溝通,與專業對接。第一學期開學前,通過與學生所在院系教學負責人、專業建設負責人溝通等方式,實現課程內容與專業需要的對接,重新定位,按照專業需求調整教學內容,使課程內容滿足專業培養目標的需要。即每學期在制定計算機基礎課程授課計劃時,請專業負責人或骨干教師參與,根據各專業需要提出合理的意見和建議,充分了解各專業學生對計算機應用技能的需求,從而對課程內容及時做出調整和修訂。
2.提高課程組教師的計算機能力培訓。課程組的教師積極參與實習、實訓、畢業設計和實踐鍛煉等環節,不斷提高自身的實踐水平,實現教學水平與專業能力培養的需要對接。同時,課程組的多名教師通過到企業掛職鍛煉及時了解社會對計算機能力的實際需要,也了解到學生將來的就業趨勢,在提高自身能力的同時,也保持了計算機教育的實用性和先進性,為培養學生的計算機能力作出了充分的準備。
3.為學校各專業的大四學生,進行畢業論文排版指導,發揮服務作用。隨著用人單位對大學畢業生計算機能力的要求有增無減,計算機水平高低已經成為衡量大學生業務素質與能力的突出標志之一。因此,我校計算機基礎教育“課程服務專業”的理念和做法既符合教育部對普通本科院校提出的“應用型本科教育”的內涵所指,也符合我校的三大教育理念。作為我校的特色項目,必定對于促進學生終身學習和主動應用計算機起到積極的推動作用。
4.根據專業需要重新整合教學內容,探索為專業課服務的途徑與方法。在計算機教學過程中,我們打破了原有的學科體系,按照學生能力培養體系重新組織教學內容和教學方法,將相關的理論課程重新整合、重組。如在講計算機程序設計時,重點針對專業的實際問題進行程序分析。新體系淡化了基礎課與專業課的界線,實際了知識整合、交叉安排,加強了針對性和實用性,目的是更好地為學生專業技能培養服務。
5.加大實踐教學環節,提升學生實際操作能力,為專業服務奠定基礎。計算機基礎教學建立了相對獨立的實踐教學環節,加大了實踐教學在教學計劃中所占的比例,強調實踐與實習,實驗的目的不是為了驗證理論,而是為了培養學生的技術應用和實際動手能力。同時,在授課計劃中還安排了多項相對獨立、逐步提升的階段性技能與綜合性實驗與訓練,不斷提高學生的實踐操作能力。
6.課程組教師需要了解相關專業課教學重點,積極主動地為專業課服務。課程組教師通過與相關專業負責(下轉第255頁)(上接第252頁)人及骨干教師的溝通,以及與專業課教師之間相互聽課,及時地了解了專業急需用計算機解決的相關知識與問題,在備課和授課過程中都會將此部分內容作為重點進行講解,為今后學生利用計算機解決專業知識打下了堅實的基礎。
比如,會計專業是研究企業在一定的營業周期內如何確認收入和資產的學問。會計師除了準備財務報表以及記錄企業交易行為外,更重要的是能夠參與企業間的合并、質量管理、信息技術在財務方面的應用、稅務戰略以及很多企業的管理決策活動。因此一個現代高水平的會計人才,不僅僅要會收錢,會記賬,會審計,更應該利用會計這個工具,學會管理,具備多方面的能力。美國一個權威職業評估機構分析得出:Computer literacy是會計專業人才應具備的重要能力之一。同時,現代信息技術對會計工作也有著重大的影響作用,會計實務的重點將由原來的編制憑證、記賬、結賬、編制報表等轉向收集信息、存儲信息、加工信息、傳遞信息、查詢信息等。因此,面對會計專業的學生進行《大學計算機基礎》授課時,也要考慮以上因素,只有這樣才能在提高學生學習興趣的同時,增強學生的計算機會計能力。
7.開發了自主學習,課程服務專業的網站。為了提高學生的自主學習能力,課程組開發了計算機基礎系列課程網站,網站中包括了課程的大綱、授課計劃、課件、習題、名師視頻等資料,方便了學生資料的獲取。同時,網站還重點設置了“專業學習模塊”,針對不同的專業,根據各個專業對計算機能力的需要設置了不同的模擬試題,極大地調動了學生的學習主動性,激發了學生的學習興趣。
8.適應專業特點,精心設計案例。案例式教學方法的實施是提高計算機基礎課程教學質量的有效途徑之一。為了更好地做到課程服務專業,需要授課教師在案例設計之前需要與專業知識進行對接,對案例進行反復斟酌、思考與設計,好的案例可以幫助學生更好地記憶基本概念,理解所學知識,掌握基本技能。
如在對會計專業進行案例設計時,要盡可能將具有專業特色的案例融入教學過程中。在安排案例教學時有意識穿插更具會計專業特色的實例,在學習Word時,可以設計“財務報表”、“月份財務分析表”、“資產負債表”等案例,使學生在練習了表格排版的同時,了解了財務報表、財務分析表及資產負債表應包含的基本信息,與會計專業基礎課有了更好的結合。
在講解Excel時,可以重點與財務相關的公式與函數。在講授PPT時,可以利用PPT內容提示向導、母版的改造、PPT中表格和圖表的插入等操作,制作財務報告幻燈片,向股東和投資人介紹公司的財務狀況等。通過這些有針對性的、與專業知識相結合的案例講解,并結合布置一些有挑戰性或應用性或有樂趣的任務、習題,使學生對計算機基礎課的學習興趣大大提高。
三、結論
實踐證明,課程服務專業思想在高校公共計算機基礎課程中的引入與實施,使得教師能夠更加有針對性地進行教學與授課,使得原本枯燥的知識和課堂變得更加生動和引人入勝,充分調動了學生的學習積極性和主動性,激發了學生的學習興趣,為學生今后利用計算機解決專業實際問題奠定了夯實的基礎。
[本文為:1.黑龍江科技大學高層次引進人才科研啟動基金(06-122);2.黑龍江省高等教育教學改革項目]
參考文獻:
[1] 金蓉,莊紅,黃德生.面向能力培養的高校非計算機專業計算機基礎教學改革與實踐.計算機教育[J],2010(1)
[2] 韓雪.淺析服務專業能力培養的高職《計算機基礎》教學.科技信息[J],2011(6)
篇7
大學的主要任務是培養人才,特別是培養創新人才。培養創新人才的基本途徑與方法有課程教學、參與科學研究與項目開發、對外學術交流等。然而傳統本科課程教學多注重傳授學科的系統理論等專業知識,不重視對知識產生原因、方法的介紹,如忽視思考解決學科基本問題的具體過程等,這會造成課程教學傳授知識與科學研究相脫節,導致學生的知識結構產生缺陷,不利于他們將來從事創新等研究工作。為配合計算機圖形學課程的教學改革,根據計算機圖形學課程的特點,筆者提出一種面向科學思維的教學新方法,它能有效彌補傳統本科課程教學的不足。
1 面向科學思維教學方法的基本要求
常見典型的教學方法有:結構主義的教學方法、建構主義的教學方法、問題(任務)驅動教學方法等。這3種方法各有其優缺點,一個好的教學方法最好能全面綜合這3種方法的優點。面向科學思維的教學方法要求把思考問題的方法、系統分析與綜合的方法、科學研究的工作方法、查找資料與抽象的方法等知識產生的方法引入課程教學中,有效講解學科專業知識是根據發展需求、通過研究各種問題產生的;專業理論體系或與其學科結構是由多項研究成果形成的,這些知識是科學研究與科學思維產生的結果。
結構主義、建構主義與面向科學思維教學方法的異同點見表1。
2 確立計算機圖形學課程的教學內容與教學模式
2.1 傳統計算機圖形學課程教學改革的原因
2013年以前,國內外傳統計算機圖形學課程教學以講授圖形標準(顯卡驅動與顯示圖形等子程序的集合)或CAD為主。這種CAD與計算機圖形學(即圖形標準)學科的劃分有問題,它只便于圖形標準的硬件實現,卻因基本概念不全導致這兩者均不能獨立講清三維真實感圖形的自動生成原理以及計算機程序設計的基本規律,更不能總結計算機圖形學的研發成果與發展規律,不能滿足計算機圖形學學科建設發展需求。
2.2 用系統分析與綜合的方法確立計算機圖形學課程的教學內容
2.2.1 系統分析:從理論上確立實現計算機圖形學課程目標的發展路線圖
本課程目標是用計算機程序自動生成類似人眼觀察世界獲得的觀察圖像(亦為學科研究的基本問題,它適合作為建構主義教學方法要求的教學環境需求問題)。為此至少要完成3個子任務:①掌握三維圖形的生成原理;②掌握生成三維動畫等圖形的程序設計;③理順新課程教學內容與圖形標準、CAD的相互關系。
1)第一個任務的實現方法。
照相機生成照片遵循光線傳播生成三維圖形這一物理原理,計算機生成所有三維圖形(包括光線跟蹤算法、輻射度算法、投影、多邊形填充、紋理映射、陰影算法、圖像融合算法與二維直線的生成等)也應遵循該原理。這是本課程知識理論體系的完備性與一致性的基本要求,它決定了計算機圖形學的學種性質與教學定位。
2)第二個任務的實現方法。
用輻射度和光線跟蹤算法生成的三維真實感圖形等程序,是一類典型的顯示圖形的計算機仿真應用程序。故計算機圖形學的編程實現既遵循計算機仿真的基本原理,也遵循計算機程序設計的基本規律。
計算機仿真遵循系統(決定被仿真對象的范圍與其行為特性)、建模(用數學模型描述仿真實驗對象)、仿真算法(計算機通過執行該仿真算法,進行仿真實驗)與評估(檢驗仿真實驗的結果是否與應用需求保持一致)這一基本原理。
計算機程序設計應遵循計算理論可計算性的實現前提對程序設計的規范要求:①待解問題被模型與系統形式化方法所描述;②這種描述要轉換成算法;③算法要有合理的復雜度。
這里,形式化描述指用數學符號、邏輯符號與流程圖描述并要求保持邏輯上的一致性。系統的概念被本文定義為軟件系統:它按解決問題的系統流程要求,編程實現數個模型描述數據與命令的輸入、存儲管理、運算處理、輸出顯示4個過程,能直接達到自動運行軟件的設定目標并具有完整動態結構的綜合程序。軟件系統的概念是國內傳統計算機核心課程教學缺失的重要概念。
故三維圖形學的教學內容,主要用3組數學模型描述可視物體、燈光、照相機物理模型的物理特性(如用幾何模型、材質模型與紋理模型描述可視物體;用光線幾何模型、顏色模型、照明模型、輻射度算法和光線跟蹤算法等描述點光源;根據類照相機的觀察參數,用陰影算法、圖像融合等算法描述照相機模型;對光線跟蹤算法,應重構照相機模型);在物理仿真、數學建模與軟件系統概念的指引下,編程構建三維圖形軟件系統,實現三維圖形的自動顯示。物體運動與變形、燈光變幻、照相機運動可形成計算機動畫。計算機游戲是用人機交互的操作方式并通過實時動畫與聲音有效描述具有智能行為能力的人(或動物)的多種社會實踐活動。
3)第三個任務的實現方法。
計算機動畫包含了傳統圖形標準與CAD的原理,所以在課程最后,可講解圖形標準OpenGL的原理與編程使用方法。同時圖形標準是游戲軟件的基石,是現代計算機應用不可缺少的基本配置。
2.2.2 系統綜合:介紹圖形學的基本原理與動畫軟件的實現方法
這要求教師先查找資料、匯集前人發表解決以上問題的不同論文與教材(解決課程教學問題的先決條件),挑選材料編寫課程講義,詳細介紹完成該任務所需的基本原理與實現方法,講義試用成熟后再編著出版教材。
教材按以下思路組織:用二維圖形學構建軟件系統概念的教學,用三維圖形學構建三維圖形數學建模的教學(直接用三維圖形構建軟件系統概念的教學,會導致課程教學內容的復雜化)。在每章的開頭,均提出應思考并解決哪些問題才能達到本章的教學要求,加強訓練讀者思考問題的習慣。
學完本課程,學生要能勝任計算機動畫軟件的設計與編程實現等任務。
2.3 歸納計算機圖形學的學科結構
以上教學充分展示:由物理模型(化學模型、生物模型、社會發展需求模型等)數學模型(數據模型是數學模型的一種簡單特例,其編程操作主要是數據的存儲與檢索,以實現數據庫軟件。根據數學模型“曲高和寡”的原理得知,數據庫軟件是應用軟件中應用面最廣的一類軟件;或用離散數學的方法、判斷規則與判據或可編程實現的自然語言與功能等描述解決問題的過程與步驟;或用通信協議描述數據通信過程要遵循的規則、約定等要求,這是網絡通信編程的基礎)軟件的系統功能與結構用算法語言實現程序編碼并形成算法軟件測試評估等過程所確立程序設計的基本規律。程序設計這一規律,能被雷達的設計與制造過程所佐證,如通過物理實驗確立雷達原理用數學模型描述雷達的工作過程設計雷達系統的功能與結構用電子技術制造雷達設備做好的雷達要通過測試評估才能交付使用等。
由此能用理論(物理原理、建模、軟件系統、仿真、程序設計)、工具(OpenGL、Direct3D、著色語言、ACIS、WebGL、OpenCL、3D游戲引擎等)與應用(顯示圖形的應用程序,如3D動畫或CAD、地理信息系統(空間復雜性高而時間復雜性低)、游戲與虛擬現實系統(時間復雜性高而空間復雜性低))3個學科形態描述計算機圖形學的學科結構。
2.4 用科學研究的工作方法確立計算機圖形學課程的教學模式
(1)選題(發現問題):找任務、了解用戶需求、檢索閱讀資料并提出問題。自由選題要確立研究問題的科學性、目標性、創新性和可行性,并找準課題的申報渠道。提出問題是對任務深入思考或科學研究的前提。如計算機圖形學的學科屬性與教學內容是否成熟,是此前國際計算機圖形學教育界多年關注的教學疑難問題。
(2)分析問題:真實照片由照相機、可視物體與燈光3個主要因素決定,由此確立解決問題的方法。
(3)尋找解決問題的方法(提出假說):首先用二維圖形建立軟件系統的概念;然后建立描述照相機、可視物體、燈光物理模型物理特性所需的數學模型,構建仿真光線在計算機場景與照相機模型中傳播,生成三維動畫圖形。
(4)做實驗解決問題(找尋證據支持假說):針對建立的數學模型,選擇數據結構,設計算法,編寫程序源代碼并調試測試程序,構建三維圖形軟件系統,實現圖形的自動顯示。
(5)取得新成果(查新驗證):改進學科的系統理論與基本方法,發表研究論文,推廣該研究成果或論證申報新開發項目,推動學科建設向前發展。當我們解決好計算機圖形學的教學問題時,就為撰寫本文并申報計算機圖形學國家規劃教材奠定了基礎。
由此構建程序設計教學的完整過程,并把程序設計拓展成科學研究工作方法的一種形式與組成部分。
該教學模式不僅把教學與科學研究兩個不同性質的學術過程結合在一起,還說明圍繞課程教學思考問題的訓練屬于科學研究領域思維活動的一種基本形式。
3 在課程教學過程中合理安排思考問題的訓練
教師在重點介紹、講解每個專題前,要考慮如何訓練學生根據學科的發展需求思考問題,這些問題是任務驅動教學法中各種問題的來源。
3.1 用二維圖形學構建軟件系統概念的教學
專題1:線段圖形的描述與生成?;締栴}:如何用數學的語言與方式(如描述函數)描述各種線段圖形的幾何形狀,以形成各種線段圖形的幾何模型?如何形成矢量漢字等子圖形高效率的描述方法?如何把這種描述函數轉換成算法,并根據其描述數據生成這些基本圖形?
專題2:實面積圖形的描述與生成?;締栴}:用什么方法描述實面積圖形的幾何形狀,以形成各種實面積多邊形的幾何模型?如何利用顯示設備的繪圖功能生成實面積圖形?如何實現直線圖形邊緣的反走樣顯示?
專題3:圖形的基本運算?;締栴}:圖形運算的目的是什么?如何用幾何變換矩陣的方式描述圖形幾何模型的幾何變換?若用實面積多邊形的布爾運算構建新的復雜圖形的幾何模型,則布爾運算的數學基礎是什么?如何實現其布爾運算?
專題4:圖形的觀察運算?;締栴}:如何把輸入到計算機中的圖形幾何模型描述數據,轉換成顯示設備坐標系中的圖形幾何模型描述數據?并調用圖形的生成算法顯示各種圖形的幾何形狀?
專題5:圖形數據與命令的輸入?;締栴}:能用哪些方法把圖形模型描述數據與命令高效率地輸入到計算機中?如何利用輸入設備的數據輸入功能與顯示設備的圖形顯示功能,編程實現圖形數據的交互輸入?如何規劃應用程序中的人機交互設計問題?
專題6:圖形的數據結構?;締栴}:圖形數學模型的種類與復雜、復合圖形的構建方法,這些對保存圖形幾何模型的描述數據提出了哪些動態管理上的要求?如何設計相應圖形的數據結構,才能有效地保存、管理存儲于計算機中的各種圖形描述數據(命令)?如何把圖形顯示區中的圖形描述數據編譯轉換成多種顯示設備能識別并運行的顯示指令代碼,以實現圖形的顯示?為編程實現各種圖形的自動顯示,需要確定編程處理圖形數據的基本流程和程序的功能與結構,以形成軟件系統的概念。
3.2 用三維圖形學構建數學建模的教學
專題7:照相機模型的建立與三維幾何圖形的顯示?;締栴}:如何用數學模型,特別是用矩陣的方法,描述照相機拍攝(投影顯示)三維直線圖形的物理過程?
專題8:平面物體幾何模型的構建與圖形顯示?;締栴}:如何用直線與平面函數描述平面物體的幾何形狀?如何記錄這種描述所形成的幾何模型數據?如何構建形狀復雜的平面幾何物體?如何顯示平面物體的幾何形狀與表面?
專題9:曲面物體幾何模型的構建基礎與線框模型圖形顯示?;締栴}:用什么方法描述曲面物體的幾何形狀并構建其幾何模型?如何顯示曲面物體的幾何形狀?
專題10:燈光模型的建立與光照物體的圖形顯示?;締栴}:如何用數學模型的方法描述燈光的物理特性?如何描述在燈光照射條件下幾何物體的可視物理特性?如何顯示光照效果的曲面物體的表面與幾何形狀?如何更有效地描述光線傳播的物理特性與變化規律?
學生按照這一思路進行選題,可考慮為實現像照片一樣自然景觀(如白光的薄膜干涉等現象)的圖像顯示,需研究哪些問題等,并發表其研究成果。課程教學內容成熟完整后,才便于界定計算機圖形學的學科內涵。
4 分析計算機專業主要課程的基本特點,提煉計算科學的學科結構
4.1 計算機教學此前無計算科學學科結構概念的原因分析
現有權威資料和維基百科、百度百科表明,此前國內外計算機教學均無計算科學學科結構這一重要概念。以下3點是導致這一現象存在的重要原因。
4.1.1 對計算工具的分類作用認識不足
盡管人們知道計算機是一種計算工具,計算機有廣泛的應用,計算機科學有自己的一套理論根據,但僅用“理論、工具與應用”很難全面概括計算科學的研究全貌與多項用途。事實上,計算機的系統工具對總結計算科學的學科結構非常重要。
計算機系統是一個能對編程實現的數學模型與邏輯模型,進行自動解算與推理的通用計算工具。這決定了程序設計在編程使用計算機上的重要性。
操作系統是對計算機的各種硬件資源與軟件資源進行程序管理,使計算機正常運行的系統工具軟件。同時,它能對用戶程序(命令)的輸入、存儲管理與自動運行提供服務(包括對通信進程進行有效監管控制),并用人機交互與圖形界面的方式記載這種用戶程序與命令操作的運行結果。
編譯系統是用高級語言編程必備的系統工具軟件,它可以把用戶用高級語言編寫的程序源代碼、編譯轉換成計算機能識別并自動執行的機器語言程序代碼。
算法語言是用戶為編程使用計算機的各種計算功能,用類自然語言的方式與計算機相互交流思想的符號表達工具。
這些計算工具本身沒有直接解決數學計算與邏輯推理等應用問題,該任務由編程解決。
這類計算工具是在實際應用過程中總結、提煉的結果,工具本身一般不直接解決最終的應用問題,這是工具的第一個特點。它的第二個特點是工具的制造具有遞歸性,即可用簡單工具制造復雜工具。它的第三個特點是專業復雜工具的制造方法與技術具有封閉性與隱蔽性,但這不影響他人對工具的操作使用;且其隱蔽、封閉性是工具使用方便、高效的主要原因。
軟件系統與計算工具等概念的形成,是用抽象的方法(從眾多事物中總結提煉出具有共同本質的特征、而舍棄其非本質的特征等內容)處理形成的結果。
4.1.2 傳統課程沒有講清計算機仿真的原理與計算機程序設計的基本規律
傳統計算科學的核心課程(計算機導論、計算機原理與系統結構、算法語言與數據結構、編譯系統與操作系統、軟件工程、離散數學、數據庫和計算機網絡)從未講清計算機程序設計的基本規律與計算機仿真的基本原理。學生往往通過課后大量的編程訓練,積累對計算機程序設計與計算機仿真的認識。這種程序設計經驗式教學培養模型,無助于學生總結并提煉計算科學的學科結構。相反,人們在算法語言與數據結構課程的教學上存在一些模糊認識。例如,算法語言是用一組語法規則與功能約定的一種符號標記系統,它讓人們掌握語言的符號約定、功能、特性以及用算法語句描述給定的數學計算與數據處理、邏輯判斷等――即其教學主要是完成程序的編碼訓練,由此形成算法;也為研制該語言的編譯系統做鋪墊。然而部分算法語言的教科書,只有一些算法驗證性應用實例,并把它們等同于計算機程序設計教學,這無助于初學者全面正確地掌握計算機程序設計的基本規律,因為學習算法語言后,他們還是沒有數據結構的概念。
數據結構是研究用程序編碼的方式,在計算機中有效實現多種類型數據的存儲組織(形成線性、非線性、網狀結構形式以及靜態或動態結構形式的數據存儲方法)、存儲管理、排序檢索與編程效率等任務的一門專業基礎課程。數據結構課程有很多計算復雜性的案例,是培訓人們掌握編程技巧的一種有效方法。因為編寫程序所采用的數據結構往往決定了算法的編碼實現方法,更重要的是,CPU是根據保存在內存各處程序代碼的邏輯次序、通過逐條讀取其指令代碼來完成用戶指定應用程序(或命令)的執行。如何規劃、設計、調度與管理內存的使用,這與數據的調度與管理原理類似,是數據結構討論的問題之一(常在操作系統課程中介紹解決該問題的方法。數據結構問題本質上屬計算機內存的動態、合理使用與管理問題)。而該課程中所謂抽象數據類型,是指在指定的數據集上定義對該數據元素進行多種加工等編程操作方法。這個數據集以及對其數據元素的加工方法(數據集與其加工方法均能遞歸定義),應來源于人們用數學的方法描述解決實際應用問題這一過程,該主次關系不能顛倒。沒有這些數據結構與程序編碼等基礎訓練,初學者很難規劃好一個軟件的系統功能與結構。
由于傳統的算法語言與數據結構課程教學無數學建模(它決定了解決多種應用問題算法的來源)與軟件系統的概念,故傳統的算法語言與數據結構課程沒有講清程序設計的基本規律。
4.1.3 傳統計算機課程存在教學問題
首先,傳統計算機圖形學課程存在教學問題,現已被本教學改革有效化解。
其次,軟件工程課程存在教學效果空洞抽象等困惑。若把新的計算機圖形學課程作為軟件工程課程的教學實習對象,可以有效解決該教學困惑。由于新的計算機圖形學課程可以講清程序設計的基本規律與計算機仿真的基本原理,這使軟件工程課程的教學從理論上能達到軟件全生命周期設計的教學目的。
第三,計算機導論與計算機基礎課程存在教學困惑。計算機導論應對計算學科發展的全貌作整體介紹,并理順計算學科與其他學科之間的關系,引導讀者根據自己的需求有效選擇學習不同的計算機專業知識。由于此前計算機課程存在以上問題,導致歷次獲國家級獎勵的計算機教學改革成果以通過有效載體進入課程教學,致使計算機課程教學體系仍然不夠成熟。這往往是行業外人士選修計算機課程的迷惑。因為自牛頓時代以來,用數學的語言描述自然科學取得的新進展,是各自然學科之間相互交流學術思想與成果的通用方法;然而目前其他自然科學工作者學習計算機后,卻無法順利地用計算工具的方法來表達其各自學科建設研究成果的數學模型等。這種計算機課程教學不便于計算機教育與其他自然科學教育進行對等有效的學術交流,并導致計算機基礎課程教學出現危機。另計算機教學無計算科學學科結構的概念,即人們沒有評判計算機導論教材好壞的客觀標準。計算機圖形學教學改革取得的新成果――發現計算科學學科結構的客觀存在,為重構計算機導論與計算機基礎課程提供了重要借鑒。
最后,計算機網絡課程存在不足。如該課程介紹網絡通信協議較多,卻較少介紹網絡通信工具的構建與編程使用方法,以及計算機網絡通信程序的編程實現,這不利于初學者承擔計算機網絡計算的重任。
4.2 借鑒計算機圖形學的教改成果。歸納計算科學的學科結構
傳統計算機核心課程缺少一門計算機的綜合運用課程,以總結并提煉計算機程序設計的基本規律與計算機仿真的基本原理。計算機圖形學課程可以很好地承擔這一重任。有了計算工具的概念與計算機圖形學課程后,可以重新分類、歸納已知計算機的多種應用。
成熟的計算機圖形學與傳統計算機核心課程的教學,使計算科學理論(即計算機的系統理論和專業知識。它需回答:什么能被工具有效地進行自動計算,用什么方法研究該命題并形成哪些結論、成熟的理論與發展方向;滿足何種條件的實物裝置能實現計算功能,計算裝置如何構造實現并使其正常運行、操作使用;可計算性的實現前提是什么,如何用該計算裝置實現這種自動計算,如何保證計算結果的正確性和計算裝置運行的安全穩定,該計算裝置有多強大的計算能力;計算理論與計算機專業各課程的關系等)、工具(算法語言、編譯系統、操作系統、計算機系統)與應用(數據存儲與檢索,數據計算、仿真、符號變換與推理,數據網絡通信,數據獲取、輸出表達與控制即多媒體)3個學科形態得到完整展現。它們是形成計算機專業多個發展方向(如殺毒與網絡防火墻、網絡存儲與查詢、網頁設計開發工具與網站建設、網絡瀏覽器,即時通信、流媒體與播放器、人工智能與專家系統、計算機嵌入式應用、計算機在通信與自動控制系統中的應用等)與綜合(如3D網絡游戲)或研發計算機硬件(計算機系統結構與CPU設計、計算機工程)的基礎。
因互聯網的應用,計算機網絡計算有網絡理論(在通信理論的支持下,如何可靠、快速、方便、安全地實現計算機信息描述數據的通信;網絡計算的理論基礎與基本規則是什么,如何利用網絡資源進行有效的傳輸與計算)、網絡工具(計算機與互聯網、路由器與交換機、調制解調器、Java、html語言、瀏覽器、Socket、遵循HLA標準的分布式實時仿真工具RTI、網絡游戲引擎)與網絡應用(如計算機數據通信與監管、電子商務、社交網站、網絡游戲、云計算、信息技術與信息系統、物聯網、大數據的應用等)。
圖1顯示了計算科學的學科結構。由計算機仿真的基本原理與可計算性的實現前提,可論證程序設計教學與計算機仿真教學的一致性。
故計算作為一門學科(招生專業)的根據是:①它有自己獨立的研究領域。即什么能被有效地用工具進行自動計算以及可靠、安全、快速地傳輸?②產生專業知識的方法??茖W研究與科學思維是產生(創造)多種學科新知識的主要方法,這是研究生階段的主要學習任務。③由此形成的理論體系與其學科結構。這是本科生學習階段應掌握的專業知識。④傳授知識的法定機構與辦學條件。⑤廣泛的應用基礎。
篇8
1程序設計語言教學中存在的問題
1.1教學課時少
目前我校計算機專業的學制2+1的模式,學校開設的程序設計語言課程的課時(包括理論課時和實踐課時)較少,這就導致實際教學中存在理論課時和實踐課時不夠的情況,學生只能掌握最基礎的程序設計知識,理解書本上現有的一些設計實例,而不能用該程序設計語言進行實際問題的處理。
1.2學生基礎參差不齊,學習程序設計的信心、興趣不足
因為學習程序設計需要較強的邏輯思維能力和較扎實的數學功底,而中職學校的學生普遍數學基礎較薄弱,導致在學習程序設計時顯得力不從心。由于缺乏對計算機本身解題的認識和了解,有些基礎較差的學生還對計算機程序產生一種莫名其妙的神秘感和畏懼感,人為的給自己學習程序設計語言設置了一道門檻。學生對程序設計課程的學習興趣不高,課堂教學中反常行為較多,如卜課睡覺、講話、玩手機、不配合老師、不交作業等。學生普遍反映難學,提不起學習興趣,感覺學不到知識或學的知識沒用。
1.3學校對程序課程的重視程度不高
計算機程序設計課程注重對學生的思維能力的訓練,這與圖像處理,動畫設計等培養學生動手能力的課程不同,不能立竿見影的看到學生的學習成果。這就導致一些領導對這門課程不夠重視,從而使部分教師對這類課程的教學參與興趣不濃厚,甚至有些學校以取消了程序設計語言的課程設置。
1.4教學方法落后
中職程序設計語言課程一般采用的教學方法是教師課上講授加學生實驗的形式,學生在上機實驗時僅僅是對書本上現有的一些實例進行編輯調試,一旦調試成功就完成任務。這種教學方法實際上只是讓學生掌握了一些程序設計的語法知識和調試技巧,而達不到培養學生利用該程序設計語言從一個實際問題人手分析問題、解決問題的能力。
1.5考核方式較簡單不能全面檢驗學生的學習效果
目前的考試方式以試卷為主,無法全面檢驗學生的學習效果,對學生的實踐能力考查無法體現學生的真正學習效果。
2間題分析
是什么原因造成了以上這些問題那?隨著高中教育不斷普及,中職生源及綜合素質急劇下降。普遍特點是他們基礎薄弱,尤其數學和英語,這是學好程序設計的最大障礙。教材不能適應中職教學的要求。現今中職程序設計語言教材存在的普遍問題是實踐性教學和實訓內容不足,沒有體現教材的實用性和職業性,不能保證對學生實踐能力的培養,不能體現技術應用型人才的培養要求,缺少中職教育特色。面對這些問題,我們不能望而卻步,一味地去埋怨是起不到效果的,要真正想解決問題,最好就要去不斷地摸索,尋找解決問題的突破點,探索適合學生發展的教學方法和教學內容,以充分調動他們的學生積極性和主觀能動性。
3解決間題的關鍵在于教育方法的創新
古人云:“知之者不如好之者,好之者不如樂之者。”興趣對學生的學習有著神奇的內驅動作用,能變無效為有效,化低效為高效。充分激發學生的學習興趣是當前開展素質教育,優化課堂教學,減負提質的最根本、最有效的途徑之一。興趣的產生來源于興趣源,興趣源必須由教師來創造,并貫穿于教師授課全過程的各個環節中。針對程序設計這門課程的特點教師可采用以下一些方法提高學生的對本課程的興趣。
(1)基于問題的教學。提出問題,以學生獨立完成為主,教師只提供必要的輔導,培養學生探索問題和解決問題的能力,更有利于創新能力的培養。
(2)“項目驅動”教學。在理論教學中采用“項目驅動”教學法,整個課程教學圍繞一個“工程項目”進行,通過逐步拓展的實訓項目和設計,將每一階段的學習進行小結性的貫穿與能力提高,將知識點都溶化到一個個實訓項目的程序編寫中。
(3)討論教學法。在教學過程中,充分發揮學生的積極性與主動性是非常重要的一環。程序設計有一個最大的特點,一題多解。針對這個特點,教師在習題課的教學中,可以采用討論式教學方法。在此過程中,學生們通過提問、答辯、論證、反駁、判斷等激烈的討論,互相啟發、相互協作去分析問題、發現問題、解決問題,總結經驗。不僅可以讓學生獲得課外的知識,同時也利于充分挖掘學生的學習潛力。
(4)歸納教學法編程語言有很多的定義、概念、語法規則,它們使用靈活、難以記憶,也特別容易出錯。如果能夠引導學生進行歸納,將會起到事半功倍的效果。編程語言的定義、概念、語法規則有許多相似的地方,例如:for ……to……與do……w hile等命令,有很多語法規則是一樣的,對它們進行歸納之后,學生只要記住其中一個,另一個自然就會使用了。
(5)分組教學法。注重培養團隊精神,以“競”求進上機編程實踐是學好程序設計語言的關鍵。但上機實踐過程中如果“各自為戰”,或在教師的統一“指揮”下以完成不同題型的任務為實踐內容,對于中職學生而言很容易失去上機興趣,也很難達到上機實踐之目的。因此,不妨針對中職學生的特點,適當轉變上機實踐的形式。以組建團隊的形式上機實踐,事前分配給每個學習小組不同的實踐任務。組長負責本組學生利用課余時間去思考、收集資料,上機時各組先分別完成相應任務,然后相互演示成果,評判優劣,最后再進行任務交換,討論編程心得。在此過程中教師主要充當協調者的角色,對確有疑難的地方可適當加以指導,主要過程可由學生自行解決,則學習能力強的學生自然會成為教師的助手。
篇9
Abstract In order to improve the non computer professional students of science and engineering teaching quality courses of computer application, this kind of curriculum reform of traditional teaching methods, pay attention to the cultivation process and the ability to adjust the classroom computer room, teaching methods and real-time interaction with the screen broadcast, will lecture and experimental fusion, the teaching and examination fusion, using a variety of means of examination coverage of the whole teaching course, not only to achieve the purpose of motivating students to learn, but also make the classroom lively and lively, good teaching effect.
Keywords computer teaching; examination; reform; ability training
為了鼓勵和督促學生通過課程真正掌握計算機程序設計及應用的技能,許多任課教師傾注了大量心血,提出了很多方法和措施,值得我們參考。①②③④筆者認為考試是教學的指揮棒,考試改革和教學改革必須同時進行才能取得好的教學效果。為此,在學院教務部門的支持下,筆者在講授“Matlab語言及應用”課程中,對課程教學和考試方式進行了改革創新,現就有關教學實踐的經歷談一下自己的看法。
1問題分析
1.1 傳統思想造成考試方式的固化
“筆試”在時間與空間上的嚴格性的優勢使其成為長期且普遍采用的考試方式。以至于造成很多師生固執的認為“只有筆試才是考試”。另一個原因,由于教師們普遍重視理論教學和熟悉筆試操作流程,使得即使在程序設計和應用類的課程考核中,也往往傾向于采用筆試來考核。⑤實際上,筆試的考核方式在理論性較強的課程,如政治類、原理類等課程中適應性更強。考試內容和考試方式又是教學的指揮棒,采用筆試考試直接導致了日常的教學內容和教學方法也會偏重理論講授,在實踐性較強的科目中客觀上會造成實踐教學的減弱。計算機程序設計應用類課程就是這樣一種實踐性很強的課程,它的核心教學目的是培養學生程序設計或者使用專業軟件的能力,使學生能夠在電腦上獨立操作實現專業所需的程序設計或者軟件操作,而非演算紙上寫出步驟或代碼。顯然,筆試的考核方式制約了這類課程教學過程,影響了教學效果??疾靽獯髮W的課程考核形式,主要包括了閉卷筆試、開卷筆試、小論文、專題討論、教師口試、答辯、小組研究項目、資料分析、課堂表現和社會實踐筆記等等,他往往根據課程內容確定較為適合的考核方式。⑥這些考核方式都是值得我們參考的。開展考核方式改革的探索將有利于我們客觀、合理和綜合地評價學生的學習過程和知識掌握程度,進而調整教學思路和實踐教學步驟。
1.2 社會環境影響學生的學習目的
當前“急功近利”的社會氛圍下,獲得學分、取得高分成為學生學習的第一目的,真正熟練掌握專業技能和專業知識被大家嚴重忽視。一個較為典型的例子就是,在我校本專業免試推薦研究生時,入圍的資格是考試成績,復試內容是專業操作技能和專業素質。在這一環節中,高分學生表現出較差的技能或專業素質的現象非常常見。在日常教學中,學校也往往過分重視分數的價值功能,特別是獎學金、評優等幾乎完全看考試分數,使學生產生了“分數高于一切”,“考試分數高的才是好學生”等問題??陀^上引導學生以考試成績為第一,而并不關心是否真正掌握了專業知識和專業技能。
對于理工科學生來講,上述做法嚴重削弱了學生參與實踐教學的積極性。在類似計算機應用類課程的很多科目中,筆試分數并不能真正檢驗學生的學習效果,筆試成績高也不能代表高的實踐能力。理論上,切實開展專業教育、職業規劃是解決這一問題的基本途徑。讓學生知道每門課程在未來職業中的用途,這需要由每一位任課教師滲透到所負責的專業課程中,需要結合課程知識點告訴學生本節課的技能在未來的工作或研究中有什么用途。實際教學中,還可通過改變傳統教學模式、提高學習興趣來督促鼓勵學生,如本文的方法。
2教考綜合改革實踐
2.1 考核方式
為避免學生平時疏于學習、期末惡補考試,使學習效果得到客觀、公正評價,更為了鼓勵學生真正學好技能,在“Matlab語言及應用”教學中取消原來的期末統一筆試,改為貫穿整個教學過程的全程考核,將考核點設計為作業、小實驗、討論和課程設計等,表現為“考教融合”。在本門課程中,將成績構成分配為期末程序設計考試成績占40% ,平時實驗成績占30%,課后作業占20%,課堂討論占10%的模式。
課堂實驗和課后作業部分要求所有學生教學過程中同步完成,屬于完成性考核。所有W生都被要求掌握這些基礎知識點和技能。討論部分和程序設計考試階段是提高的部分,屬于提高性考核,學生如果想取得好的成績,就要在完成基本實驗和作業的基礎上,認真思考問題,上課積極參與討論,針對問題提出更優方案,努力掌握軟件應用技能,并在期末程序設計考試中順利完成考題。討論課的內容包括了如專業數據處理需求、特殊功能實現方法等廣泛的擴展性內容,大家討論給出程序設計方案和步驟,這能考察出學生的基本素質、思維能力和知識熟悉程度。在期末程序設計考試階段,通常會設計包含了多個教學知識點的專業有關應用型程序設計題目,學生在給定的時間內在教學機房獨立完成程序開發。這部分的考核以解決實際問題為考核目標,給了學生更大的學習壓力。但由于這部分比重只占總成績的40%,也沒有給學生過多的精神壓力。這種考核方式能夠充分調動學生積極性,使得學習過程豐滿而充實。
2.2 教學方式
為了配合上述考核形式,需要深刻改革授課方式。在講課風格上,盡量避免空洞的理論講授,通過給學生提供生動、形象的演示,使他們了解直至理解每一個知識點,在實踐中掌握。在上課地點上,拋棄了原有的講臺和黑板,將授課地點從教室改到計算機室,學生每人一臺電腦,既能觀看教師演示,又能動手實踐,還能隨時與老師交流。在授課方式上,不再劃分講課學時和實驗學時,將授課與實驗融合起來,邊講邊練邊討論。
具體操作,將每2學時的教學內容劃分為4個階段。第一階段,采用屏幕廣播方式,利用案例教學,為學生講授基本原理和操作方法(約30分鐘),將空洞的理論性的知識點穿插到實踐中,讓學生看得見;第二階段,學生獨立練習前述教學內容(約30分鐘),完成老師的演示內容,通過操作理解知識點;第三階段,集體討論,啟發式教學,并采用屏幕廣播方式,為全體同學重復解釋教學難點,討論知識擴展;第四階段,布置需在課堂完成的與實驗內容和課后思考作業,重點培養學生解決問題的能力,課堂實驗需要當堂提交,不能按時完成的或完成不認真的,直接影響成績評定;課后作業完成時間由學生掌握,按完成水平給出成績。⑦
上述教學方式使得學生在沒有壓力的情況下輕松學習,增強學生的學習主動性,使學生覺得“每節課都在學習,每節課都是考試”。
2.3 教學內容
教學大綱要求掌握的教學內容和實踐技能,都設計到各個實驗中,不鼓勵學生死記硬背。因為“紙上得來終覺淺,絕知此事要躬行”。對于基礎的命令和方法,學生會在反復訓練中掌握,結合專業需求理解,經過大家多次討論后自然就可以熟練掌握。對于生僻復雜的知識點或模塊,更沒有死記的必要,教會學生解決問題的辦法,要求學生在遇到或用到時,能知道其解決方案并能查找相應資料就行。關于教學內容,重點引入學科專業有關的應用內容和常用熱門模塊,不但使學生學有所用,還跟蹤了知識前沿。
3教學效果分析
多輪的“Matlab語言及應用”教學實踐表明,本文提出的教學方法能夠充分調動了學生的學習興趣,所有選課學生都獲得了學分,且都取得了良好以上的成績,70%以上的學生在期末的程序設計考試中都能獨立完成程序設計。與授課前相比,學生的編程能力、創新意識以及實踐課程的學習主動性等方面均有所提高,兩年的授課前與考試后問卷調查的結果表明,學生對程序設計類課程的有好感的比例都是從約30%上升到約70%。編程基礎較好的約20%的同學經過本課程的學習后已經能夠熟練掌握Matlab語言,在畢業論文和研究生階段可以自由設計所需專業程序??疾?015、2016兩年本專業本科畢業論文中數據處理環節,50%以上學生采用了Matlab軟件設計程序,包括自主設計和改造他人程序兩種情況。上述教學效果完全達到了本專業本科培養方案中設置本門課程的目的。
4結語
從計算機語言應用類課程教學中存在的問題出發,結合“Matlab語言及應用”課程的教學實踐,探索了教學和考試改革的方法,取得了一定的成效,使得學生的素質得到較好發展,編程實踐水平普遍提高,提高了學生的學習興趣。需要指出的是,我們一直采用的是小于20人的小班教學方法。在這種師生比的情況下,教師的教學工作強度是可以承受的,學生發生抄襲現象也是容易被發現并制止的。非常明顯,當學生人數增多時,這種教學方案會給任課教師帶來很大負擔。因此,不斷完善教學和考試改革,使教學和考試體制更具科學性、合理性和適用性,以滿足優秀人才培養的需求任重道遠,我們仍需不斷努力。
注釋
① 張貞貞,宋連公.非計算機專業計算機基礎教學模式探析[J].華北水利水電學院學報:社科版,2009(5):111-113.
② 金蓉,莊紅,黃德生.面向能力培養的高校非計算機專業計算機基礎教學改革與實踐[J].計算機教育,2010(1):145-148.
③ 張居曉.提高高校非計算機專業計算機基礎教學質量的策略[J].計算機教育,2011(2):54-57.
④ 吳春明,鄒顯春,杜云.高校非計算機專業學生計算機創新能力培養模式研究[J].西南師范大學學報:自然科學版,2011(5):240-243.
篇10
這里,摘錄來自清華大學不同院系學生的小論文,以展示在大學一年級學生眼中計算機技術與各專業的關系。
周丹彤:
計算機技術在土木工程領域有著十分廣泛的應用,在對圖形的處理方面發揮了傳統人工繪圖無法比擬的優越性。計算機輔助設計(Computer Aided Design,CAD)是隨著計算機技術和計算機設備的飛速發展而產生的一門新興學科,是建立在近代計算機軟、硬件技術和工程技術基礎之上的交叉學科。
計算機程序設計技術在CAD技術的應用與開發方面均有著不可替代的作用。
ADS(AutoCAD Development System)系統能利用C語言的結構化編程手段,使應用程序以外部可執行文件的方式在AutoCAD環境中運行。ADS實際是一組可以用C語言來編寫AutoCAD應用程序的頭文件和目標文件。ADS應用程序級可以充分利用AutoCAD本身具有的強大功能,同時有擁有C語言運行函數庫的全部功能。而從AutoCADR13.0版開始,AutoCAD提供了更為高級的開發工具ARX(AutoCAD Runtime Extension),它以C++為基本開發語言,充分發揮了面向對象變成的諸多優勢,使得應用程序運行速度更快,訪問和操作圖形數據庫更為方便。正如C++語言可以兼容C語言一樣,在ADS和ARX之間,AutoCAD提供了成為ADSRX的編程手段和程序庫,實現了對ARX和ADS程序的兼容。
而最新出現的ObjectARX在建筑結構等各種交互計算與繪圖的應用領域發揮著重要的作用。在AutoCADR14.0以后的版本,用戶可以利用ObjectARX編程環境,采用面向對象的C++語言來開發ObjectARX應用程序。
使用ObjectARX對AutoCAD進行二次開發,要求開發者必須具備一些基本編程知識,其中包括C或C++知識、面向對象編程概念、Microsoft Visual C++的使用,以及AutoCAD的基本操作方法等。
陳穎:
C語言比其它的程序設計語言應用范圍更廣。具體到本專業的應用,在單片機中應用最廣,其他還用在DSP程序的開發,以及Matlab程序編寫上。
在目前以及可預見的未來,單片機發展的主流在于:單片機的真正單片化、低功耗、電源電壓允許寬范圍波動。單片機的單片化,使得電路設計越來越簡單,同時必然使得單片機型號明顯增多,對開發應用人員來說,便會針對不同情況選擇不同型號的單片機,C語言則使此項工作簡單易行。
聶慧饒:
傳統的機械制造周期長,精度低,大批量生產,很顯然已經不適合21世紀的需求。傳統的生產方式已經制約了機械制造技術的發展。而不幸的是,在我國,大部分地區的制造行業仍然使用的是傳統的生產模式,這不僅給我國帶來了極其嚴重的環境污染,還造成了大量的資源浪費,與我國的“可持續發展”戰略背道而馳。而作為機械人,我們必須擔起祖國的大任。
在21世紀,生產必然要求產品開發周期短,產品的精度高,能夠滿足各種用戶的不同要求(即不需要大批量生產)。這其中的每個過程都與軟件技術密不可分。計算機輔助設計在產品的設計與開發中有極大的作用。數值模擬在生產過程中的應用也相當廣泛。傳統的手工生產也正在被后起之秀“機器人”逐步取代,使用機器人可以有效地解決生產過程中的精度問題。
在這里,我的意思并不是每個機械人都必須同時掌握軟件開發技術。畢竟,作為機械人,我們只需要在機械制造領域有所作為就夠了。但我們還是要學習計算機語言掌握住適當的編程技術,為以后同軟件專業的人才共同開發出自己的軟件打好基礎。雖然當前機械制造領域內已有許多現成的軟件,但它們也并非都相當成熟,而且絕大多數不出自我國之手。市場上,何曾見過完全由我國自主開發的大型軟件?所以,發展的空間還是很大的。
21世紀有太多的軟件技術等我們去開發,有太多的機械制造技術等我們發展。
侯鑒玻:
我是一名來自精儀系的學生,初步了解,程序設計技術在我們系也應用得非常廣泛,根本缺不了。因此,下面我簡單介紹一下程序設計技術在我們專業的一些應用。
ActiveX控件在程控儀器控制程序設計中的應用。
......
程序設計在機械設計計算中的應用。
......
程序設計在畫法幾何中的應用。
......
程序設計在水泵軸類零件強度校核的應用。
......
程序設計在機床PLC故障顯示的應用。
......
其實,程序設計技術在我們專業的應用還有很多,也正是它的應用使得我們專業很多領域發展的越來越快。通過這次搜集資料,我學到了好多東西,也進一步認識到了程序設計的重要性。程序設計基礎這門課非常必要,學好了它,以后我們才能進一步學習程序設計,才能在專業上有所發展和突破。
潘寧:
汽車被稱為“輪子上的計算機”,對一輛汽車的先進程度的評價標準,已經逐漸從看其發電機的功率有多大,轉變為主要看其芯片的計算能力有多強、汽車軟件的功能有多強?,F代汽車是以計算機為中心的高度自動化、集成化的控制系統,該系統隨著汽車功能的不斷增多而日見完善和復雜。
國外有人預計,將來汽車中90%的創新有賴于電子技術,而創新中的大部分將依靠軟件來實現。
陳穎:
程序設計在任何一個工科領域都有廣泛的應用,而對于強調信息快速傳遞處理的工業工程專業更是如此。比如在供應鏈管理方面,工業工程的專業人員需要做到信息共享,這樣能將整個供應鏈,從供應商、生產商到零售商――整合到一起,更快地響應客戶需求,降低庫存,提高供應鏈績效。為了達到這一目標,就要依賴各種高級管理軟件。要想更進一步優化這一信息管理系統,取得效率的最大化,就需要設計新的算法做出新的軟件。這是一個沒有最好只有更好的方向,更是程序設計在工業工程專業的應用中最具有挑戰性的方向。
具體說來,程序設計在工業工程專業中的應用可以分為以下幾個方面。
1、生產方向
建模與仿真(Modeling and Simulation)
開發語言:C/C++
應用軟件:Flexsim,Promodel, Anylogic, MATLAB
其中Flexsim是一個基于C語言程序設計的軟件,工業工程系學生一般在大三上學期會學到
應用舉例:奧運園區垃圾回收系統仿真,大型超市排隊系統仿真
*制造系統實體建模
應用軟件:ProE, AutoCAD
*管理信息系統(MIS)和物流信息系統
MS 的access和borland 公司推出的delphi是數據庫管理軟件,應用于管理信息系統就是MIS.
應用數據庫軟件:SQL-server,DB2,MSAccess, Oracle
用戶界面開發語言:VB,JAVA
應用舉例:企業MRP, ERP系統開發與維護
2、物流方向
*物流網絡規劃
應用軟件:使用LINGO,LINDO, MATLAB等解線性規劃問題
應用MATLAB, C/C++, JAVA等實現優化算法:如VRP(車輛路徑規劃問題),TSP(旅行商問題)等優化的開發
3、人因方向
*實驗設計
統計軟件:SPSS
實驗界面設計:基于VB, JAVA
*虛擬現實
*用戶可用性(usability)
從研究內容上看,工業工程關注工程運作的效率、成本、質量等方面問題。
在考慮效率問題時,工業工程涉及到優化,其中包括線性規劃、動態規劃等等,一般會在運籌學中學到。這些問題如果是小規模的則可以通過手動解決,但大規模的就只能通過算法解決,而算法都是通過程序(一般是通過C++程序設計)實現的。
篇11
程序設計基礎這門課程是在學院第一個學期開設,共有56個學時,這門課是學校計算機應用技術專業的一門基礎課程。學院對此專業的培養方案的初次崗位定位中有軟件開發技術員崗位。根據計算機程序員崗位的職業要求,具體工作流程總共分為五部分:需求分析、系統設計、程序設計、程序調試、交付與維護。不難看出程序設計在其中占有至關重要的地位。程序設計基礎課正是來源于此,該門課程是培養程序設計員基本程序設計能力的一門基礎課程,在計算機應用技術專業人才培養方案的課程體系中屬于專業技術課程中的基礎課。
《程序設計基礎》是直接面向程序員職業崗位的一門課程,課程的學習目的是使學生掌握結構化程序設計的基本方法,培養程序設計的思維能力,為后續課程《C#程序設計》、《數據結構》、《WEB程序設計》、《面向對象程序設計》等課程的學習奠定基礎。
二、課程設計
為了符合學院提出的“走進校門的是大學生,培養出來的是職業人”的育人理念,和計算機應用技術專業要培養具有優勢職業品質與技能,面向現代服務業培養管理、服務第一線崗位的高素質技能性職業人的專業目標,《程序設計基礎》的課程設計思路是以培養程序設計能力為目標,以實戰項目為載體,實現教、學、做一體化。
在教學過程中以案例為先導,學生完成演練為手段。這門課程要達到的品質目標是以能力與知識相結合、以培養全面發展的具有優勢品質與技能的高素質應用性職業人為培養目標,培養學生嚴謹細致、求真務實的工作作風和良好的團隊協作精神。技能目標是掌握結構化、模塊化程序設計方法與技能、培養自主學習獨立思考能力。知識目標是學會C語言的基本語法,掌握基本的算法、能夠編寫基本的C語言程序。
課程內容的選取依據計算機程序員崗位需求、典型工作任務、行業技術動態發展趨勢、高職學生特點,分為理論教學和實踐教學,課時分配是1比1,其中實踐教學每一個模塊都以項目案例為導向,案例大多選自杭電的ACM平臺,同時也配備了為了激發學生學習興趣老師自己創作的案例,比如剪刀石頭布游戲,猜數字游戲等。
高職學生屬于高考最后批次,文化基礎知識相當欠缺,體現在C語言上,英語出錯提示看不懂,甚至有學生反映在C語言中的英語語句關鍵詞都不認識,在數學上同樣存在基礎相當差的問題,成為學習C語言的極大障礙。學生從小接觸計算機就在Windows下運行,習慣了用鼠標,而C語言運行在用鍵盤的命令行界面上,一個字都不能輸錯,對初學者有一定難度。這門課程的重點是:三大基本語句程序的設計、數組的定義與引用、函數的定義與參數傳遞;課程的難點:選擇與循環的嵌套、函數嵌套與遞歸調用、指針等。針對學院高職學生的特點,對于重難點的解決方法是從提高學生學習主動性方面突破首先,要激發學生的興趣,包括兩方面的內容:第一興趣教學,盡量選取學生感興趣的題目或項目進行教學,如猜數游戲,石頭剪刀布游戲等。第二實用教學,解決學生學了有什么用的困惑,盡量選取貼近生活實際的題目,如百元錢兌換方案、誰是騙子等,讓學生感受到學后能解決問題的小小成就感。
三、教學實施
教學實施流程分為三個階段:準備階段,實施階段和總結階段。在準備階段中,根據課程標準,主講教師組織任課教師討論,選擇典型的工作任務,制定教學計劃。實施階段以學生為主體,以教師為主導,以職業能力培養為中心,融‘教、學、做’為一體教學??偨Y階段主講教師組織任課教師討論,提出存在問題,找出解決方案。
針對課程特點,靈活使用“啟發式教學”、“趣味教學”“任務驅動”等方法,突出“理論教學構筑學生的知識結構,實踐教學構筑學生的職業技能結構”的教學原則。課程教學全面推行“學中練,練中學”教學思路。
接下來以循環結構的第一次課為例來闡述一下教學流程:學生對循環結構沒有概念,對while和dowhile語句也不感興趣,為了提高他們的學習積極性,首先使用五分鐘的時間情境導入,選取杭電ACM平臺上面的三個案例:猜數字游戲,百錢百雞問題,誰是騙子,在學生對將要學的知識有了一定的期待后,用十五分鐘的時間講解相關的語法知識,接下來通過解決案例的方式教師給學生示范編程,并且給學生留出一定的時間自己動手實現,最后十分鐘進行總結反思。
這門課程的教學評價由三部分組成:其中平時成績和課內實驗成績分別占20%,期末筆試成績占60%。
四、教學條件
程序設計課程有一支不論是年齡結構還是職稱結構都比較合理的教學團隊,每個老師都有自己的優勢,有的具有多年的企業編程經驗,有的主持多項相關的省級課題,有的對指導學生程序競賽有豐富的經驗。此外課程聘請杭電ACM集訓隊教練劉老師擔任學校ACM集訓隊特聘教練,劉老師也參與系相關的實習實訓活動。
該門課程的教學資源也很豐富,主要包含以下幾個部分:教學大綱、授課計劃、教材、實驗實訓項目指導書、多媒體教學課件、網上C語言精品課程、試題庫、圖書資料等。教材選用譚浩強教授編著的《C語言程序設計》,系周岳松老師自主研發了客觀題在線測試軟件,該軟件分為教師版和學生版,教師版可用于平時隨堂測試,學生版可用于學生自主學習,網絡資源主要有C語言網等。學院也提供了相應的硬件支持,設有軟件開發實訓室、大學生程序競賽實訓室等多個實訓室。
五、教學效果
校內督導組和校外專家都對《程序設計基礎》這門課程給予了充分的肯定,專家評語是以項目為導向,以任務驅動,符合高職教育教學特點,以提高學生的編程能力為宗旨,能較好符合企業對軟件人才的需求。
迄今為止,該專業共有一千七百余人修了這門課程,取得了豐碩的成果。我校代表隊參加了十屆浙江省大學程序設計競賽,共獲32塊獎牌,尤其去年今年連續兩次獲得??平M的特等獎,同時四次獲得優秀組織獎。除了ACM競賽,在藍橋杯比賽中我系學生也取得了不錯的成績。
通過這門課的學習,鍛煉了學生的邏輯思維能力和基本程序設計能力,為以后的工作和創業打下了堅實的基礎,2008級計應學生林清瑞,曾經參加ACM競賽并獲得銀獎,自主創業,建立了杭州安豆信息技術有限公司,從事手機游戲開發。2003級計應學生黃道笑,自主創立了杭州五角星科技有限公司,從事網站開發。2010年公司銷售額超過了200萬;2011年被評為杭州市高新技術企業;2012年被評為杭州市雛鷹計劃企業。
六、課程特色
這門課程特色:以賽促教,賽教結合。把ACM競賽平臺里面的題目融入到平時的教學過程中,也會把平時表現好的學生充實到競賽集訓隊伍里面;教學結合,學以致用,教師指導,學生自主研發一些小游戲,比如石頭剪刀布的游戲。
篇12
目前,計算思維是計算機界關注的一個熱點。自2010年7月,九校聯盟(C9)西安會議提出計算機基礎教學的核心任務是計算思維能力的培養以來,國內多所高校圍繞計算思維與計算機基礎教學改革進行了深入的研究和實踐,發表了一些計算思維研究和實踐方面的論文。在新的形勢下,如何在大學計算機基礎教學中,培養學生在各自專業領域中應用計算機和計算思維解決實際問題的能力,對于提高學生的創新能力和信息素養都具有重要的意義。
1 計算思維
計算思維是美國卡內基梅.隆大學計算機系主任周以真(Jeannette M. Wing)教授提出的。周教授認為:計算思維 ( Computational Thinking )是運用計算機科學的基礎概念去求解問題、設計系統和理解人類的行為,其本質是抽象和自動化。
計算思維是數學思維、邏輯思維和工程思維的綜合,是與閱讀能力、寫作能力和算術思維并列的第四種能力,能夠提升人類的能力。就像識字、做算術一樣,是人人都必須具備的思維方式。
2 VFP程序設計教學現狀分析
Visual FoxPro(簡稱VFP)課程是面向高等學校非計算機專業學生開設的計算機基礎教育課程。VFP作為計算機程序設計的一門基礎課程,應注重學以致用。學習的重點不只是編寫程序,而是學習算法思想與問題求解的思路,增強學生計算思維能力的培養。
但是,從目前VFP程序設計教學,尤其是非計算機專業現狀來看,普遍存在以下問題。
2.1 課程學時少
隨著計算機技術內容的不斷更新,以及信息技術在中小學的普及,在新的形勢背景下,計算機基礎教學面臨著新的挑戰。人們對計算機基礎教學產生了片面的認識。認為“計算機會用即可”、“計算機即編程”,造成學時被壓縮,資源得不到充分的配置和利用。就我校的計算機基礎教學改革來看,“大基”的學時由64變成32,時間壓縮了一半,學生計算機基礎水平有待提高。
VFP的教學課時相對“大基”課時雖然要多些,但對于非計算機專業的學生來說,計算機語言底子更是薄弱,想在短期內掌握一門計算機語言,十分不易。對于授課教師而言,既要完成教學目標,又要學生掌握計算機語言使用方法,并且在教學中形成學生的計算思維能力是非常困難的事情。
2.2 以語言知識為主,偏理論,輕實踐
在實際教學中,很多老師以語言知識為主線,詳細介紹語法規則等細節內容,上機操作多以驗證為主,偏重考試內容而不是編程,這和課程的教學目的是相悖的。導致學生學習積極性不高,感到枯燥,學的不牢,編程能力和分析解決實際問題的能力沒有得到提高,更談不上運用計算機解決專業問題。
3 以培養計算思維為核心的VFP程序設計教學方法
3.1 以計算思維為主線,改進教學內容和教學方法
計算思維養成以計算能力的培養為基礎,對教學內容的改革,不是完全改變原有的課程內容,而是內容的再組織與優化,突出核心內容和方法。
教師在上第一節課時可以介紹一個完整的系統,比如學生信息管理系統。在演示過程中告知學生,每項功能可由哪些知識實現,讓學生對本門課程有一個系統開發的概念。并了解VFP數據庫管理系統在各個領域的應用。學習本門課程的目的,不是為了順利通過考試,而是能夠獨立開發一個完整的系統,并能解決自己的專業問題。
在實際的教學中,以培養學生計算思維能力為核心任務,采用“任務驅動”和“案例教學”的方法,針對不同的專業和不同層次的學生設計教學任務。按照“提出問題—分析問題—尋找解決問題的方法—介紹解決問題的方法和知識—方法和知識推廣—課后作業和拓展”的教學片段設計思路,對學生進行計算思維的實踐。
3.2 注重程序設計思想和算法訓練
計算思維的本質是抽象和自動化。在教學過程中,可將相同或相近的知識點整合,設計相應教學任務,讓學生了解程序設計思想和程序設計過程。如求解方程、求階層等任務,可先讓學生用數學方法來求解,再引導學生用抽象的計算機語言來實現。
啟發學生利用多種技術、多種算法解決同一問題,圍繞問題求解和設計能力培養。例如求解“1+2+3+……+100”,可分別考慮用for循環、while循環來實現。采用有趣的案例,比如“猜數游戲”,“幸運7”,“測試體重”等,用多種思路設計與多種編程方法實現。
3.3 以上機實踐為重點
VFP是實踐操作性很強的一門課程,學生只有親自動手編寫代碼,調試程序,才能掌握和理解所學的知識,了解編程的思路和方法,訓練思維能力。對此,教學過程中可以考慮以下方法:
3.3.1 設計合理的實驗內容
由于實踐課時限制,學生練習時間較少,首先要使學生熟練掌握基本的語言知識,具備基本的編程和調試能力,才能逐步引導深入。實驗內容包含主要重點內容,難度適中,有一些讓學生發揮的余地,在書上能找到所有知識點和類似代碼,但又不是完整的照抄,有助培養學生的設計能力。
3.3.2 實驗任務具有趣味性和綜合性
通過實驗任務的趣味性、綜合性等來增強實驗內容的難度,從而強化計算思維訓練。如在“幸運7”游戲案例中,把一些枯燥和不易理解的知識,變成有趣的游戲。不僅讓學生理解面向對象程序設計的相關概念,并對應用程序的開發流程有了一個綜合的認識。通過拓展知識,讓學生實現多位數的幸運數字游戲設計。通過反復訓練,以提升學生計算思維能力。
3.3.3 安排課程設計實驗
在程序設計課程的最后環節,安排課程設計?;蚪Y合實例,完成一個項目。為學生提供一個全面考查學生水平的機會,對所學知識進行融會貫通。
4 結束語
計算思維的教育,是一種普適教育,對任何類型的學生都需要培養。什么是計算思維,如何去理解它,每一位教師都應該充分地認識到它的重要性。只有改變了教師的意識,才能把計算思維的培養貫徹到自己的教學中,才能培養學生的研究創新能力,提高學生的信息素養。面向計算思維的計算機基礎教學改革任重而道遠,還需要不斷的探索和改革。
參考文獻:
[1] 何欽銘.計算機基礎教學的核心任務是計算思維能力的培養[J].中國大學教學,2010(9).
篇13
中圖分類號:G642.0 文獻標識碼:A 文章編號:1007-0079(2013)16-0094-02
2012年7月16日,“第一屆計算思維與大學計算機課程教學改革研討會”在西安交通大學召開,中國科學院陳國良院士和多名計算機教學名師、專家以及近三百名在國內高校承擔計算機課程教學的教師參加了此次研討會,大會探討了如何在大學計算機課程中引入計算思維,如何建立計算思維教學體系以及如何讓學生養成用計算思維方式來思考和解決專業問題等內容。
一、計算思維產生的背景及現狀
2006年3月,美國卡內基·梅隆大學的華裔女科學家周以真(Jeannette M. Wing)教授在美國計算機權威期刊《Communications of ACM》撰文提出計算思維(Computational Thinking)[1]的概念和詳細定義。周以真教授指出計算思維是運用計算機科學的基礎概念進行問題求解、系統設計和理解人類的行為,它是涵蓋了計算機科學之廣泛性的一系列思維活動。
計算思維是隨著近十年來美國對計算科學重要性的認識逐漸提高而提出的。近些年來,美國大學計算機基礎教育出現了學生對計算機基礎課程興趣逐漸下降,如中途放棄課程或通過抄襲及作弊來完成課程的教育危機。2005年6月,美國總統信息技術咨詢委員會(President’s Information Technology Advisory Committee,PITAC)給美國總統提交了報告《計算科學:確保美國競爭力》(Computational Science:Ensuring America’s Competitiveness),[2]報告中陳述21世紀科學上最重要的以及經濟上最有前途的前沿研究都有可能通過熟練掌握先進的計算技術和運用計算科學得到解決,計算本身也是一門學科,它可以促進其他學科的發展。計算思維一經提出,美國的教育專家們看到了解決這兩者矛盾的希望。2010年周以真教授再次在刊物上發表文章闡述計算思維的基本思想,而近年來美國各大高校都在修訂其本科生計算機科學課程的計劃,美國麻省理工大學、[3]斯坦福大學[4]和卡內基·梅隆大學[5]等著名高校紛紛設置了面向全校的計算思維的通識課程。除美國外歐洲也開始重視計算思維的培養,2010年8月,英國皇家協會也了以計算思維為出發點的為期18個月的“學校計算教學方法”項目。
中科院自動化所的王飛躍教授率先把計算思維引入國內,王飛躍教授撰文《計算思維與計算文化》,[6]他希望能借“計算思維”的東風將中國傳統世故人情的“算計文化”反正成現代科學理性的“計算文化”,以提高民族的整體素質。2010年10月中國科學技術大學的陳國良院士在“第六屆大學計算機課程報告論壇”上倡議將計算思維引入大學計算機基礎教學后,計算思維得到了國內眾多計算機基礎教育者和研究者更廣泛的重視。中國科學院計算技術研究所李國杰院士、[7]清華大學軟件學院孫家廣院士[8]和中國科學院計算技術研究所徐志偉總工[9]等多位專家在這方面進行了有效的探索。
二、計算思維與大學程序設計課程
1.大學程序設計課程教學目標
大學程序設計課程是許多高校理工科(包括部分文科)專業的必修公共基礎課程之一,《中國高等院校計算機基礎教育課程體系(2008)》[10]對“程序設計基礎”課程提出的培養目標主要有兩個:學習問題求解的思路和方法,理解在計算機上是如何具體實現算法的,這也就意味著大學程序設計課程學習的重點不僅僅是編寫程序,而更重要的是學習算法思想與問題求解方法。但是大學程序設計課程傳統的教學方法存在諸多的問題。
2.大學程序設計課程存在的問題
(1)教師在課程講授過程中容易陷入語法和句法的細枝末節中而忽視基本問題求解方法的講解。
(2)上課時常常是教師先講解學生后上機實驗,學生屬于被動學習,整個學習過程中其參與度不高,聽課后學生通常按照教師的想法按部就班完成實驗。這種教學策略只能提高學生上機實驗能力,而學生思維能力的養成沒有得到專門的訓練。
(3)傳統的計算機程序設計課程還存在與專業背景結合不緊密的情況,在教學過程中通常不考慮學生的專業背景,學生在學完課程后常常會感到迷茫,不知道如何用程序設計方法解決自己的專業問題。
3.將計算思維融入課程教學
要想改變目前這種傳統教學模式,消除其弊端,需要對程序設計課程的教學內容、教學方法和手段進行改革,融入計算思維培養的教學方法,讓學生理解計算環境、問題求解過程中各類構造能力,如對象構造、過程構造和驗證構造等,以及通過計算能解決什么問題和使用計算來解決問題的過程、方法和步驟,讓學生學會如何通過約簡、嵌入、轉化和仿真等方法得出能求解一個困難問題的方法,學會利用啟發式推理來尋求解答,即在不確定情況下進行規劃、學習和調度,同時培養學生以計算思維的方式來分析、理解和解決本專業領域問題。
三、以計算思維為目標的大學程序設計課程培養方法
南京大學(以下簡稱“我?!保┯嬎銠C科學與技術系大學計算機基礎教學部在2008年教學改革中,對于程序設計課程提出了層次化教改方案,并通過課程設計等方式提高學生解決問題的能力,同時也進行了將專業知識與程序設計課程相結合的嘗試性工作,獲得了院系和學生的好評,但是在整個過程中尚欠缺對于計算思維能力的顯式培養,學生對問題求解的抽象能力、抽象表示、抽象思維以及形式化證明等能力缺乏,由此需要對現有的教學模式和教學評價體系等做相應修改,將計算思維切實融入到程序設計課程中,教會學生如何學習問題求解的思路和方法,并讓學生在經由計算思維培養后能更好地解決專業問題。以下分別從改革的主要內容、實施步驟和具體案例來進行說明。
1.主要內容
以計算思維為目標的大學課程設計課程培養方法的主要內容有:
(1)調研我校各專業對于程序設計課程的一般要求和專業要求,探索如何設計以計算思維為主線的教學方法體系。
(2)調研國內外其他高校程序設計課程中計算思維培養的教學情況,學習借鑒成功的經驗和方法。
(3)在我校和國內外調研的基礎上建立以計算思維為主線的教學方法體系,修訂和建設相關的課程資料、案例和實踐項目,通過這些有針對性的訓練讓學生掌握通過計算思維來解決一些實際問題的能力。
(4)建立培養學生以計算思維的思想去理解、抽象本專業領域問題的能力的教學方法,使得學生能夠擁有以計算的眼光看待問題的素養,從而能夠分析、抽象、分解、解決自己研究領域問題,并具有足夠的自學能力去獲得完成以上各階段任務所需的知識和技能。
2.實施步驟
根據主要內容制定了如下的實施步驟:
(1)通過搜集和閱讀國內外計算機程序設計課程教學資料和計算思維相關論文、開會研討和個人總結等方式,對現有程序設計課程教學方法進行改進,圍繞計算的本質和讓學生以計算的方式思考為中心,完成修改現有課程教材、改進課程教學計劃等任務。通過這一階段的基礎工作,能夠讓教師深刻理解計算思維的本質,建立以計算思維的培養為核心的教學理念,更好地指導程序設計課程的教學。
(2)改進和設計以計算思維方式分析和解決各專業共同面對的研究問題的教學方法。設計教學案例,能夠讓學生理解從計算思維出發思考,以計算的方式表達、分析和解決問題的整個過程;設計實驗項目,讓學生嘗試使用計算思維來表達和解決一些典型但足夠簡單的問題,從而加深對計算本質的理解并掌握足夠的基礎技能。這一階段教學方法的應用,應使得學生能夠掌握實踐計算思維的基本技能,并能夠讓學生在這個計算背景知識的基礎上,實現解決問題的各個步驟,而最重要的是,在這個過程中,讓學生理解獨立于具體實踐技術之外的計算思維本質,從而使得學生在轉換到另一個具體實踐技術背景下時,也能知道應用計算思維解決問題的各個階段應該做什么,需要獲取欠缺的哪些知識,從被動學習變為主動學習。
(3)在針對所教院系應屆和往屆學生及院系教學相關人員通過調查問卷和座談等形式收集專業典型案例的基礎上,建設利用計算思維解決學生所在專業領域問題的教學方法。通過緊密結合學生的專業背景,提煉此專業的一些典型并能體現計算解決方法優勢的問題,使用少部分問題作為計算思維應用的殺手級應用,讓學生理解計算思維如何應用到本專業研究中。使用大部分典型問題設計若干實踐項目,以指定實踐技術手段和不限定實踐技術手段并用的形式,通過學生獨立完成、小組完成、分組討論以及完成項目論文等方式,培養學生在本專業領域應用計算思維所需的一系列能力。
3.案例設計
在改進和設計以計算思維方式分析和解決各專業共同面對的或不同專業各自面對的研究問題的教學方法時,設計了許多教學案例、實驗作業和課程設計項目,總體來說是以問題驅動的方法先將問題提出,然后再由學生分析和思考如何設計和解決問題并提出不同的方案,再對各種方案進行分析比較后選擇優勢最明顯的一種作為最終的方案。
以講授高級語言翻譯環境為例。以往的教學主要是灌輸式的,將流行的翻譯環境進行綜合介紹:教師首先介紹每個編譯器/解釋器的菜單項的功能、操作方式和獨有的特征等;學生按照教師的介紹選擇某一種編譯器/解釋器進行操作并熟練掌握。
但這種教學方式導致學生對編譯器/解釋器的理解只流于表面,并沒有真正理解編譯器/解釋器這種計算環境的本質特征,學生換一種編譯器/解釋器或者遇到特殊問題時就沒法很好地利用現成的計算環境。
為此,需要改變學生理解高級語言翻譯環境的教學方式。而我們在設計新的教學案例時著重對于學生“思想”和“方法”的培養,讓學生深刻理解問題的本質。新的教學方式從高級語言和機器語言的關系入手,具體步驟為:
(1)用一個簡單的實現介紹高級語言和機器語言的特征和關系,讓學生理解高級語言翻譯這種計算環境的必要性和重要性。
(2)引導學生思考如何將高級語言翻譯為機器語言,理解解釋和編譯這兩種翻譯方式的特征。
(3)接著探索一個高級語言翻譯環境需要的功能模塊有哪些,讓學生分組討論并設計出基本的功能模塊,教師根據學生設計的功能模塊進行點評,探討哪些是合理的功能模塊和沒有必要的功能模塊。
(4)在功能模塊基本確定的基礎上教師選擇至少兩種高級語言翻譯環境供學生進行觀摩評價,讓學生學習成熟的翻譯環境是如何設計的,并了解翻譯環境的高級功能。
(5)在對翻譯環境有了本質的理解后學習可自行操作編譯器/解釋器,并且對于不同的翻譯環境也能很快理解并運用。
從教學、實驗和課程設計等多個環節中引入計算思維方式培養的案例實施結果來看,利用這種改進的問題構造、問題表示和問題解決的引導性、交互性教學方式,能有效地提高學生的計算思維能力。
計算思維的培養不是一蹴而就的,還需要更多的努力,但是應該看到計算思維是一種可以面向所有人,在任何地方都可以培養的一種思維活動,作為高校教師,應該也可以通過自身對于計算思維認識的提高而激發學生能夠在抽象的多個層次上進行主動積極的思維。
參考文獻:
[1]Jeannette putational Thinking[J].Communications of the ACM,2006,49(3):33-35.
[2]President’s Information Technology Advisory Committee. Computational Science:Ensuing America’s Competitiveness[EB/OL].http://nitrd.gov/pitac/reports/20050609_computational/computational.pdf.June 2005.
[3]MIT.Introduction to Computer Science and Programming[EB/OL].http://ocw.mit.edu/courses/ electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008.
[4]Stanford.Introduction to Computer Science | Programming Methodology[EB/OL].http://see. stanford.edu/see/courseinfo.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111.
[5]CMU.Principles of Computation[EB/OL].http://cs.cmu.edu/~tcortina/15-105sp09.
[6]王飛躍.計算思維與計算文化[N].科學時報,2007-10-12.
[7]中國科學院信息領域戰略研究組.中國至2050年信息科技發展路線圖[M].北京:科學出版社,2009.