国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

計(jì)算機(jī)基礎(chǔ)實(shí)踐教學(xué)的啟發(fā)與思考

2014-10-27 00:03劉暢諶衛(wèi)軍鄭莉
計(jì)算機(jī)教育 2014年11期
關(guān)鍵詞:計(jì)算機(jī)基礎(chǔ)教學(xué)創(chuàng)新思維實(shí)踐教學(xué)

劉暢 諶衛(wèi)軍 鄭莉

摘要:實(shí)踐教學(xué)在計(jì)算機(jī)基礎(chǔ)教學(xué)中的作用不容忽視,如何在計(jì)算機(jī)基礎(chǔ)教學(xué)過程中更好地發(fā)揮實(shí)踐教學(xué)應(yīng)有的作用,使得學(xué)生不僅能應(yīng)用課堂所學(xué)知識(shí),還能激發(fā)創(chuàng)新思維,是實(shí)踐教學(xué)的目的之一。文章通過對(duì)c++語言程序設(shè)計(jì)課程中學(xué)生提交的優(yōu)秀大作業(yè)進(jìn)行介紹與點(diǎn)評(píng),展示學(xué)生在應(yīng)用c++時(shí)體現(xiàn)出的創(chuàng)新性和良好的綜合素質(zhì);通過分析每個(gè)優(yōu)秀作業(yè)的優(yōu)點(diǎn),指出基礎(chǔ)教育課程中的實(shí)踐教學(xué)應(yīng)如何更好地激發(fā)學(xué)生興趣和靈感,以鍛煉學(xué)生的綜合能力。

關(guān)鍵詞:實(shí)踐教學(xué);計(jì)算機(jī)基礎(chǔ)教學(xué);創(chuàng)新思維;c++語言程序設(shè)計(jì)

0、引言

21世紀(jì)已經(jīng)步入信息時(shí)代,國家對(duì)于信息人才的需求也越來越強(qiáng)烈。針對(duì)國家的特定需求,高校更加注重復(fù)合型人才的培養(yǎng)。作為其中的重要一環(huán),計(jì)算機(jī)教學(xué)之路也在逐步地探索和改革中日益完善。對(duì)于面向各個(gè)專業(yè)的計(jì)算機(jī)基礎(chǔ)教學(xué),教師在傳授課堂基本知識(shí)的基礎(chǔ)上,需要考慮如何更好地啟發(fā)不同專業(yè)學(xué)生對(duì)于計(jì)算機(jī)的興趣,使學(xué)生能夠?qū)⑺鶎W(xué)知識(shí)應(yīng)用在各自領(lǐng)域中。實(shí)踐教學(xué)在啟發(fā)學(xué)生興趣和鍛煉學(xué)生動(dòng)手能力方面尤為重要。筆者中的第一作者通過擔(dān)任c++語言程序設(shè)計(jì)課程助教一職,對(duì)實(shí)踐課程中的優(yōu)秀作業(yè)進(jìn)行點(diǎn)評(píng),總結(jié)出計(jì)算機(jī)基礎(chǔ)教學(xué)中實(shí)踐教學(xué)在啟發(fā)學(xué)生自主探索學(xué)習(xí)方面的一些經(jīng)驗(yàn)。

1、實(shí)踐教學(xué)在計(jì)算機(jī)基礎(chǔ)教學(xué)中的定位

計(jì)算機(jī)基礎(chǔ)教學(xué)是培養(yǎng)大學(xué)生綜合素質(zhì)和創(chuàng)新能力不可或缺的重要環(huán)節(jié),是培養(yǎng)復(fù)合型人才的重要組成部分。其中一項(xiàng)重要內(nèi)容就是要潛移默化地使學(xué)生養(yǎng)成一種新的思維方式,即能夠運(yùn)用計(jì)算科學(xué)的基礎(chǔ)概念對(duì)問題進(jìn)行求解、系統(tǒng)設(shè)計(jì)和行為理解,亦即建立計(jì)算思維。培養(yǎng)學(xué)生的計(jì)算思維,使其能夠在各自專業(yè)領(lǐng)域應(yīng)用該思維系統(tǒng)地分析問題、解決問題是計(jì)算機(jī)基礎(chǔ)教學(xué)的目的之一。

