版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、抗震救災(zāi)背后的測繪新科技 摘要:本文提出了一個對于程序設(shè)計入門教學(xué)的改革方法,利用Alice三維虛擬世界幫助學(xué)生理解程序設(shè)計的流程及基本概念。同時根據(jù)教學(xué)實踐總結(jié)并分析了Alice作為初學(xué)程序設(shè)計環(huán)境的利與弊,并對如何將Alice課程同計算機現(xiàn)有課程體系的整合進行了探討。<br>關(guān)鍵詞<br>本文來自:計算機畢業(yè)網(wǎng) :Alice;虛擬世界;面向?qū)ο?;對象?yōu)先;三維動畫<br><br>1引言<br><br>如何對基礎(chǔ)相對薄弱的高職高專學(xué)生實施程序設(shè)計的入門教學(xué),一直受到計算機教育者的關(guān)注。目前,在教學(xué)過程中所面臨的主要困難,
2、是在講解煩瑣的語法知識同時幫助學(xué)生學(xué)會抽象算法,通過程序的函數(shù)、方法去實現(xiàn)功能。在過去的幾十年,國外計算機教育者開發(fā)了許多軟件幫助初學(xué)者學(xué)習(xí)程序設(shè)計,其中包括最早的Karel the Robot,以及持續(xù)到今日的Jeroo,Greenfoot等。其中,三維虛擬世界的圖形程序設(shè)計環(huán)境Alice,在國外大學(xué)程序設(shè)計入門教學(xué)中的應(yīng)用日益得到關(guān)注1。2006年美國國家科學(xué)基金 (NSF) 關(guān)于應(yīng)用Alice進行教學(xué)的會議吸引了來自各地的學(xué)者,Alice相關(guān)出版物也陸續(xù)出現(xiàn)。國外計算機教育領(lǐng)域?qū)lice所帶來的積極因素表示了肯定23,雖然在國內(nèi)尚未普及,但是我們相信在未來幾年Alice將受到國內(nèi)計算機
3、教育領(lǐng)域的關(guān)注。<br><br>2Alice的概述<br><br>Alice是由美國卡耐基·梅隆(Carnegie Mellon) 大學(xué)開發(fā)的以學(xué)習(xí)者為中心,支持面向?qū)ο蟪绦蛟O(shè)計的三維虛擬世界動畫教學(xué)工具軟件,由提供免費下載。Alice的顯著特點是支持圖形化程序設(shè)計,能夠生成三維虛擬世界中的對象,將場景的設(shè)計同程序設(shè)計結(jié)合起來。學(xué)生可以創(chuàng)建不同的對象和它們的行為構(gòu)建虛擬世界中的不同場景。其中,虛擬世界的組成對象(人物、動物、場景等)可以從擴展的三維對象圖庫中進行選擇。<br>Alice提供拖放的圖形用戶界面,使得學(xué)生集中精力
4、于程序設(shè)計的核心程序結(jié)構(gòu)的組成。圖形界面提供了組織對象、和對象成員(接口和數(shù)據(jù))和方法的圖形化的提示。Alice界面根據(jù)功能分為5個區(qū)域 (如圖1所示),其中包括對象樹,顯示的是場景中出現(xiàn)的對象;World窗口,將對象添加到該窗口中進行場景的設(shè)計;事件區(qū),對事件的響應(yīng)進行編程,函數(shù)方法細節(jié)區(qū),顯示各個對象的屬性、方法和函數(shù);代碼編輯區(qū),通過將對象的屬性、方法、函數(shù)拖拉到該區(qū),根據(jù)提示自動生成代碼。<br><br>Alice圖形化拖放界面將語法學(xué)習(xí)同語義學(xué)習(xí)分離,使學(xué)生創(chuàng)建一直處于可運行狀態(tài)的代碼。因此在這個過程中,不會出現(xiàn)語法錯誤,僅僅可能出現(xiàn)邏輯錯誤,但是不影響整個程
5、序的運行。<br><br>3Alice的教學(xué)特點<br><br>3.1寓教于樂的教學(xué)方式<br>寓教于樂的教學(xué)方式主要體現(xiàn)在通過輸出結(jié)果的動態(tài)圖形化。由于三維圖形輸出方式以容易解釋且直觀的方式給學(xué)生展示了程序設(shè)計的結(jié)果,因此,圖形化的輸出可以幫助學(xué)生理解如何控制結(jié)構(gòu)影響輸出,一旦程序運行結(jié)果并非預(yù)期結(jié)果,使得學(xué)生非常容易定位錯誤代碼。<br>圖形輸出的另一個好處在于增強學(xué)生對于程序語句的理解。三維動畫在視覺上表達了對象的當前狀態(tài),學(xué)生編寫代碼能直觀地了解到預(yù)期的狀態(tài)變化。<br>寓教于樂還體現(xiàn)在Alice在教學(xué)
6、過程中能夠培養(yǎng)學(xué)生編程信心。例如,學(xué)生編寫的代碼出現(xiàn)錯誤,程序并不會因此停滯不前,而僅僅是在輸出的動畫中給人以意想不到的結(jié)果。因此,Alice在培養(yǎng)學(xué)生關(guān)于程序設(shè)計能力方面的信心具有一定成效。<br>如圖2所示,圖中顯示的是Hunt程序 (狼追捕兔子) 運行結(jié)果的的動畫場景,通過判定兩者間的距離來確定追趕的運動軌跡,當兩者的距離小于一定值得時,兔子將發(fā)出求救信號。相關(guān)代碼如圖3,其中通過whiteRabbit 的函數(shù) (function) distance to 設(shè)置與wolf的距離小于0.9時,調(diào)用whiteRabbit的方法say() 發(fā)出求救信號。該程序包括了程序設(shè)計中的順序
7、結(jié)果 (Do inorder) 、條件語句(if),線程 (Do together) 等知識點的學(xué)習(xí),使得學(xué)生在設(shè)計場景的同時理解了原本抽象的概念。<br><br><br>3.2對象優(yōu)先教學(xué)策略<br>在傳統(tǒng)的面向?qū)ο蠼虒W(xué)中,教師往往過分強調(diào)知識體系,遵循先變量后對象講解的過程。因此,初學(xué)者常常會迷失在對變量定義、命名初始化等一些語法規(guī)則上,而忽略了對象甚至是程序結(jié)構(gòu)的學(xué)習(xí)。<br>Alice環(huán)境采用了目前較為流行的對象優(yōu)先教學(xué)策略,通過將對象的可視化進行面向?qū)ο蟪绦蛟O(shè)計概念的教學(xué)。每個Alice虛擬世界中的可視單元中都是一個對象,因
8、此對于教師非常容易地遵循對象優(yōu)先的教學(xué)方法。在上例中,whiteRabbit是這個虛擬世界中的一個對象,它具有相關(guān)的屬性、方法和函數(shù)。程序設(shè)計者只需要將左邊列表中的對應(yīng)項拖曳至右邊的代碼編輯區(qū),根據(jù)提示信息就能方便地實現(xiàn)特定的功能效果。整個設(shè)計者過程中,學(xué)生只需要考慮對象及程序的執(zhí)行流程而不需要涉及太多的語法。<br>3.3團隊學(xué)習(xí)的方式<br>在Alice的實際演練中,我們引導(dǎo)學(xué)生會根據(jù)所做的項目自由分組討論,去設(shè)計實現(xiàn)相關(guān)動畫效果。在上面Hunt程序中,如果由一個小組進行合作編程,往往可以將任務(wù)分解成程序運行的腳本編寫,也即劇本的編寫;wolf運動的方式;Rabbi
9、t運動的方式;音響效果等。當程序設(shè)計的運行結(jié)果沒有達到預(yù)期效果時,他們會聚集在一起分析問題、解決問題。通過分工合作進行學(xué)習(xí)程序設(shè)計的開發(fā),在一定程度上培養(yǎng)了他們的團隊合作意識。<br><br>4Alice的教學(xué)實施方法<br><br>在未來幾個學(xué)期中,我們將在高職高專的計算機程序設(shè)計入門教學(xué)中將Alice課程將分階段、按步驟同現(xiàn)有的課程提議進行整合。<br>4.1第一階段獨立授課方式<br>Alice程序設(shè)計可以作為一門課程單獨教授,這種方式的好處在于,一個學(xué)期中學(xué)生僅僅學(xué)習(xí)一種開發(fā)環(huán)境,不容易產(chǎn)生混淆。它的弊端是對于后續(xù)
10、程序設(shè)計開發(fā)課程的學(xué)習(xí)很難保持連續(xù)性。如果后續(xù)程序設(shè)計的課程(例如C+,或Java)的講解不是以Alice進行類比講解,那么Alice作為程序設(shè)計語言入門工具的優(yōu)勢可能消失。因此,如果將Alice作為獨立課程,那么一定要在后續(xù)課程中明確地將兩門課程進行過渡銜接。<br>4.2第二階段交叉教學(xué)方式<br>將Alice同其他高級程序設(shè)計語言課程(例如Java) 在同一個學(xué)期內(nèi)交替講授。首先在Alice中表達式、變量、控制流程等基本概念進行講解,使得學(xué)生對抽象概念有了直觀了解后,接著將這些概念在Java再現(xiàn)。類似地,所有概念基本上按照先在Alice中討論,然后在放到Java中
11、進行教學(xué)。這種方法的重點在于如何恰到好處地實現(xiàn)兩門課程的整合。<br>4.3第三階段階段教學(xué)方式<br>將Alice同Java開設(shè)在同一學(xué)期,分成兩個階段進行,先將Alice講授56周,主要講授Alice基本應(yīng)用以及面向?qū)ο蟪绦蛟O(shè)計中的方法、參數(shù)和繼承等概念,接下來的教學(xué)周進行Java的教學(xué)。在這個階段,教師可以提供給學(xué)生一個語法或術(shù)語對照表,把Alice和Java中的概念一一對應(yīng)起來,幫助學(xué)生從語法上進行過渡。學(xué)生在初期可能會感到不適應(yīng),這是由于缺少Alice圖形畫的直觀顯示,許多學(xué)生對于如何組織語句會感到困惑。因此這個階段,教學(xué)重點是幫助學(xué)生從拖曳生成代碼過渡到鍵盤
12、輸入代碼,同時將變成重心放到語法學(xué)習(xí)上。圖4演示了從Alice代碼到Java代碼的過渡。<br>目前,我們進行的主要以獨立授課方式為主,并以選修課、興趣小組的方式在各個年級進行試點,這將為日后Alice真正融入計算機教學(xué)課堂做好充分準備。<br><br>5結(jié)束語<br><br>將Alice三維動畫場景的設(shè)計應(yīng)用于程序設(shè)計教學(xué)中,給整個計算機教育帶來了耳目一新的感覺。與此同時,與Alice相關(guān)的教學(xué)方法改革包括對象優(yōu)先等教學(xué)方法等也將在程序設(shè)計教學(xué)中日益得到推廣。當然,我們也發(fā)現(xiàn)了Alice存在的一些缺陷。盡管避免語法錯誤能增強學(xué)生學(xué)習(xí)
13、的自信,但是如何選擇正確的點將Alice過渡到實際開發(fā)語言的學(xué)習(xí) (C+或Java) 的學(xué)習(xí)將是我們下一階段研究的重點。 <br><br>參考文獻<br>1 Adams.Joel. Alice in Action. Computing Through AnimationJ.Course Technology,2006. <br>2 Dann, W., Cooper, S. and Pausch.R.Learning to Program with AliceM.Prentice Hall,2006. <br>3 Herbert, Ch
14、arles W.An Introduction to Programming Using Alice, Course Technology, 2006. M Jeroo, 2006. Online. Internet. Sept. 8, 2006. Available WWW: <br>4 Kelleher, C. and R. Pausch. Lowering the barriers to programming:.A taxonomy of programming environments and languages for novic
15、e programmersJ.ACM Computing Surveys 37(2),Jun. 2005: p. 83-137. <br> </p> <p> </p> <p> </p> 面向?qū)ο蟮南到y(tǒng)設(shè)計(第2版)(ISBN:9787302147985邵維忠、楊芙清編著,清華大學(xué)出版社出版)是介紹面向?qū)ο笤O(shè)計方法的著作,是我們的前一本著作面向?qū)ο蟮南到y(tǒng)分析(第2版)的姊妹篇,兩本書可構(gòu)成一個完整的面向?qū)ο蟮姆治雠c設(shè)計方法體系。<br>面向?qū)ο蟮脑O(shè)計(OOD)是在面向?qū)ο蟮姆治?OOA)基礎(chǔ)上繼續(xù)運用面向?qū)ο蠓椒?/p>
16、解決軟件生命周期中設(shè)計階段的問題,產(chǎn)生一個滿足用戶需求,并且完全可實現(xiàn)的系統(tǒng)模型,即OOD模型。<br>以往大部分關(guān)于面向?qū)ο蠓治雠c設(shè)計(OOA&D)的著作都是以論述OOA為主,對OOD的論述則過于簡略。對軟件生命周期的設(shè)計階段需要解決的大量實際問題缺乏全面、深入的討論和切實可行的面向?qū)ο笤O(shè)計策略。作為在當前科學(xué)技術(shù)背景下出版的OOD著作,在學(xué)習(xí)和借鑒前人研究成果的基礎(chǔ)上,我們力求在以下方面取得進步:<br><br>1系統(tǒng)地闡述00A與OOD的理論體系<br>本書從區(qū)別早期的00D和基于OOA的OOD入手,通過討論二者在內(nèi)容和特點上的不同
17、,在概念上澄清了關(guān)于什么是OOD的問題。把面向?qū)ο蟮挠^點運用于整個軟件生命周期,在此前提下對什么是OOD給出更確切的定義。同時詳細地論述了OOA和OOD之間的關(guān)系。<br><br>2充實和完善OOD的內(nèi)容<br>在面向?qū)ο蟮能浖_發(fā)中,OOD是軟件生命周期中的一個大階段。在這個階段中有大量的技術(shù)問題需要解決,需要建立一個可實現(xiàn)的系統(tǒng)模型。本書的目標是向讀者提供一種內(nèi)容比較完善、策略具體、可操作性強的OOD方法,其中包含了普通應(yīng)用系統(tǒng)的設(shè)計階段需要解決的大部分問題,包括全局性設(shè)計決策和局部的模型細化兩個方面的問題。<br><br>3 充
18、分運用OO基本概念解決設(shè)計問題<br><br>我們在面向?qū)ο蟮南到y(tǒng)分析(第2版)中提出,在00A中應(yīng)該充分運用面向?qū)ο蟮幕靖拍?即目前大部分面向?qū)ο缶幊陶Z言能夠直接支持的概念)解決各種復(fù)雜的建模問題,限制擴充概念的引入。面向?qū)ο蟮南到y(tǒng)設(shè)計(第2版)依然堅持這一宗旨,沒有采用比OOA更多的面向?qū)ο蠼8拍?,更沒有采用諸如“模塊”、“塊,等非OO的建模元素。此外,本書對所有的設(shè)計問題都是運用面向?qū)ο蟮挠^點給出設(shè)計策略,使讀者能夠在軟件開發(fā)中完全采用面向?qū)ο蟮母拍詈捅硎痉▉斫⑾到y(tǒng)的設(shè)計模型。這意味著本書運用了盡可能少的建模概念解決了較多的設(shè)計問題。建模概念的簡練使本書提出
19、的方法更容易學(xué)習(xí)、掌握和使用,并使得OOA、00D和OOP在概念上保持高度一致,使模型與實現(xiàn)后的程序具有良好的映射關(guān)系。當然,為了做到這一點,本書給出了更強的過程指導(dǎo),告訴讀者如何運用一個精練的OO基本概念集合去解決各種復(fù)雜的建模問題。<br><br>4適應(yīng)當前計算機科學(xué)技術(shù)的新發(fā)展<br><br>目前,大量的新技術(shù)已被廣泛地運用到系統(tǒng)開發(fā)中。在這種形勢下,要求OOD方法做出相應(yīng)的發(fā)展。我們的目標是力求在OOD方法中體現(xiàn)計算機科學(xué)技術(shù)的新發(fā)展。本書的OOD方法是根據(jù)當前的技術(shù)背景提出的。針對在當前軟件開發(fā)中被廣泛采用的幾種主要技術(shù),分別給出相應(yīng)的
20、設(shè)計策略,并且用OO概念表達其設(shè)計決策。<br><br>5解決工程實踐中提出的問題<br><br>在本書的寫作過程中,作者曾經(jīng)以技術(shù)培訓(xùn)、工程指導(dǎo)、項目合作等多種方式與軟件企業(yè)界的人士進行接觸和交流。他們在運用面向?qū)ο蠓椒ㄟM行軟件開發(fā)時,常常在OOD階段遇到各種問題。其中有些問題在以往的著作中找不到現(xiàn)成的答案。這些來自工程實踐的問題對于OOD方法的研究和發(fā)展具有很強的促進作用。本書的許多內(nèi)容是針對這些問題開展研究并總結(jié)提煉結(jié)果的。<br>本書的第1版于2003年2月出版,數(shù)年來已多次重印。這次再版主要有以下變化:<br>&
21、lt;br>1按照面向?qū)ο蟮南到y(tǒng)分析從第1版到第2版的內(nèi)容變化,對本書的內(nèi)容做了相應(yīng)的修改與調(diào)整。<br><br>2根據(jù)UML20的最新版本和我國的“信息技術(shù)軟件工程術(shù)語”(GB/T114572006)國家標準等標準化文件,進一步規(guī)范了全書的術(shù)語和模型元素的表示法。<br><br>3在第7章對UMLlx的介紹和評論中,增加了引導(dǎo)讀者閱讀文獻53關(guān)于UML2.0相關(guān)內(nèi)容的線索。<br><br>4對全書的內(nèi)容進行了全面的審核和訂正,在文字表述方面比第1版更為準確和精練。 </p> <p> <
22、/p> <p> </p> 摘要:C、C+和Java等宿主語言是計算機專業(yè)必修的課程。本文指出了語言課程的教與學(xué)中存在的問題,并結(jié)合軟件開發(fā)方法對課程教學(xué)法作了積極地探索。采用啟發(fā)式教學(xué)、探究式教學(xué),激發(fā)學(xué)生的學(xué)習(xí)潛能,使之掌握編程思維和方法,對提高他們的自主學(xué)習(xí)能力、培養(yǎng)他們的創(chuàng)新精神有著積極的作用。<br>關(guān)鍵詞<br>本文來自:計算機畢業(yè)網(wǎng) :宿主語言;教學(xué)法;自主學(xué)習(xí)<br><br>Study and Practice on Teaching Method of Computer Language Course
23、<br>Bian Xiaoyong <br>(Department of Computer Science & Technology, <br>Wuhan University of Science & Technology, Wuhan 430081)<br>Abstract: The host languages such as C, C+ and Java are a compulsory course majored in computer specialty. This paper points out the prob
24、lems existing in computer language teaching, and combining with software developing approach makes a positive exploration of course-teaching methods. We try to use heuristic or exploring method of teaching, which can greatly inspire the potential ability of the students and their programming idea an
25、d method are trained. Its extremely helpful to improve their Autonomous Learning ability and to foster them mentally. <br>Key words: Host Language;Teaching Method;Autonomous Learning<br><br>C、C+和Java等計算機語言(也稱宿主語言)課程作為計算機專業(yè)重要的基礎(chǔ)課,在計算機專業(yè)本科教學(xué)和軟件開發(fā)中起著重要的基礎(chǔ)作用。對學(xué)生用計算機解決實際問題的思維能力訓(xùn)練也是非常重要的
26、。而學(xué)生掌握計算機語言類課程的程度將直接影響到計算機在其專業(yè)領(lǐng)域中的應(yīng)用,如何提高學(xué)生的程序設(shè)計能力和軟件開發(fā)思維將變得相當重要。<br>本文針對計算機語言教學(xué)中的一些共性問題進行分析,對一些面向研究型的教學(xué)法進行探索,例如圍繞以問題為主的教學(xué)法和“任務(wù)驅(qū)動式”教學(xué)法,能夠很好地培養(yǎng)學(xué)生的自主學(xué)習(xí)和創(chuàng)新思維能力。<br><br>1計算機語言教與學(xué)中存在的主要問題<br><br>在計算機語言課程教學(xué)中存在著這樣或那樣的問題,例如偏離教學(xué)目標、無法貫徹實施新的教學(xué)理念,等,這些問題歸根結(jié)底還在于教師“教”和學(xué)生“學(xué)”兩個方面的問題。<
27、;br>1.1教師“教”方面的問題<br>教師“教”是一個教學(xué)環(huán)節(jié)中的重要部分。教師除了傳授知識,還應(yīng)該精心組織教學(xué)活動,創(chuàng)設(shè)情境,啟發(fā)和引導(dǎo)學(xué)生學(xué)習(xí)。以下這些問題都會直接或間接地影響學(xué)生對語言課程的學(xué)習(xí)興趣。<br>(1) 沒有把握好理論教學(xué)和實例教學(xué)之間的尺度。高校計算機專業(yè)教師往往是“理論知識冗余,實戰(zhàn)經(jīng)驗貧乏”,特別是缺少即時編程及案例分析經(jīng)驗,這就制約了實例教學(xué)的開發(fā)應(yīng)用,學(xué)生的學(xué)習(xí)熱情無法調(diào)動起來。<br>(2) 缺少應(yīng)有的情境設(shè)計。教師在講解完某個知識點后一般要舉例予以說明。一些教師的做法是直接運行教程上的例子或讓學(xué)生看懂就行,而沒有創(chuàng)設(shè)
28、與實例有關(guān)的,盡可能真實的情境。例如對這樣的例子是否合適,有沒有更好的做法等問題情境,由此提出具體的編程要求。<br>(3) 強調(diào)語法或算法為主的教學(xué)。在教學(xué)中有些教師片面強調(diào)以語法教學(xué)為主或以算法設(shè)計為主的方式,前者缺少程序設(shè)計方法、算法設(shè)計與分析、軟件工程等方面的實訓(xùn),而后者只講解算法的設(shè)計。這樣學(xué)習(xí)的結(jié)果是弱于編程或在“虛無”中編程。<br>(4) 缺少服務(wù)于學(xué)生所學(xué)專業(yè)的理念。教師缺乏對學(xué)生已有的知識結(jié)構(gòu)和學(xué)習(xí)心理特點之間關(guān)系的研究,在教學(xué)設(shè)計時沒有充分考慮學(xué)生的專業(yè)特點而不加區(qū)分地采用同一種教學(xué)方法和策略,結(jié)果是學(xué)生沒能將程序設(shè)計的能力遷移到實際的工作和研究中
29、。事實上,學(xué)生最容易在所學(xué)專業(yè)上出成果。<br>因此,教師對如何“教”進行定位是一個很重要的環(huán)節(jié),它對教師提出了更高的要求。<br>1.2學(xué)生“學(xué)”方面的問題<br>學(xué)生基本上是在應(yīng)試教育環(huán)境下培養(yǎng)出來的,習(xí)慣于有教師監(jiān)督的學(xué)習(xí),容易產(chǎn)生依賴心理,常常滿足于課堂上聽懂,課后不去查閱相關(guān)書籍和知識。主要存在的問題有:<br>(1) 缺少編程訓(xùn)練和積累。計算機語言課程是一門實踐性非常強的課程,學(xué)習(xí)與掌握它們需要進行一定數(shù)量的、綜合性和有針對性的訓(xùn)練。大多數(shù)學(xué)生僅僅滿足于課堂部分理論知識的學(xué)習(xí)和鞏固,即使在有限的上機實踐中,也往往不注意集中訓(xùn)練和編程技
30、能方面的積累。因此難以達到“融會貫通”。<br>(2) 缺少相應(yīng)的編程設(shè)計方法。許多學(xué)生在寫C程序的時候,不論程序多大都用一個函數(shù)實現(xiàn),缺少模塊化的編程思想,在C+編程中難于捕捉和創(chuàng)建問題域模型,在Java編程中不能設(shè)計易于部署的可重用組件。因此他們不能掌握面向過程的編程方法、面向?qū)ο蟮木幊谭椒ê兔嫦蚪M件的編程方法。<br>(3) 習(xí)慣于監(jiān)督學(xué)習(xí)。學(xué)生長期以來囿于有教師指導(dǎo)和監(jiān)督的學(xué)習(xí)情境,他們的依賴性很強,這不利于開放式環(huán)境下的自我學(xué)習(xí),無法發(fā)揮他們的主體作用,也就無從談起他們在求知中的主動性和創(chuàng)造性。<br>(4) 缺少團隊合作精神。在布置大作業(yè)或課程設(shè)
31、計時,往往將一個大的課題分給課題小組,要求學(xué)生分工協(xié)作、共同討論方案,劃分模塊,并最終承擔一定的工作。在實際的開發(fā)應(yīng)用中,他們沒有意識到“學(xué)習(xí)團隊”的重要性,缺少交流和提不出問題,不能互相取長補短,最終影響到課題的完成。<br>教師在教學(xué)過程中,針對上述這些問題要及時引導(dǎo)學(xué)生,幫助他們走出誤區(qū),正確認識和對待語言課程的學(xué)習(xí)。<br><br>2新型教學(xué)法的運用<br><br>在計算機語言教學(xué)過程中,不僅要學(xué)習(xí)語言的語法和編譯器的相關(guān)知識,更重要的是要學(xué)習(xí)程序設(shè)計的思想和算法,培養(yǎng)編程思維。在各種教學(xué)法中尤以以問題為主的教學(xué)法和強調(diào)實踐活
32、動的教學(xué)法見長,它們很適合計算機語言類課程的教學(xué)。<br>2.1以問題為主的教學(xué)法<br>創(chuàng)新的動力在于不斷提問。問題是學(xué)生學(xué)習(xí)的驅(qū)動力,沒有問題便沒有深入。教學(xué)的目的就是激發(fā)和培養(yǎng)學(xué)生的問題意識。所提“問題”,也是以教學(xué)中相關(guān)的一些問題為主。這樣把學(xué)習(xí)知識的過程化解為提出問題、分析問題和解決問題的過程,促進學(xué)生創(chuàng)新精神和創(chuàng)新能力的發(fā)展。這一類教學(xué)活動的實際教學(xué)中以啟發(fā)式教學(xué)居多。如果在教學(xué)中很好地運用啟發(fā)式教學(xué),就可以調(diào)動學(xué)生學(xué)習(xí)的積極性和主動性,又能啟發(fā)學(xué)生的思維。例如,在C的main函數(shù)指針數(shù)組參數(shù)的學(xué)習(xí)中,許多學(xué)生無法理解基于指針數(shù)組參數(shù)方式交換字符串的例子。此
33、時,教師應(yīng)解釋兩個概念:argv內(nèi)存區(qū)和*argv內(nèi)存區(qū),也就是說這是兩個不同的內(nèi)存區(qū),根據(jù)數(shù)組表示和指針表示之間的法則,*argv也就是argv0(這是編譯器的逆行為),對*(argv+i)的操作就是對指針數(shù)組元素(下標i)的操作,而指針數(shù)組元素存放的是那些常量字符串的首地址。因而使用選擇法交換指針數(shù)組的值也就是交換指向那些“逆序”的字符串的首地址。在此基礎(chǔ)上學(xué)生就可以理解使用指針數(shù)組傳遞參數(shù)的過程。進一步,我們可以在“電子黑板”上畫出argv和*argv的內(nèi)存結(jié)構(gòu)圖,如圖2.1所示。<br> </p> <p> <p><br>在圖2
34、.1中,main函數(shù)的形參argv實際上就是一個二級指針變量,對應(yīng)的實參是由命令行參數(shù)構(gòu)成的字符指針數(shù)組的數(shù)組名。為什么*(argv+i)是指向第i個字符串而不是一個隨機地址值呢?這時引導(dǎo)學(xué)生思考二級指針參數(shù)之間的傳遞關(guān)系,就不難理解了。所以容易得出結(jié)論:必須對argv+i執(zhí)行間接訪問運算才能得到某個參數(shù)值。接著讓學(xué)生思考:能不能在程序運行后從終端輸入多個字符串保存在argvi中呢?學(xué)生要經(jīng)過一番思索和作橫向類比后才能得出結(jié)論:不能從終端輸入字符串并企圖用argvi保存第i個串。學(xué)生在結(jié)合第一個問題的深刻理解后就可以很快得出第二個問題的結(jié)論了。這對避免學(xué)生寫出邏輯錯誤的程序是很有裨益的,類似這
35、樣的問題情境還有很多。啟發(fā)式教學(xué)法對于C+和Java的教學(xué)也具有同樣的效果,在此不作討論。<br>2.2強調(diào)實踐活動的教學(xué)法<br>這一類教學(xué)活動以探究式教學(xué)模式為主?!叭蝿?wù)驅(qū)動式”是實施探究式教學(xué)模式的一種教學(xué)方法,是一種新型的、以學(xué)生自主學(xué)習(xí),教師加以引導(dǎo)的教學(xué)方法,它打破了傳統(tǒng)教學(xué)方法中注重學(xué)習(xí)的循序漸進和積累的循規(guī)蹈矩,不再按照教學(xué)內(nèi)容從易到難的順序,而是以完成一個“任務(wù)”作為驅(qū)動來進行教學(xué),完成教學(xué)任務(wù)。在完成“任務(wù)”的過程中,又培養(yǎng)了學(xué)生的自學(xué)能力、創(chuàng)新精神和合作意識。<br>在C語言的教學(xué)過程中,結(jié)合“任務(wù)驅(qū)動式”教學(xué)法,我們將鏈表和文件章節(jié)的
36、內(nèi)容整合起來布置一個大作業(yè)進行課堂教學(xué)。因此,將教學(xué)分為三個環(huán)節(jié)進行。<br>(1) 教師設(shè)計“任務(wù)”階段<br>在教學(xué)內(nèi)容的安排上,將以前的“知識點”為線索改用以“任務(wù)”為線索、以“子任務(wù)”為模塊組織教學(xué)內(nèi)容。教師應(yīng)創(chuàng)設(shè)任務(wù)情境,將整個“任務(wù)”分為8個“子任務(wù)”,即8個模塊,例如,鏈表創(chuàng)建模塊,鏈表輸出模塊,鏈表插入模塊,鏈表刪除模塊,鏈表排序模塊,鏈表釋放模塊,以及鏈表保存模塊和鏈表恢復(fù)模塊。在模塊的具體設(shè)計中體現(xiàn)出“任務(wù)”的層次性,即根據(jù)學(xué)生的實際水平來設(shè)計每一個模塊,針對不同的課題小組來設(shè)計不同層次的模塊。例如,鏈表創(chuàng)建要求用隊列方式或棧式建立,鏈表表頭指針的返
37、回分為3種不同的函數(shù)實現(xiàn)。整個任務(wù)確定之后,以一個“框架”程序的形式展示給學(xué)生。<br>(2) 學(xué)生自主探索“任務(wù)”階段<br>這是一個開放式的教學(xué)環(huán)節(jié),其目的在于讓學(xué)生在自主探索的過程中完成對新知識的理解和鞏固。在這個過程中,教師通過必要的講解和引導(dǎo)讓學(xué)生在情境中學(xué)習(xí)任務(wù)和完成任務(wù)。在學(xué)生學(xué)習(xí)遇到困難時,教師應(yīng)該為學(xué)生作適當?shù)闹更c,給學(xué)生提出問題,引導(dǎo)學(xué)生去探究。例如,學(xué)生在看到教程上使用二級指針變量返回鏈表表頭指針的函數(shù)模塊時就很納悶,這時教師就應(yīng)該講解這 摘要:本文從教學(xué)理念、教學(xué)模式、課程體系、教學(xué)內(nèi)容和教學(xué)組織、教學(xué)方法與手段等方面全面論述了哈爾濱工程大學(xué)計算
38、機實驗教學(xué)的改革與探索,并提出了今后實驗教學(xué)改革的重點內(nèi)容和目標。<br>關(guān)鍵詞<br>本文來自:計算機畢業(yè)網(wǎng) :計算機實驗教學(xué)改革;實驗教學(xué)體系與內(nèi)容;教學(xué)方法與手段;實驗教學(xué)示范中心<br><br>1引言<br><br>2004年,哈爾濱工程大學(xué)(以下簡稱“我?!?啟動了本科教育教學(xué)工作“九大體系”、“十大工程”建設(shè)項目,其中對實驗課程、實驗教學(xué)組織與管理、實驗室建設(shè)等內(nèi)容給出了執(zhí)行規(guī)范和實施辦法,并加大了對實驗教學(xué)和實驗室建設(shè)的投資力度。趁此東風,計算機科學(xué)與技術(shù)學(xué)院(以下簡稱“我院”)結(jié)合多年來在計算機實驗教學(xué)方面
39、的堅實積累,啟動了以“加強實踐實驗教學(xué)環(huán)節(jié),培養(yǎng)創(chuàng)新能力”為核心目標的實驗教學(xué)改革。經(jīng)過“十五”和“十一五”初期的建設(shè),逐漸形成了以“三化結(jié)合、六個并舉”為教學(xué)理念,“分層遞進教學(xué)、強化個性創(chuàng)新”為教學(xué)模式的實驗課程教學(xué)體系,取得了寶貴的經(jīng)驗和可喜的成果。<br><br>2實驗教學(xué)理念<br><br>我院高度重視實驗教學(xué),圍繞“加強實踐實驗教學(xué)環(huán)節(jié),培養(yǎng)創(chuàng)新能力”這一目標,我院提出了“三化結(jié)合、六個并舉”的實驗教學(xué)理念,將其作為指導(dǎo)實驗教學(xué)建設(shè)的指導(dǎo)思想。<br>“三化結(jié)合”是實驗教學(xué)體系構(gòu)建的基本思路?!叭笔侵杠浻布嶒灜h(huán)境一體
40、化、實驗平臺綜合化和實驗內(nèi)容系統(tǒng)化。通過“三化”的結(jié)合,使學(xué)生在完善的實驗環(huán)境下系統(tǒng)地完成計算機專業(yè)所要求的軟硬件實驗,提高綜合實踐能力,鍛煉創(chuàng)新思維,培養(yǎng)創(chuàng)新意識。<br>計算機技術(shù)的巨大進步和應(yīng)用需求的迅速提升推動了系統(tǒng)規(guī)模的大型化和功能實現(xiàn)的復(fù)雜化,這就要求計算機專業(yè)的畢業(yè)生具有對復(fù)雜大系統(tǒng)的分析能力和設(shè)計能力,而傳統(tǒng)的教學(xué)模式將計算機實驗分成了硬件和軟件兩個系列獨立進行,各行其道。這種單純的硬件(或軟件)實驗不利于學(xué)生軟硬件綜合素質(zhì)的培養(yǎng),傳統(tǒng)的硬件設(shè)計和軟件設(shè)計相分離的設(shè)計方法已經(jīng)成為阻礙設(shè)計和實現(xiàn)復(fù)雜大規(guī)模系統(tǒng)的關(guān)鍵因素?;谶@一認識,以培養(yǎng)學(xué)生軟硬件綜合素質(zhì)為出發(fā)點,
41、我院在2004年啟動了以“三化結(jié)合”為基本思路的實驗教學(xué)的改革和實踐。“軟硬件一體化的實驗環(huán)境”有利于培養(yǎng)學(xué)生軟硬件綜合素質(zhì);“綜合的實驗平臺”可以進行多課程內(nèi)容交叉的綜合實驗,有利于培養(yǎng)學(xué)生的綜合設(shè)計能力;實驗內(nèi)容的系統(tǒng)化有利于培養(yǎng)學(xué)生對復(fù)雜大規(guī)模系統(tǒng)化的分析、設(shè)計和實現(xiàn)能力。<br>“六個并舉”是實驗教學(xué)體系實施的指導(dǎo)原則?!傲鶄€并舉”是指:師資建設(shè)與實驗教學(xué)改革并舉,理論教學(xué)與實驗教學(xué)并舉,課內(nèi)實驗教學(xué)與課外開放實驗并舉,實驗開放與成績評定改革并舉,學(xué)科建設(shè)與實驗教學(xué)中心建設(shè)并舉,通識實驗教學(xué)與個性化教育并舉?!傲鶄€并舉”勾劃出了教學(xué)、師資、學(xué)科相互促進、協(xié)調(diào)發(fā)展的藍圖,為計
42、算機實驗教學(xué)的可持續(xù)發(fā)展提供了保障。<br><br>3實驗教學(xué)體系結(jié)構(gòu)<br><br>在“三化結(jié)合、六個并舉”教學(xué)理念的指導(dǎo)下,我院提出了“分層遞進教學(xué)、強化個性創(chuàng)新”的實驗教學(xué)模式,形成了特色鮮明的實驗教學(xué)體系(如圖1所示)。<br><br>圖1 計算機實驗教學(xué)體系結(jié)構(gòu)<br><br>“分層遞進培養(yǎng)”是指:<br>(1) 根據(jù)難易程度,將實驗內(nèi)容分為普及層次、中層次和高層次三個有遞進關(guān)系的層次,不同的實驗項目分屬于不同層次。在完成下一層次實驗項目的基礎(chǔ)上,學(xué)生可以進級到高一層次,采用遞
43、進的方式逐步完成所有實驗項目。<br>(2) 設(shè)置通識教育、專業(yè)教育和創(chuàng)新教育三個實驗平臺,用以開展這三個層次的實驗教學(xué)內(nèi)容。通識教育平臺對應(yīng)于計算機基礎(chǔ)實驗,學(xué)生科技社團的基本培訓(xùn),嵌入式系統(tǒng)、軟件程序設(shè)計等普及性講座。專業(yè)教育平臺對應(yīng)專業(yè)基礎(chǔ)實驗,課程設(shè)計,畢業(yè)設(shè)計,學(xué)生科技社團活動,大學(xué)生科研訓(xùn)練計劃,我校五四杯科技競賽。創(chuàng)新教育平臺對應(yīng)國家級(國際級)嵌入式系統(tǒng)競賽、ACM/ICPC程序設(shè)計大賽及其他國家級(國際級)競賽,自主研發(fā)和創(chuàng)新類項目,實際科研項目。<br>“強化個性創(chuàng)新”是指:<br>(1) 在各層次實驗項目的教學(xué)中,逐步強化學(xué)生創(chuàng)新能力的
44、培養(yǎng),要求每個學(xué)生在完成通識教育平臺下的實驗項目基礎(chǔ)上,必須進行與其能力匹配的科技創(chuàng)新實驗項目。<br>(2) 充分尊重每個學(xué)生的個性特點,為有突出能力的學(xué)生定制“因材施教”的實驗教學(xué)項目。<br>(3) 對“拔尖”學(xué)生實行跟蹤培養(yǎng),直接參與實際科研項目的研究工作,這些學(xué)生畢業(yè)后可直接“保研”到科研研究室,繼續(xù)他們的科學(xué)研究工作。<br>這種實驗教學(xué)體系既保證了培養(yǎng)方案要求的基本實驗項目的完成,又滿足了不同層次學(xué)生的需求,培養(yǎng)了學(xué)生對各門課程內(nèi)容綜合應(yīng)用的能力。更為重要的是,這種實驗教學(xué)體系可以極大地增強學(xué)生創(chuàng)新意識的培養(yǎng),特別有助與個性化人才創(chuàng)新實踐能力的
45、激發(fā)和培養(yǎng)。實踐表明,這一嘗試已獲得了顯著的效果。經(jīng)過幾年的努力,培養(yǎng)了一大批具有較強科研與工程實踐能力的學(xué)生。近兩年先后有20余名“個性化”培養(yǎng)的學(xué)生被保送到國內(nèi)知名院校攻讀碩士研究生。并有一大批學(xué)生獲國家級或省級計算機、信息類大賽獎,為國家及國防工業(yè)輸送了一大批高質(zhì)量人才。<br><br>4實驗教學(xué)內(nèi)容與實驗教學(xué)組織<br><br>計算機實驗教學(xué)按課程性質(zhì)可分為基礎(chǔ)課實驗、計算機專業(yè)基礎(chǔ)課實驗和計算機專業(yè)課實驗。實驗類型可分為演示型實驗、驗證型實驗、設(shè)計型實驗和綜合型實驗。<br>為達到“加強實踐實驗教學(xué)環(huán)節(jié),培養(yǎng)創(chuàng)新能力”這一目
46、標,并與“分層遞進教學(xué)、強化個性創(chuàng)新”的教學(xué)模式相吻合,我院規(guī)定實驗內(nèi)容的選擇要以“減少驗證型實驗,增加設(shè)計型、綜合型實驗項目,注重科研和工程實踐能力培養(yǎng)”為原則。<br>現(xiàn)在,我院面向計算機專業(yè)和全校非計算機專業(yè)開設(shè)36門實驗課程,實驗項目近232項,設(shè)計性、綜合性項目占實驗項目總數(shù)的95%以上。實驗選題綜合性強,貼近工程實際,有實用價值。<br>為了培養(yǎng)學(xué)生的科研和工程實踐能力,除了教學(xué)大綱要求的實驗項目以外,我院還開設(shè)了嵌入式“進階”實驗和計算機技術(shù)創(chuàng)新實驗,這些實驗的選題和內(nèi)容選擇均同實際科研、計算機競賽緊密結(jié)合。同時,我院通過實施“個性化”培養(yǎng)、計算機技術(shù)創(chuàng)新實驗室的開放、支持學(xué)生科技活動等一系列措施,使實驗教學(xué)的范疇不單純拘泥于教師設(shè)定的選題,而是鼓勵“自主學(xué)習(xí)、獨立創(chuàng)新”,這種學(xué)研結(jié)合的模式在極大程度上激發(fā)了學(xué)生的科研攻關(guān)和自我創(chuàng)新的意識。此外,中心鼓勵并積極爭取機會使同學(xué)們接觸到實際工程中的具體問題,利用課程設(shè)計、畢業(yè)設(shè)計、畢業(yè)實習(xí)等機會提供非常具有代表性的廣泛的實驗課題與攻關(guān)點供學(xué)生進行研發(fā)。<br>作為一個特色成果,我院已經(jīng)形成了以嵌入式技術(shù)為主線的一體化的硬件實驗體系。其基本思想是:從第四學(xué)期到第七學(xué)期,從實驗課程的設(shè)置上,保證硬件實驗不斷線并保持遞進關(guān)系,從實驗項目的制定上,保證實驗內(nèi)容的銜接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 線上理財合同范本
- 隔離點消毒服務(wù)合同范本
- 電熱合同范本
- 香港售房合同范本
- 大型建設(shè)工程施工合同范本
- 專著合同范本
- 國際租車合同范本
- 生產(chǎn)材料買賣合同范本
- 合同范本之借款合同范本
- 房產(chǎn)置換合同范本
- 2023年全國高考體育單招考試數(shù)學(xué)模擬試卷試題(含答案詳解)
- 《經(jīng)濟法學(xué)》第14章 反不正當競爭法律制度
- 屋面及防水工程、保溫工程
- 飲料和健康調(diào)查活動報告書
- GB/T 18043-2013首飾貴金屬含量的測定X射線熒光光譜法
- GB/T 15576-2020低壓成套無功功率補償裝置
- 先秦諸子百家課件
- 鋰離子電池粘結(jié)劑總結(jié)ATLCATL課件
- 初中期中成績分析班會-課件4
- 國際頭痛新分類與診斷標準課件
- 餐廚垃圾清運協(xié)議書范本
評論
0/150
提交評論