隨著教學(xué)方法的進(jìn)步,計(jì)算機(jī)基礎(chǔ)教學(xué)的理論知識(shí)在課堂中可以很好地得到傳授,如多媒體教學(xué)等;而在實(shí)踐教學(xué)方面,側(cè)重點(diǎn)更在于對(duì)理論知識(shí)的實(shí)踐與驗(yàn)證,旨在培養(yǎng)學(xué)生應(yīng)用所學(xué)知識(shí)解決具體問題的能力,希望能夠啟發(fā)學(xué)生的興趣,應(yīng)用計(jì)算思維自主設(shè)計(jì)問題并探索解決問題的方法。因此,實(shí)踐教學(xué)不僅僅是簡(jiǎn)單地完成教學(xué)指導(dǎo)書中的相應(yīng)內(nèi)容和對(duì)課堂理論教學(xué)進(jìn)行實(shí)踐驗(yàn)證,還要達(dá)到啟發(fā)學(xué)生思考并提問進(jìn)而實(shí)踐創(chuàng)新的目的。

2、特定風(fēng)格隨機(jī)音樂旋律的生成及計(jì)算機(jī)變奏編曲

2.1 音樂生成程序創(chuàng)作背景

特定風(fēng)格隨機(jī)音樂旋律生成程序以計(jì)算機(jī)音樂為背景,旨在通過計(jì)算機(jī)生成隨機(jī)音樂旋律,以此為作曲家提供靈感。該程序針對(duì)當(dāng)前已有隨機(jī)音樂生成程序不能對(duì)給定旋律進(jìn)行變奏、編曲的缺陷進(jìn)行改進(jìn),主要目的是生成特定風(fēng)格的旋律和對(duì)給定旋律進(jìn)行變奏編曲,如中國五聲音階風(fēng)格、埃及古典音樂風(fēng)格、西方浪漫派風(fēng)格等,能夠根據(jù)用戶提供的簡(jiǎn)單要求,隨機(jī)生成一段音樂旋律并給旋律添加伴奏以構(gòu)成完整的音樂。

程序基于控制臺(tái)應(yīng)用進(jìn)行開發(fā),從TXT文本文件讀取給定旋律的基本信息,通過設(shè)計(jì)的和聲、旋律與伴奏生成算法,最終輸出一組具有指定風(fēng)格的MIDI格式音樂。

該程序作者是經(jīng)管學(xué)院的學(xué)生,其業(yè)余愛好為彈鋼琴和聲樂創(chuàng)作。從該生的大作業(yè)中可以明顯看出興趣是最好的老師。當(dāng)學(xué)生從被動(dòng)地完成作業(yè)轉(zhuǎn)變?yōu)橛膳d趣主動(dòng)驅(qū)使時(shí),往往能夠創(chuàng)作出極具想象力與創(chuàng)造力的作品,因此鼓勵(lì)學(xué)生自主學(xué)習(xí),在自己感興趣的領(lǐng)域進(jìn)行創(chuàng)作,而不僅僅局限于已經(jīng)成形的、網(wǎng)絡(luò)上的大量參考程序很有必要。

2.2 程序主要技術(shù)難點(diǎn)及解決方法

該程序中的一個(gè)難點(diǎn)在于c++高級(jí)開發(fā)的自主學(xué)習(xí),即音樂的生成和保存問題。該問題涉及聲音的處理,這在c++語言程序設(shè)計(jì)課程中沒有講授。該生在經(jīng)過充分調(diào)研的基礎(chǔ)上,最終選擇MIDI作為程序的輸出方式。MIDI是一種二進(jìn)制文件,主要由頭塊和緊接著的多個(gè)音軌塊構(gòu)成,C++中的fstream類正好可以方便地進(jìn)行二進(jìn)制文件的創(chuàng)建和讀寫,因此該生通過上述的MIDIFile類、Chunk類等實(shí)現(xiàn)MIDI文件的制作。

第二個(gè)難點(diǎn)在于生成音樂過程中的音樂記號(hào)表示問題。雖然將隨機(jī)的序列按照算法映射到音符上可以產(chǎn)生隨機(jī)音樂,但是這種音樂沒有參考價(jià)值,也稱不上是音樂,此外如何將音符在計(jì)算機(jī)中表示也很困難。該生靈活地運(yùn)用c++中自底向上的設(shè)計(jì)思想,先構(gòu)造最簡(jiǎn)單的音符類,然后在此基礎(chǔ)上構(gòu)建和旋類,最后構(gòu)成和聲類。

最后一個(gè)難點(diǎn)是生成音樂過程中隨機(jī)音樂和非隨機(jī)音樂之間的平衡問題。該生通過查閱聲樂方面的書籍和文獻(xiàn),確定程序中生成音樂的“非隨機(jī)”模塊,進(jìn)而應(yīng)用這些“非隨機(jī)”模塊作為基本元進(jìn)行隨機(jī)組合,從而平衡了生成音樂過程中的隨機(jī)性與非隨機(jī)性。

從這個(gè)過程可以看出,在興趣的驅(qū)使下,學(xué)生變得更為主動(dòng),能夠自主探索解決問題的方法;同時(shí),教師也應(yīng)當(dāng)為學(xué)生指明大方向,授之以漁,培養(yǎng)學(xué)生獨(dú)立思考的能力。

2.3 程序類圖及核心算法設(shè)計(jì)

特定風(fēng)格音樂生成器類圖設(shè)計(jì)邏輯清晰,可以看出該生對(duì)于c++類的掌握和應(yīng)用十分嫻熟,這是設(shè)計(jì)出良好程序的前提保證。

該程序核心算法可以分為兩部分,其一是音樂部分算法,其二是文件部分算法。前者又分為和聲模塊生成算法及旋律伴奏生成算法,后者又分為事件的處理和文件的操作。由于生成算法中涉及過多的聲樂知識(shí),此處便不再贅述。

2.4 程序點(diǎn)評(píng)

首先,從c++語言程序設(shè)計(jì)課程的教學(xué)目的和要求出發(fā),該生完全掌握了所要求的內(nèi)容,能夠運(yùn)用C++面向?qū)ο笤O(shè)計(jì)的思想靈活設(shè)計(jì)程序;對(duì)類的設(shè)計(jì)邏輯清晰,封裝性良好;運(yùn)用了課程上所講授的所有內(nèi)容,展現(xiàn)出良好的c++程序設(shè)計(jì)能力。

同時(shí),該生能夠結(jié)合自己的業(yè)余興趣愛好,從聲樂角度出發(fā)進(jìn)行創(chuàng)作,利用C++這個(gè)有力的工具實(shí)現(xiàn)具有指定風(fēng)格的隨機(jī)音樂生成。最終驗(yàn)收效果良好,每次運(yùn)行指定風(fēng)格的生成模式會(huì)產(chǎn)生一組MIDI文件,每個(gè)都會(huì)播放出相似風(fēng)格但不同的鋼琴演奏曲。由此可見,該程序很好地達(dá)到了作者的預(yù)期,為作曲者提供靈感。endprint

相比其他守舊的程序,該程序最大的亮點(diǎn)在于學(xué)生結(jié)合了自己的興趣,能夠?qū)⑺鶎W(xué)知識(shí)應(yīng)用在音樂創(chuàng)作上,學(xué)以致用。實(shí)踐教學(xué)的初期選題階段應(yīng)該以此種案例作為榜樣,鼓勵(lì)學(xué)生探索創(chuàng)新,結(jié)合自身愛好進(jìn)行創(chuàng)作,從而拓寬學(xué)生思路,激發(fā)創(chuàng)作靈感。

3、基于MFC的上位機(jī)軟件設(shè)計(jì)

3.1 程序背景及功能介紹

基于MFC的上位機(jī)軟件設(shè)計(jì)程序針對(duì)全國大學(xué)生“飛思卡爾”杯全國智能車競(jìng)賽,采用C++語言,基于MFC框架,對(duì)智能車自主尋線部分所采集回的圖像進(jìn)行處理。

由于下位機(jī)微控制器MCU沒有圖像顯示功能,因此該程序作者萌發(fā)了在上位PC機(jī)編寫軟件的想法,以實(shí)現(xiàn)數(shù)據(jù)的可視化,方便圖像處理工作的開展,從而進(jìn)一步檢驗(yàn)智能車尋線算法的正確性。

該程序能夠完成如下功能:攝像頭原始圖像以及處理之后的圖像顯示;可直接在上位機(jī)編寫圖像處理算法,通過代碼移植的方式簡(jiǎn)化開發(fā)過程;車模運(yùn)行過程中其他基本信息的示波器方式動(dòng)態(tài)顯示;上位機(jī)與下位機(jī)的交互界面,實(shí)現(xiàn)參數(shù)傳遞。基于MFC的上位機(jī)軟件設(shè)計(jì)如圖l所示,軌道灰度圖如圖2所示,圖像直方圖如圖3所示。

與上一個(gè)從興趣出發(fā)所設(shè)計(jì)的程序不同,該生的程序源自實(shí)際需求,其在參加競(jìng)賽培訓(xùn)時(shí)聯(lián)想到所學(xué)c++的知識(shí)并將其應(yīng)用在數(shù)據(jù)處理中,達(dá)到非常好的實(shí)踐效果。教師同樣可以鼓勵(lì)學(xué)生結(jié)合自身專業(yè),從實(shí)際需求出發(fā)設(shè)計(jì)出能夠解決其他課程問題的程序,也能對(duì)學(xué)生起到很好的鍛煉作用。

3.2 程序主要技術(shù)難點(diǎn)及算法設(shè)計(jì)

該程序是一個(gè)綜合性非常強(qiáng)的程序,其整合了上下位機(jī)串口通訊、智能車攝像頭圖像獲取及顯示、圖像分析處理、波形顯示等。其中每一部分都具有一定的技術(shù)難度。

首先,該生未接觸過MFC,需要自行學(xué)習(xí)。對(duì)于MFC單文檔視圖的整體結(jié)構(gòu)把握、類與類之間的函數(shù)相互調(diào)用以及數(shù)據(jù)共享中的許多細(xì)節(jié)問題,該生要下很大工夫研究。

其次,對(duì)于串口通訊協(xié)議的設(shè)計(jì),尤其是虛擬示波器模塊的“通訊協(xié)議”以及相關(guān)類設(shè)計(jì)需要深入考慮,同時(shí),如何接受多條數(shù)據(jù)類型、起始位、數(shù)據(jù)數(shù)目不定的曲線信息,也是程序邏輯設(shè)計(jì)的難點(diǎn)所在。

最后,由于該程序的應(yīng)用性很強(qiáng),需要和底層下位機(jī)相互交互,因此需要對(duì)動(dòng)態(tài)鏈接庫的動(dòng)態(tài)加載以及與單片機(jī)端相協(xié)調(diào)的函數(shù)接口進(jìn)行分析與設(shè)計(jì)。

在程序算法設(shè)計(jì)方面,圖像的獲取與顯示采用雙緩存技術(shù),實(shí)現(xiàn)后臺(tái)采集與前臺(tái)顯示的獨(dú)立,保證數(shù)據(jù)的穩(wěn)定與高效;運(yùn)用vector容器進(jìn)行數(shù)據(jù)管理,從而提高數(shù)據(jù)處理的簡(jiǎn)便性以及數(shù)據(jù)接受過程中的穩(wěn)定與高效;采用序列化信息存儲(chǔ)方法,將基本信息保存為二進(jìn)制文件,使得應(yīng)用程序在下次運(yùn)行時(shí)能夠調(diào)用保存的大量配置信息,增加程序復(fù)用性。

3.3 程序點(diǎn)評(píng)

該程序最大的特點(diǎn)就是綜合性和應(yīng)用性強(qiáng)。據(jù)了解,該程序已經(jīng)使用在該生飛思卡爾實(shí)驗(yàn)隊(duì)伍里,對(duì)智能車所獲取的數(shù)據(jù)進(jìn)行分析與處理。

這也就是我們最希望看到的結(jié)果。c++語言程序設(shè)計(jì)課程不僅僅是想要學(xué)生了解基本概念、運(yùn)行機(jī)制與原理,更希望學(xué)生能夠?qū)⑺鶎W(xué)知識(shí)應(yīng)用到實(shí)際生活中。與傳統(tǒng)照本宣科的課程不同,c++語言程序設(shè)計(jì)課程教學(xué)最重要的一點(diǎn)就是親自動(dòng)手實(shí)踐,不僅需要完成相應(yīng)實(shí)驗(yàn)內(nèi)容,還要求學(xué)生發(fā)揮想象力與創(chuàng)造力,設(shè)計(jì)出優(yōu)秀的工程程序。

4、結(jié)語

計(jì)算機(jī)科學(xué)與技術(shù)系語言設(shè)計(jì)類課程中的實(shí)驗(yàn)課旨在鍛煉學(xué)生利用課程中學(xué)習(xí)到的理論知識(shí)解決實(shí)際問題。實(shí)踐教學(xué)中大作業(yè)是實(shí)現(xiàn)該目標(biāo)的一種好方法,從初期的選題設(shè)計(jì)、中期的編碼調(diào)試到后期的結(jié)題文檔書寫等,都能夠起到很好的應(yīng)用所學(xué)知識(shí)的作用。我們期望越來越多的學(xué)生能夠結(jié)合自身興趣和專業(yè),利用所學(xué)知識(shí)解決與自身密切相關(guān)的問題,切身體會(huì)到C-H-語言的實(shí)用魅力。因此,教師在教學(xué)過程中要注意調(diào)動(dòng)學(xué)生的積極性,展現(xiàn)計(jì)算機(jī)在各個(gè)領(lǐng)域中的作用與魅力,從而激發(fā)學(xué)生的潛在興趣,使學(xué)生得到全方位的鍛煉,實(shí)現(xiàn)培養(yǎng)具有計(jì)算思維的復(fù)合型人才的宗旨。endprint

猜你喜歡
計(jì)算機(jī)基礎(chǔ)教學(xué)創(chuàng)新思維實(shí)踐教學(xué)
計(jì)算機(jī)等級(jí)考試與高校計(jì)算機(jī)基礎(chǔ)教學(xué)
淺談基于計(jì)算機(jī)競(jìng)賽模式下的計(jì)算機(jī)基礎(chǔ)教學(xué)建設(shè)與應(yīng)用型人才培養(yǎng)
關(guān)于微課在中職計(jì)算機(jī)基礎(chǔ)教學(xué)中的運(yùn)用思考
在經(jīng)濟(jì)新常態(tài)下地方本科院校大學(xué)生創(chuàng)新創(chuàng)業(yè)教育研究
茶學(xué)專業(yè)校企合作實(shí)踐教學(xué)探索
《電氣工程畢業(yè)設(shè)計(jì)》 課程的教學(xué)設(shè)計(jì)
高職院校商務(wù)禮儀課程教學(xué)改革探索芻議
巧用“錯(cuò)誤”激活數(shù)學(xué)課堂的實(shí)踐與思考
培養(yǎng)職校生創(chuàng)新思維能力的研究
《數(shù)據(jù)庫高級(jí)應(yīng)用》教學(xué)創(chuàng)新方法研究
扶风县| 东山县| 岳阳县| 汝阳县| 寻甸| 株洲市| 疏附县| 商丘市| 麦盖提县| 石门县| 嘉义县| 泰顺县| 尉氏县| 峡江县| 社旗县| 双城市| 黄陵县| 武汉市| 阆中市| 奉新县| 育儿| 旺苍县| 吴江市| 新和县| 湖北省| 平阳县| 四川省| 乾安县| 礼泉县| 乌兰浩特市| 香港 | 清丰县| 新田县| 兴文县| 东乌| 五大连池市| 黎平县| 安龙县| 汶上县| 大洼县| 满洲里市|