引論:我們?yōu)槟砹?3篇vb程序設(shè)計(jì)論文范文,供您借鑒以豐富您的創(chuàng)作。它們是您寫(xiě)作時(shí)的寶貴資源,期望它們能夠激發(fā)您的創(chuàng)作靈感,讓您的文章更具深度。
篇1
Keywords:vb;programming;reform;practice
1引言
VisualBasic(下面簡(jiǎn)稱(chēng)VB)程序設(shè)計(jì)是我校非計(jì)算機(jī)專(zhuān)業(yè)學(xué)生的必修課,然而VB語(yǔ)言枯燥、難以理解,學(xué)生缺乏相應(yīng)的知識(shí)背景,導(dǎo)致學(xué)生對(duì)這門(mén)課有恐懼心理,缺乏興趣。這就要求我們教師在教學(xué)中分析、摸索出一些較為行之有效的教學(xué)方法,才有可能培養(yǎng)學(xué)生程序設(shè)計(jì)能力,掌握一門(mén)技能,激發(fā)學(xué)生對(duì)程序設(shè)計(jì)的興趣。筆者在近幾年的教學(xué)實(shí)踐中進(jìn)行了如下改革探索,取得了良好的教學(xué)效果。
2教學(xué)改革與實(shí)施
2.1對(duì)課本原有知識(shí)進(jìn)行整合,激發(fā)學(xué)生的學(xué)習(xí)興趣
大部分的教材總是先講VB語(yǔ)言的基本語(yǔ)法,然后再講VB中對(duì)象的使用。但在講授時(shí)不宜將兩者分開(kāi),要把VB面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,事件驅(qū)動(dòng)的編程機(jī)制貫穿于整個(gè)教學(xué)過(guò)程中。VB中的對(duì)象主要用于構(gòu)建界面,而具體程序功能的實(shí)現(xiàn)則要編寫(xiě)代碼行,因此任何一個(gè)完整的應(yīng)用程序都不可能只用對(duì)象或只用語(yǔ)法。這兩塊內(nèi)容可進(jìn)行穿插講解。這樣就避免了讓學(xué)生在毫無(wú)知識(shí)背景的情況下去理解抽象難懂的概念,挫傷他們編程的積極性。在教學(xué)過(guò)程中,我始終堅(jiān)持以學(xué)生已有的知識(shí)程度為基礎(chǔ),打破原有的以課本知識(shí)的邏輯結(jié)構(gòu)為順序組織課堂教學(xué)的模式,先不講基本概念,改用從簡(jiǎn)單的實(shí)例人手,通過(guò)讓學(xué)生觀看、模仿,在實(shí)際操作中去探究和領(lǐng)悟這些概念,并適時(shí)地加以歸納總結(jié),讓學(xué)生在輕松愉快的氣氛中接受新知識(shí)。比如,在講到循環(huán)結(jié)構(gòu)中DO——LOOP語(yǔ)句和FOR——NEXT語(yǔ)句的用法時(shí),我用DO——LOOP語(yǔ)句的4種形式和FOR——NEXT語(yǔ)句實(shí)現(xiàn)求解N!的過(guò)程,讓學(xué)生去觀察、領(lǐng)悟它們的異同。
2.2教學(xué)方法多樣化
筆者在教學(xué)實(shí)踐中,除了采用傳統(tǒng)的教學(xué)方法如:提問(wèn)法、小組討論法外,主要采用以下教學(xué)方法:
1)錯(cuò)例分析法
學(xué)生對(duì)變量、類(lèi)型、運(yùn)算符、表達(dá)式這些基本概念和語(yǔ)言規(guī)則的掌握需要一個(gè)過(guò)程,對(duì)算法和數(shù)據(jù)結(jié)構(gòu)的知識(shí)需要不斷積累。學(xué)習(xí)過(guò)程中,能聽(tīng)懂老師授課的內(nèi)容,但自己編制的程序往往錯(cuò)誤百出。課堂上,我經(jīng)常將容易出錯(cuò)的概念以反例形式展示給學(xué)生,讓他們找錯(cuò)誤,通過(guò)運(yùn)行。比如錯(cuò)誤使用邏輯運(yùn)算符。
假設(shè)a、b和c是三個(gè)變量。如果已知a<c,要判斷b的值是否在a與c之間,可以使用以下表達(dá)式:a<bAndb<c
不能寫(xiě)成:a<b<c。
很多學(xué)生會(huì)錯(cuò)誤延用數(shù)學(xué)上的概念,寫(xiě)成后一種形式。
例OptionExplicit
PrivateSubCommand1_Click()
DimaAsInteger,bAsInteger,cAsInteger
a=-3:b=-2:c=-1
Printa<bAndb<c’顯示True
Printa<b<c’顯示False
EndSub
為什么a<b<c會(huì)得False?因?yàn)椋琕B在計(jì)算這個(gè)表達(dá)式時(shí),先計(jì)算“a<b”部分,得True;再計(jì)算“True<c”,并將True轉(zhuǎn)換為一1,-1<-1?最終得False。
通過(guò)諸如此類(lèi)的反例教學(xué),使學(xué)生豁然開(kāi)朗,印象深刻。
2)零散實(shí)例和核心實(shí)例結(jié)合
零散實(shí)例教學(xué)法,對(duì)每個(gè)知識(shí)點(diǎn)的運(yùn)用和理解是非常行之有效的,但對(duì)前后知識(shí)的貫穿缺乏說(shuō)服力。筆者在教學(xué)改革實(shí)踐中體會(huì)到,除經(jīng)典的零散實(shí)例外,將一個(gè)規(guī)模較大的、典型的、有實(shí)用價(jià)值的、學(xué)生感興趣的核心實(shí)例貫穿于教學(xué)全過(guò)程,對(duì)提高學(xué)生的編程能力非常幫助。所謂核心實(shí)例是指,實(shí)例從小到大、隨章節(jié)的展開(kāi)而逐步成長(zhǎng),呈現(xiàn)為逐步進(jìn)化的多個(gè)版本。比如引入一個(gè)貫串全書(shū)的問(wèn)題:設(shè)計(jì)一個(gè)“圖書(shū)管理系統(tǒng)”。首先,用最基本的概念和最簡(jiǎn)單的結(jié)構(gòu),給出該系統(tǒng)的第一個(gè)(也是最簡(jiǎn)單的)版本,以后的每一次課,都對(duì)該系統(tǒng)提出新的功能和結(jié)構(gòu)上的要求,并用本次課介紹的新概念和新方法對(duì)它進(jìn)行功能上的擴(kuò)充和結(jié)構(gòu)上的改進(jìn)。每次得到該系統(tǒng)的一個(gè)增強(qiáng)的新版本。為達(dá)到設(shè)計(jì)目標(biāo),學(xué)生隨著教學(xué)的進(jìn)程,可以積極投入到對(duì)實(shí)例系統(tǒng)的調(diào)試、改進(jìn)的實(shí)踐中,逐漸掌握了所學(xué)的基本知識(shí),同時(shí)也提高了編程能力。
2.3重視實(shí)踐教學(xué),培養(yǎng)學(xué)生綜合應(yīng)用程序開(kāi)發(fā)能力
VB是一門(mén)實(shí)踐性很強(qiáng)的課程,如果只紙上談兵,不上機(jī)練習(xí),是不可能真正掌握VB程序開(kāi)發(fā)的。實(shí)踐教學(xué)主要注意抓住以下幾點(diǎn):
(1)模仿階段,對(duì)課堂核心實(shí)例系統(tǒng)的調(diào)試、改進(jìn)。核心實(shí)例的每次增強(qiáng)版是全面反映教學(xué)內(nèi)容的,學(xué)生通過(guò)模仿、知識(shí)再現(xiàn)達(dá)到在實(shí)踐中領(lǐng)悟知識(shí),開(kāi)拓編程思路。
(2)分層次階段,在教學(xué)過(guò)程實(shí)施的開(kāi)始,和核心實(shí)例同步,我就給出了幾個(gè)類(lèi)似核心實(shí)例的課程設(shè)計(jì)內(nèi)容,供學(xué)生選擇。對(duì)核心實(shí)例的調(diào)試比較成功的,可以同步實(shí)施自己所學(xué)的課程設(shè)計(jì)內(nèi)容,達(dá)到培養(yǎng)學(xué)生分析問(wèn)題和解決問(wèn)題的能力。對(duì)掌握核心實(shí)例有困難的學(xué)生,針對(duì)教學(xué)內(nèi)容重新布置實(shí)驗(yàn),強(qiáng)化知識(shí)鞏固。課程設(shè)計(jì)內(nèi)容課后上機(jī)完成。
要掌握上面兩個(gè)階段的具體情況,教師應(yīng)親自指導(dǎo),與學(xué)生一起上機(jī)實(shí)驗(yàn),隨時(shí)監(jiān)控學(xué)生實(shí)驗(yàn)過(guò)程。對(duì)學(xué)生提出的問(wèn)題及時(shí)予以指導(dǎo),而發(fā)現(xiàn)學(xué)生常犯的共性錯(cuò)誤,可在理論課上進(jìn)行點(diǎn)評(píng)。
2.4培養(yǎng)學(xué)生使用標(biāo)準(zhǔn)編碼,養(yǎng)成良好編程習(xí)慣
在程序設(shè)計(jì)過(guò)程中,使用標(biāo)準(zhǔn)編碼可以避免一些不必要的錯(cuò)誤。筆者在授課過(guò)程當(dāng)中使用標(biāo)準(zhǔn)編碼的實(shí)例,在講解實(shí)例過(guò)程中對(duì)學(xué)生進(jìn)行適當(dāng)?shù)匾龑?dǎo),讓學(xué)生養(yǎng)成一個(gè)良好的編程習(xí)慣。
程序書(shū)寫(xiě)規(guī)范是非常重要問(wèn)題,不僅書(shū)寫(xiě)格式應(yīng)該結(jié)構(gòu)層次分明,而且程序里面應(yīng)添加起碼的注釋。不按照標(biāo)準(zhǔn)書(shū)寫(xiě)程序會(huì)增加別人查看程序的難度,同時(shí)也不利于自己以后上機(jī)調(diào)試修改。強(qiáng)調(diào)學(xué)生避免使用VisualBasic中的隱式操作,養(yǎng)成顯式編碼的習(xí)慣。比如永遠(yuǎn)使用OptionExplicit,嚴(yán)格執(zhí)行變量先定義后使用的原則。避免使用缺省屬性,明確指出是在引用對(duì)象還是在引用對(duì)象屬性。
3結(jié)束語(yǔ)
一門(mén)課程的教學(xué)是一個(gè)復(fù)雜的系統(tǒng)工程,筆者將以上一些改革和探索用在課堂教學(xué)和實(shí)踐教學(xué)中,取得了一些效果,但教學(xué)有法,教無(wú)定法,只要教學(xué)得法。在教學(xué)實(shí)踐中,合理運(yùn)用多種教學(xué)方法,靈活地、創(chuàng)造性地掌握教學(xué)過(guò)程,激發(fā)學(xué)生的興趣,培養(yǎng)學(xué)生的創(chuàng)造性思維和綜合應(yīng)用程序開(kāi)發(fā)能力。
參考文獻(xiàn)
篇2
二、教學(xué)方法探討
1.消除學(xué)生的畏難情緒
為了打消學(xué)生的畏難情緒,對(duì)于VB教學(xué),應(yīng)首先與學(xué)生談VB,而不是教VB。首先,要讓學(xué)生明白VB和C語(yǔ)言是完全不同的兩種編程方式,不要因?yàn)楹ε翪語(yǔ)言,而害怕VB。教學(xué)中,通過(guò)演示一個(gè)簡(jiǎn)單的例子,向?qū)W生演示只需要兩行代碼便可制作出美觀的界面和可愛(ài)的功能。比如:示例1:制作美觀的界面,實(shí)現(xiàn)窗體上的文字自動(dòng)或手動(dòng)的向下移動(dòng)。突現(xiàn)VB相對(duì)于C語(yǔ)言的簡(jiǎn)單易懂,引導(dǎo)學(xué)生一步步完成所需功能。最后,啟發(fā)學(xué)生:如果想讓文字上移,如何修改程序?如果想讓文字左移或右移,如何修改程序?如果想讓文字左右交替移動(dòng),又要如何修改程序?通過(guò)上述示例的講解,使得學(xué)生對(duì)VB有一個(gè)全新的認(rèn)識(shí)——直觀、簡(jiǎn)單、易學(xué)、易用。其次,要讓學(xué)生了解為什么學(xué)習(xí)VB,VB對(duì)于他們有多么重要。這門(mén)課的開(kāi)設(shè)除了承上啟下其他專(zhuān)業(yè)課程外,還有一個(gè)重要的作用就是為了讓學(xué)生能夠參加計(jì)算機(jī)二級(jí)考證,VB在二級(jí)考證中相對(duì)比較易學(xué)易用。再次,告訴學(xué)生,有了C語(yǔ)言的基礎(chǔ),代碼的編寫(xiě)會(huì)更為容易。從而激發(fā)學(xué)生學(xué)習(xí)的信心。
2.提高學(xué)生的學(xué)習(xí)興趣
在教學(xué)過(guò)程中應(yīng)盡量使用簡(jiǎn)單易懂的語(yǔ)言和示例,提高學(xué)生的學(xué)習(xí)興趣,幫助學(xué)生理解知識(shí)點(diǎn)。比如,在講屬性、方法和事件這三個(gè)很枯燥的概念時(shí),可以通過(guò)生活中有趣的示例來(lái)進(jìn)行解釋。示例2:通過(guò)“蟑螂從女生腳上爬過(guò)”的事例,講解屬性、方法和事件的概念。蟑螂從女生腳上爬過(guò)時(shí),女生的臉色變紅,臉的顏色為紅色就是屬性;女生尖叫起來(lái),女生跳起來(lái),這是女生本身做出的動(dòng)作就是方法;蟑螂爬過(guò)女生的腳,這是外部事物對(duì)女生做出的動(dòng)作,就是事件。通過(guò)這種類(lèi)型的示例,成功吸引了學(xué)生的注意力,也幫助學(xué)生理解了這幾個(gè)難懂的概念。在講屬性、方法、事件的書(shū)寫(xiě)格式時(shí),也可將這個(gè)示例寫(xiě)成VB偽代碼的形式:屬性的表示方法:女生.臉的顏色=紅色方法的表示方法:女生.尖叫啊事件的表示方法:女生_蟑螂爬過(guò)至此,學(xué)生對(duì)VB程序一下就理解了。
3.實(shí)踐中學(xué)習(xí),項(xiàng)目中鞏固
篇3
1、教學(xué)方法陳舊
教學(xué)方法陳舊會(huì)導(dǎo)致教學(xué)效果大打折扣,目前,很多計(jì)算機(jī)教學(xué)方面的老師還是用比較原始的教學(xué)方法來(lái)進(jìn)行計(jì)算機(jī)教學(xué),特別是習(xí)慣性的用過(guò)于專(zhuān)業(yè)的語(yǔ)言來(lái)講授教學(xué)內(nèi)容,且教學(xué)課程的設(shè)置并不符合學(xué)生們實(shí)際學(xué)習(xí)的需要,這就使得學(xué)生們?cè)趯W(xué)習(xí)VB程序設(shè)計(jì)時(shí)不太感興趣,也不能主動(dòng)去復(fù)習(xí)、鞏固。很多老師雖然非常重視實(shí)踐操作,可是學(xué)生們?cè)谧约涸O(shè)計(jì)程序時(shí)只能根據(jù)老師所教的內(nèi)容來(lái)進(jìn)行編程卻缺乏創(chuàng)造性思維,這對(duì)于培養(yǎng)極具創(chuàng)新意識(shí)的高素質(zhì)人才來(lái)說(shuō)是非常不利的。老師們?cè)诮榻BVB程序設(shè)計(jì)時(shí)往往強(qiáng)調(diào)是面向?qū)ο蟮某绦蛟O(shè)計(jì)時(shí)沒(méi)有將VB與其他的程序設(shè)計(jì)語(yǔ)言進(jìn)行比較,這也使得學(xué)生們對(duì)VB程序設(shè)計(jì)課程的了解比較抽象。其實(shí)VB與其他的編程語(yǔ)言可以共同開(kāi)發(fā)一些數(shù)據(jù)庫(kù)以實(shí)現(xiàn)特定的用途。而這也是當(dāng)前教學(xué)過(guò)程中比較缺乏的。
2、學(xué)生評(píng)價(jià)體系落后
除了以上的這些問(wèn)題外還有一點(diǎn)是比較重要的,那就是學(xué)生的評(píng)價(jià)體系比較落后,很多學(xué)校著重考學(xué)生的基本知識(shí),這就使學(xué)生容易陷入死記硬背的怪圈中而不能形成自己的思維能力。學(xué)校往往是簡(jiǎn)單的將學(xué)分作為評(píng)價(jià)學(xué)生的標(biāo)準(zhǔn),因而促使學(xué)生們?yōu)榱双@得學(xué)分而進(jìn)行學(xué)習(xí)或開(kāi)展活動(dòng),這對(duì)于學(xué)生的發(fā)展是非常不利的。老師不能從考試和平時(shí)作業(yè)來(lái)簡(jiǎn)單的評(píng)價(jià)一個(gè)學(xué)生對(duì)于課程的掌握情況,這對(duì)于學(xué)生的評(píng)價(jià)是不完善的。很多老師還用相同的標(biāo)準(zhǔn)來(lái)對(duì)于不同專(zhuān)業(yè)的學(xué)生,這也是相當(dāng)不合理的。
二、如何改善VB程序設(shè)計(jì)課程教學(xué)
為了解決當(dāng)前VB程序設(shè)計(jì)課程教學(xué)中存在的問(wèn)題,有關(guān)部門(mén)應(yīng)該要保持對(duì)這門(mén)課程的客觀評(píng)價(jià)并結(jié)合當(dāng)前的實(shí)際情況來(lái)改善教學(xué)狀況。只有與時(shí)俱進(jìn)用新的教育理念和教學(xué)方法才能培養(yǎng)出未來(lái)需要的高素質(zhì)人才。
1、培養(yǎng)學(xué)生學(xué)習(xí)興趣
學(xué)生是學(xué)習(xí)的主體,所以在改善教學(xué)狀況時(shí)首先就應(yīng)該要培養(yǎng)學(xué)生的學(xué)習(xí)興趣。老師應(yīng)該讓學(xué)生們了解這門(mén)課程的應(yīng)用并將一些比較實(shí)用且非常有趣的東西介紹給學(xué)生們,這就可以增強(qiáng)學(xué)生們的學(xué)習(xí)興趣并真正的喜歡上VB程序設(shè)計(jì)這們課程。老師們可以讓學(xué)生們了解到一些游戲例如俄羅斯方塊就是根據(jù)VB程序設(shè)計(jì)開(kāi)發(fā)出來(lái)的進(jìn)而引導(dǎo)學(xué)生學(xué)習(xí)如何進(jìn)行VB程序設(shè)計(jì)的學(xué)習(xí)。學(xué)生們甚至可以自己根據(jù)程序開(kāi)發(fā)的思想設(shè)計(jì)出自己想要的簡(jiǎn)單程序。老師們還可以給學(xué)生們介紹一些比較有用的課外書(shū)籍借以啟發(fā)學(xué)生們的創(chuàng)造性思維。學(xué)生們?cè)谌粘I钪幸矐?yīng)該注意有意識(shí)的培養(yǎng)自己這方面的興趣。很多同學(xué)對(duì)軟件開(kāi)發(fā)比較感興趣,這就可以將所學(xué)與所用結(jié)合起來(lái),在興趣的驅(qū)使下有意識(shí)的學(xué)習(xí)程序設(shè)計(jì)往往能夠取得更好的效果。
2、改變教學(xué)方法
除了要培養(yǎng)學(xué)生們的學(xué)習(xí)興趣外還應(yīng)該要改變教學(xué)方法。只有教學(xué)方法改變了才能提高學(xué)習(xí)效果并保障學(xué)生能夠真正吸收VB程序設(shè)計(jì)的思想學(xué)會(huì)運(yùn)用這門(mén)技術(shù)。對(duì)于很多學(xué)生來(lái)說(shuō)可視化設(shè)計(jì)便利了他們的學(xué)習(xí),所以老師要將VB程序設(shè)計(jì)的一些特點(diǎn)以合適的形式介紹給同學(xué)們,這就減少了他們的理解障礙。老師在教學(xué)過(guò)程中要將理論教學(xué)和具體操作結(jié)合起來(lái),不僅要讓學(xué)生們知道VB程序設(shè)計(jì)的思想還要讓他們了解如何通過(guò)具體的操作來(lái)實(shí)現(xiàn)程序設(shè)計(jì)。當(dāng)然,老師們往往發(fā)揮著非常大的作用,老師們應(yīng)該盡可能的將具體的教學(xué)內(nèi)容貫徹到學(xué)生們的實(shí)際操作中。學(xué)生們既要充分的利用各種教學(xué)資源還要有創(chuàng)新意識(shí)大膽的提出新思想。以師范類(lèi)非計(jì)算機(jī)專(zhuān)業(yè)的VB程序設(shè)計(jì)課程教學(xué)為例,師范類(lèi)學(xué)生往往對(duì)VB程序設(shè)計(jì)課程不重視,所以老師們往往通過(guò)案例教學(xué)法等方式來(lái)增強(qiáng)教學(xué)效果。一些老師根據(jù)師范類(lèi)學(xué)生邏輯思維不強(qiáng)等特點(diǎn)加強(qiáng)對(duì)學(xué)生的思維鍛煉,這就取得了比較好的效果。所以,老師們根據(jù)學(xué)生群體的不同改變教學(xué)方法是非常必要的。
3、完善學(xué)生評(píng)價(jià)體系
篇4
一直以來(lái)人們使用傳統(tǒng)人工的方式管理產(chǎn)品,這種管理方式存在著許多缺點(diǎn)諸如效率低、保密性差等。另外,時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)產(chǎn)品都帶來(lái)了不少的困難。倉(cāng)儲(chǔ)信息管理系統(tǒng)能夠極大地提高商品庫(kù)存的管理效率,也是企業(yè)庫(kù)存管理科學(xué)化、正規(guī)化的重要條件。倉(cāng)儲(chǔ)信息管理系統(tǒng)是一個(gè)企業(yè)不可缺少的部分,它的內(nèi)容對(duì)于企業(yè)的決策者和管理者來(lái)說(shuō)都至關(guān)重要,倉(cāng)儲(chǔ)信息管理系統(tǒng)能夠?yàn)橛脩?hù)提供充足的信息和快捷的查詢(xún)手段。
1系統(tǒng)功能分析、設(shè)計(jì)
系統(tǒng)的總體任務(wù)是實(shí)現(xiàn)企業(yè)倉(cāng)儲(chǔ)信息管理的系統(tǒng)化和自動(dòng)化,幫助管理人員更好更高效的完成企業(yè)的倉(cāng)儲(chǔ)信息管理工作。本系統(tǒng)分為用戶(hù)登錄、商品管理、庫(kù)存管理三大大模塊。倉(cāng)儲(chǔ)信息管理系統(tǒng)的系統(tǒng)模塊圖如圖1所示[1,2]。
1.1商品管理模塊
對(duì)商品信息進(jìn)行錄入、查詢(xún)、修改和刪除。商品信息主要有商品編號(hào)、商品名、型號(hào)、生產(chǎn)廠家、廠址和生產(chǎn)日期等,還可以在備注欄中進(jìn)一步說(shuō)明該商品的其他信息。
1.2倉(cāng)庫(kù)管理模塊
對(duì)商品進(jìn)行入庫(kù)、出庫(kù)管理;對(duì)庫(kù)存情況進(jìn)行統(tǒng)計(jì)和管理,及時(shí)了解商品的存貨量,結(jié)合入庫(kù)出庫(kù)信息,準(zhǔn)確的判斷該商品的銷(xiāo)售狀況,不至于出現(xiàn)斷貨、或者嚴(yán)重壓貨的現(xiàn)象。其中商品的基本信息包括貨物編號(hào)、貨物名、型號(hào)、單價(jià)、貨物數(shù)量、總價(jià)、入庫(kù)時(shí)間和相關(guān)備注。
2數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)主要包含庫(kù)存和商品信息2個(gè)數(shù)據(jù)表。
1)庫(kù)存數(shù)據(jù)表包括貨物編號(hào)、貨物名稱(chēng)、貨物型號(hào)、貨物數(shù)量、貨物單價(jià)、貨物總價(jià)、入庫(kù)/出庫(kù)時(shí)間和備注等字段。如表1所示。
2)商品信息數(shù)據(jù)表包括編號(hào)、商品名、貨物型號(hào)、貨物生產(chǎn)廠家、貨物生產(chǎn)廠址、日期和備注等字段。如表2所示。
3開(kāi)發(fā)環(huán)境
倉(cāng)儲(chǔ)信息管理系統(tǒng)是用VB+Access數(shù)據(jù)庫(kù)實(shí)現(xiàn)。VB是一種可視化的、采用事件驅(qū)動(dòng)機(jī)制的編程工具,與其它程序設(shè)計(jì)語(yǔ)言相比有易學(xué)易用的特點(diǎn)[3];Access的優(yōu)點(diǎn)在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類(lèi)似于Excel的電子表格,可以使數(shù)據(jù)庫(kù)一目了然。另外,Access允許創(chuàng)建自定義報(bào)表用于打印或輸出數(shù)據(jù)庫(kù)中的信息。Access也提供了數(shù)據(jù)存儲(chǔ)庫(kù),可以使用桌面數(shù)據(jù)庫(kù)文件把數(shù)據(jù)庫(kù)文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶(hù)共享數(shù)據(jù)庫(kù)[4]。
4結(jié)束語(yǔ)
系統(tǒng)操作界面簡(jiǎn)單大方,用戶(hù)使用方便。系統(tǒng)開(kāi)發(fā)采用了模塊化程序設(shè)計(jì)的方法,本著實(shí)用性的原則,對(duì)各種實(shí)際情況進(jìn)行了考慮。系統(tǒng)為企業(yè)管理商品管理提供了一個(gè)簡(jiǎn)單、方便和高效的操作平臺(tái),實(shí)現(xiàn)企業(yè)倉(cāng)儲(chǔ)信息管理的系統(tǒng)化和自動(dòng)化,幫助管理人員更好更高效的完成企業(yè)的倉(cāng)儲(chǔ)信息管理工作。
【參考文獻(xiàn)】
[1]宮平.基于VB工程財(cái)務(wù)管理系統(tǒng)問(wèn)題的探究[J].現(xiàn)代商業(yè),2014(06).
篇5
An Exploration of VB Program Design Teaching Methods
REN Hong-jian
(Nantong University, Nantong 226019, China)
Abstract: In teaching program design, finding new ways to solve the dryness and complexity of program design has always been a fascinating subject for many computer science educators. This article provides several ideas on the following aspects of teaching VB program design: how toimprove course quality, how to enhance the teaching effectiveness, how to nurture and strengthen students’ ability and creativity in analyzingand solving a design problem, etc.
Key words: program design; teaching methods; aptitude
1 引言
掌握和應(yīng)用好計(jì)算機(jī)知識(shí)是當(dāng)代大學(xué)生必須具備的基本條件,為此,國(guó)家教育部根據(jù)高等院校非計(jì)算機(jī)專(zhuān)業(yè)計(jì)算機(jī)培養(yǎng)目標(biāo)提出了“計(jì)算機(jī)文化基礎(chǔ)”、“計(jì)算機(jī)技術(shù)基礎(chǔ)”、“計(jì)算機(jī)應(yīng)用基礎(chǔ)”三個(gè)層次的教育體系。VB屬于第二層次范疇的計(jì)算機(jī)編程語(yǔ)言,已被列為公共必修課程。
程序設(shè)計(jì)語(yǔ)言類(lèi)課程的指導(dǎo)思想是:使學(xué)生通過(guò)學(xué)習(xí)既掌握高級(jí)編程語(yǔ)言的知識(shí)、編程技術(shù)和基本算法,又掌握程序設(shè)計(jì)的思想和方法,更具備利用計(jì)算機(jī)求解實(shí)際問(wèn)題的能力,能靈活運(yùn)用高級(jí)語(yǔ)言進(jìn)行程序設(shè)計(jì)。其重點(diǎn)是培養(yǎng)學(xué)生掌握程序設(shè)計(jì)的思想和方法,難點(diǎn)是作為程序設(shè)計(jì)的入門(mén)課程,應(yīng)當(dāng)如何引導(dǎo)學(xué)生突破傳統(tǒng)的思維方式,培養(yǎng)程序設(shè)計(jì)的新思想。本文結(jié)合教學(xué)實(shí)踐與理論思考,談?wù)勗诮虒W(xué)上的一些經(jīng)驗(yàn)和體會(huì)。
2 VB教學(xué)中存在的問(wèn)題
第一,課堂教學(xué)模式單一。目前,Visual Basic 課程的教學(xué)模式主要是使用多媒體教室,教師采用Powerpoint課件加實(shí)例演示的教學(xué)模式,該模式比以前的“粉筆”+“黑板”教學(xué)模式有了很大的提高,加大了課堂的信息量,更直觀形象了。但如果僅采用這樣單一的教學(xué)模式,學(xué)生的學(xué)習(xí)過(guò)程還是以教師為中心,課件的信息量很大,授課速度又快,學(xué)生的自主學(xué)習(xí)和協(xié)作學(xué)習(xí)的積極性仍然沒(méi)有得到充分調(diào)用;第二,上機(jī)實(shí)驗(yàn)過(guò)程中,學(xué)生是自主學(xué)習(xí),忽視教師的引導(dǎo)作用。首先,在上機(jī)實(shí)驗(yàn)中,教師布置上機(jī)的任務(wù)后,學(xué)生自行練習(xí),教師就忙于解答學(xué)生提出的問(wèn)題,而不引導(dǎo)全局。在這種放任學(xué)生自主練習(xí)的狀況下,整個(gè)上機(jī)實(shí)驗(yàn)過(guò)程節(jié)奏松散,而實(shí)驗(yàn)任務(wù)對(duì)大部分同學(xué)來(lái)說(shuō)臺(tái)階過(guò)高,于是學(xué)生感到很茫然,便很快就喪失了學(xué)習(xí)興趣,甚至厭惡上機(jī)。其次,上機(jī)人數(shù)又多,學(xué)生遇到的問(wèn)題往往得不到教師的及時(shí)解決,于是挫折感增加,產(chǎn)生厭煩心理。
3 教學(xué)方法的探索
3.1 實(shí)例教學(xué),培養(yǎng)學(xué)生的學(xué)習(xí)興趣
程序設(shè)計(jì)是一種構(gòu)造性的技術(shù),對(duì)于學(xué)生來(lái)說(shuō),程序設(shè)計(jì)的思維方式和概念都是全新的,學(xué)生接受起來(lái)很困難,因此必須研究程序設(shè)計(jì)的教學(xué)方法。教學(xué)的過(guò)程是師生交往、共同發(fā)展的互動(dòng)過(guò)程。在程序設(shè)計(jì)教學(xué)中要從學(xué)生的興趣入手,利用學(xué)生對(duì)事物的好奇心,選擇一些有趣的、有實(shí)際意義的程序,激發(fā)學(xué)生的學(xué)習(xí)興趣。俗話(huà)說(shuō):教無(wú)定法,學(xué)無(wú)定法。打破課本原有以知識(shí)的邏輯結(jié)構(gòu)體系為順序組織課堂教學(xué)的方式,以學(xué)生的已有知識(shí)為基礎(chǔ),按照學(xué)生的認(rèn)知規(guī)律,遵循先易后難、先具體后抽象的原則,通過(guò)觀看、模仿、理解、總結(jié)、提高五個(gè)階段進(jìn)行教學(xué)。讓學(xué)生成為學(xué)習(xí)的主人。
興趣是最好的老師,興趣決定了教學(xué)效果的好壞。讓學(xué)生明確學(xué)習(xí)目的很重要,而教師還要在教學(xué)過(guò)程中去提高學(xué)生的學(xué)習(xí)興趣,使學(xué)生對(duì)學(xué)習(xí)本身或過(guò)程有興趣,而不是在外界剌激下只關(guān)心學(xué)習(xí)的結(jié)果,這直接影響到學(xué)生對(duì)這門(mén)課程的學(xué)習(xí)效果。教學(xué)中僅僅單純地傳遞教材內(nèi)容是不夠的,在第一堂課中,教師應(yīng)從學(xué)生的興趣入手,利用其對(duì)事物的好奇心,選擇一些有趣的、有實(shí)際意義的程序,從一開(kāi)始便激發(fā)學(xué)生的學(xué)習(xí)興趣。
3.2 創(chuàng)設(shè)問(wèn)題情境,激發(fā)學(xué)生學(xué)習(xí)的主動(dòng)性
在教學(xué)過(guò)程中提出問(wèn)題,集中學(xué)生的注意力,促進(jìn)學(xué)生主動(dòng)思考、主動(dòng)探索,可以使學(xué)生在學(xué)習(xí)的過(guò)程中成為主體。實(shí)際上,問(wèn)題是最好的老師,是學(xué)生學(xué)習(xí)的引導(dǎo)者,沒(méi)有問(wèn)題便沒(méi)有深入,老師要引導(dǎo)學(xué)生在解決問(wèn)題中學(xué)習(xí),即提出問(wèn)題,留給學(xué)生時(shí)間思考、討論、解決問(wèn)題,從而更深入地展開(kāi)學(xué)習(xí)。實(shí)踐證明,這種教學(xué)方法充分調(diào)動(dòng)了學(xué)生學(xué)習(xí)的積極性和主動(dòng)性。
例如,在講數(shù)組的概念時(shí),老師先設(shè)置問(wèn)題編程計(jì)算10個(gè)數(shù)的和。根據(jù)以前所學(xué),學(xué)生會(huì)想到需要定義10個(gè)變量用于存放這10個(gè)數(shù)。再進(jìn)一步要求計(jì)算50個(gè)數(shù)的和。這時(shí)候如果再定義50個(gè)變量,則會(huì)非常麻煩,學(xué)生此刻開(kāi)始思考該如何合理地聲明變量。再深人一步求100個(gè)數(shù)的和。此時(shí),當(dāng)教師引出數(shù)組的概念、分析數(shù)組的性質(zhì)時(shí),學(xué)生不僅能夠很容易記住數(shù)組的性質(zhì),還能夠知道在什么情況下使用數(shù)組,事半功倍。
3.3 舉一反三,培養(yǎng)學(xué)生的創(chuàng)新思維
編程教學(xué)的根本目的是要使學(xué)生能夠獨(dú)立地編寫(xiě)程序,而這正是編程教學(xué)中最大的難點(diǎn)。在實(shí)際教學(xué)中,筆者采用以下幾步措施來(lái)逐漸使學(xué)生能夠獨(dú)立編一些簡(jiǎn)單的程序:第一步精講例題,詳細(xì)分析其算法,逐一列出解題步驟,給出完整程序;第二步精心挑選很多程序題,讓學(xué)生閱讀程序,寫(xiě)出程序執(zhí)行結(jié)果,這一步十分關(guān)鍵,讀懂理解人家的程序是以后自行獨(dú)立編程的前提;第三步是讓學(xué)生做程序填充題和程序改錯(cuò)題,即給出相應(yīng)程序,把其中一些關(guān)鍵地方留空,讓學(xué)生填充,或在程序中提供一些錯(cuò)誤語(yǔ)句,要求學(xué)生修改正確;第四步出一些類(lèi)似例題的編程問(wèn)題,讓學(xué)生模仿完成;第五步讓學(xué)生獨(dú)立編寫(xiě)簡(jiǎn)單的程序。例如,為了讓學(xué)生獨(dú)立解決求s=1-1/2+1/3-1/4+...+1/99-1/100的程序,首先詳細(xì)分析了求s=1+2+3+...+99+100 的編程,程序如下:
Dim i As Integer
Dim sum As Integer
sum=0
For i=1 to 100 step 1
sum=sum+i
Next i
Print "sum="; sum
然后,將上題中“For i=1 to 100 step 1”這一語(yǔ)句略作改動(dòng):①For i=1 to 100 step 2;②For i=0 to 100 step 2;其余不變,讓學(xué)生閱讀程序并分析。程序①實(shí)際上是求100 以?xún)?nèi)奇數(shù)之和,程序②實(shí)際上是求100 以?xún)?nèi)偶數(shù)之和。再將上題中sum=sum+i 這一語(yǔ)句改成sum=sum+1/i,其余不變,那又如何呢?學(xué)生很容易得出程序?qū)嶋H上是求s=1+1/2+1/3+...+1/100,進(jìn)一步引導(dǎo)學(xué)生,這個(gè)程序有什么問(wèn)題?答案是由于求和結(jié)果不可能是整數(shù),故語(yǔ)句Dim sum As Integer 應(yīng)該改成Dim sum As Single。再引導(dǎo)學(xué)生思考,要求s=1-2+3-4+...+99-100的編程,上題中循環(huán)體sum=sum+I 應(yīng)該怎樣改動(dòng)? 結(jié)合相關(guān)數(shù)學(xué)知識(shí),學(xué)生很自然得到正確結(jié)sum=sum+i*(-1)^(i+1)。有了上述的層層鋪墊,相信學(xué)生是能夠獨(dú)立完成s=1-1/2+1/3-1/4+...+1/99-1/100 的程序代碼設(shè)計(jì)的。
能獨(dú)立編程后,還應(yīng)善于總結(jié)。有些編程題,表面上看起來(lái)好象不一樣,它們實(shí)質(zhì)上可以用一道通用的程序來(lái)實(shí)現(xiàn),只要改變其中的一條語(yǔ)句就可以了。如:
例1:編程求任意三個(gè)數(shù)中的最小數(shù)。
例2:編程求任意三個(gè)數(shù)中的最大數(shù)。
例3:編程求任意三個(gè)數(shù)中的中間數(shù)。
例4:編程將任意三個(gè)數(shù)從大到小輸出。
例5:編程將任意三個(gè)數(shù)從小到大輸出。
這五個(gè)編程題,雖然不一樣,但只要會(huì)編寫(xiě)其中的一道題程序,其它題目只要在這道題程序的墓礎(chǔ)上,修改最后的PRINT語(yǔ)句就可以了。
4 根據(jù)課程特點(diǎn),做好歸納小結(jié)
程序設(shè)計(jì)的教學(xué),一般都是從局部分散地講,如果不歸納總結(jié),學(xué)生則難以形成完整、清晰的框架,因此,教學(xué)中要及時(shí)歸納、做好小結(jié)。歸納可以是一個(gè)控件多方面(如事件、屬性設(shè)置等)的歸納,也可以是對(duì)一種結(jié)構(gòu)的歸納(如分支結(jié)構(gòu)的歸納)。總結(jié)可以是一課的總結(jié),也可以是幾課的總結(jié)。歸納總結(jié)的形式也可以多種多樣,可以使用文字概括,也可以使用圖示總結(jié),重難點(diǎn)要著重強(qiáng)調(diào)。這種歸納總結(jié),一方面有利于學(xué)生理解知識(shí)、融會(huì)貫通,順利實(shí)現(xiàn)知識(shí)遷移,另一方面對(duì)于提高學(xué)生的學(xué)習(xí)效率也有很大的幫助。
總之,教學(xué)方法在程序設(shè)計(jì)教學(xué)中舉足輕重,它制約著程序設(shè)計(jì)教學(xué)的效率。雖然教無(wú)定法,但萬(wàn)變不離其宗,絕不能離開(kāi)程序設(shè)計(jì)的教學(xué)內(nèi)容和教學(xué)目標(biāo)、脫離學(xué)生的知識(shí)背景和認(rèn)知規(guī)律。采取符合學(xué)生認(rèn)知規(guī)律的、科學(xué)的教學(xué)方法,必然會(huì)提高教學(xué)效率,取得事半功倍的效果。
5 不斷培養(yǎng)學(xué)生的自學(xué)能力
在教學(xué)中筆者還注意不斷培養(yǎng)學(xué)生的自學(xué)能力。自學(xué)能力在大學(xué)生能力層次當(dāng)中屬于最重要最基本的,首先,有了自學(xué)能力就可以通過(guò)課外閱讀,學(xué)到課本里沒(méi)有的東西,知識(shí)豐富了,眼界也開(kāi)闊了,對(duì)于活躍學(xué)生的思想,提高科學(xué)思維能力大有好處:它可以使學(xué)生打破老師和課堂的限制,在學(xué)習(xí)上獲取更大的自由。其次,學(xué)生在學(xué)校里生活畢竟是短暫的,現(xiàn)在提倡終身教育,將來(lái)不論他們從事哪種工作,都需要在工作中不斷提高文化科學(xué)水平,這種提高主要靠自學(xué),即自已閱讀有關(guān)書(shū)籍和報(bào)刊,運(yùn)用已掌握的知識(shí),去認(rèn)知新知識(shí),自覺(jué)發(fā)現(xiàn)問(wèn)題,再歸納概念,作出判斷,進(jìn)而解決問(wèn)題。再次,針對(duì)計(jì)算機(jī)的飛速發(fā)展、日新月異的特點(diǎn),自學(xué)能力的成長(zhǎng)和提高,顯得更為重要。
在不斷的教改實(shí)踐中,筆者始終堅(jiān)持一個(gè)指導(dǎo)思想,即充分相信學(xué)生的學(xué)習(xí)潛力,減少學(xué)生對(duì)教師和教材的依賴(lài)性,激發(fā)學(xué)生的學(xué)習(xí)興趣,提高學(xué)生學(xué)習(xí)的主動(dòng)性,培養(yǎng)學(xué)生的好奇心,從而發(fā)展學(xué)生的分析能力,觀察能力和獨(dú)創(chuàng)能力,使學(xué)生真正成為課堂的主體。
參考文獻(xiàn):
[1] 牛又奇,孫建國(guó).新編Visual Basic 程序設(shè)計(jì)教程[M].蘇州:蘇州大學(xué)出版社,2002.
篇6
研究背景
計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言一直是學(xué)生反映比較難的一門(mén)課程。長(zhǎng)期以來(lái),很多高校使用VB語(yǔ)言作為“高級(jí)語(yǔ)言程序設(shè)計(jì)”課程的教學(xué)內(nèi)容,筆者所在學(xué)校原來(lái)也是如此。在VB語(yǔ)言的教學(xué)過(guò)程中,筆者發(fā)現(xiàn)了一些問(wèn)題,突出表現(xiàn)為以下兩點(diǎn):①學(xué)生反映學(xué)習(xí)編程比較難,而且歷年考試成績(jī)也不理想;②學(xué)生覺(jué)得學(xué)習(xí)這門(mén)課程用處不大。這就導(dǎo)致很多學(xué)生對(duì)這門(mén)課程沒(méi)興趣,上課純粹為了應(yīng)付考試,甚至產(chǎn)生厭學(xué)情緒。[1]筆者仔細(xì)分析了上述問(wèn)題,認(rèn)為問(wèn)題產(chǎn)生的原因主要有以下三個(gè):①學(xué)生基礎(chǔ)較差,且邏輯思維能力不強(qiáng)。②VB語(yǔ)言要結(jié)合數(shù)據(jù)庫(kù)編程,才能展現(xiàn)它的強(qiáng)大功能。而大多數(shù)學(xué)校只開(kāi)一學(xué)期課程,學(xué)時(shí)太短,學(xué)生僅能機(jī)械地學(xué)習(xí)語(yǔ)法,沒(méi)有時(shí)間學(xué)習(xí)實(shí)際應(yīng)用部分的內(nèi)容,從而覺(jué)得VB語(yǔ)言沒(méi)有用。③學(xué)語(yǔ)法時(shí),教師沒(méi)有給學(xué)生呈現(xiàn)對(duì)其專(zhuān)業(yè)學(xué)習(xí)有幫助的例子,所以他們沒(méi)有一個(gè)直觀的感受。
筆者經(jīng)過(guò)詳細(xì)的論證,決定采用Excel VBA替代VB教學(xué)。VBA有著其他語(yǔ)言或開(kāi)發(fā)工具所不具備的獨(dú)特優(yōu)點(diǎn):①VBA可以通過(guò)操作Excel操作數(shù)據(jù)庫(kù),這樣就可以開(kāi)發(fā)出很多實(shí)用的程序,使學(xué)生對(duì)編程有了直觀的體驗(yàn),提高了他們的學(xué)習(xí)興趣。[2]②VBA是易學(xué)、上手較快的編程語(yǔ)言,且屬于VB語(yǔ)言的子集。即使是非計(jì)算機(jī)專(zhuān)業(yè)人員,也可以用它編寫(xiě)出需要的件,極大地降低了學(xué)生學(xué)習(xí)的難度。③可以高效、快速地編制出Windows環(huán)境下功能強(qiáng)大、圖形界面豐富的應(yīng)用軟件系統(tǒng)。用Excel VBA替代VB的教學(xué)改革在筆者所在學(xué)院已經(jīng)進(jìn)行了兩年,并取得了較好的教學(xué)效果。學(xué)生學(xué)習(xí)興趣明顯加強(qiáng),對(duì)編程的應(yīng)用能力也得到了較大的提高。
目前仍存在的問(wèn)題
“高級(jí)語(yǔ)言程序設(shè)計(jì)”課程改革雖然已經(jīng)取得了一定的成效,但還存在以下幾個(gè)問(wèn)題。
1.缺乏完善的題庫(kù)
由于筆者用Excel VBA替代了VB進(jìn)行教學(xué),學(xué)生在上機(jī)練習(xí)的過(guò)程中,有很多題目不再是傳統(tǒng)的編程題。例如,在教學(xué)過(guò)程中,筆者把Excel作為數(shù)據(jù)庫(kù)使用,讓學(xué)生通過(guò)編程操作Excel,使他們能輕松理解數(shù)據(jù)庫(kù)的基本概念和知識(shí)。但由于沒(méi)有建立統(tǒng)一的題庫(kù),每位教師上課時(shí)例題都有所不相同,對(duì)知識(shí)點(diǎn)的要求也有細(xì)微的差別,所以給期末考試命題帶來(lái)了困難,未能實(shí)現(xiàn)教學(xué)標(biāo)準(zhǔn)化。
2.困難解答不及時(shí),教學(xué)實(shí)時(shí)化不夠
“高級(jí)語(yǔ)言程序設(shè)計(jì)”課程是一門(mén)對(duì)實(shí)踐要求較高的課程。學(xué)生上機(jī)編程時(shí),一個(gè)語(yǔ)法錯(cuò)誤或隱含的邏輯錯(cuò)誤都將導(dǎo)致程序運(yùn)行失敗,甚至系統(tǒng)崩潰。這時(shí),如果遇到的問(wèn)題不能及時(shí)得到解決,學(xué)生則容易產(chǎn)生厭學(xué)情緒。但在課堂中,教師要同時(shí)面對(duì)幾十個(gè)學(xué)生,要想及時(shí)解答每個(gè)學(xué)生的問(wèn)題是不可能的,教學(xué)實(shí)時(shí)化不夠。
3.教學(xué)考核、評(píng)價(jià)體系不完善
考試的目的不僅是為了檢查學(xué)生的學(xué)習(xí)成績(jī),還要及時(shí)發(fā)現(xiàn)他們哪些知識(shí)點(diǎn)掌握不足,并針對(duì)特定問(wèn)題進(jìn)行指導(dǎo)。目前,筆者所在學(xué)校的改革使學(xué)生對(duì)“高級(jí)語(yǔ)言程序設(shè)計(jì)”這門(mén)課程的整體學(xué)習(xí)成效有了較大提高,但學(xué)校的教學(xué)考核、評(píng)價(jià)體系不夠完善,教師對(duì)單個(gè)學(xué)生的學(xué)習(xí)狀況掌握還不夠精細(xì)。
“學(xué)、練、考”一體的VBA教學(xué)平臺(tái)構(gòu)思
針對(duì)以上問(wèn)題,筆者提出開(kāi)發(fā)一個(gè)集“學(xué)、練、考”于一體的VBA教學(xué)平臺(tái)來(lái)實(shí)現(xiàn)教學(xué)的標(biāo)準(zhǔn)化、實(shí)時(shí)化、精細(xì)化,其具體步驟如下。
(1)開(kāi)發(fā)一個(gè)統(tǒng)一的題庫(kù)來(lái)實(shí)現(xiàn)教學(xué)的標(biāo)準(zhǔn)化。按照教學(xué)大綱的要求,筆者把每一章的知識(shí)點(diǎn)按選擇題、判斷題、程序填空題、編程題四類(lèi)題型編制成試題庫(kù)。這樣,不論哪位教師上課,學(xué)生掌握的知識(shí)點(diǎn)都是固定的,保障了教學(xué)質(zhì)量的穩(wěn)定。
(2)單元測(cè)驗(yàn)后,軟件會(huì)自動(dòng)統(tǒng)計(jì)出每題的出錯(cuò)率,教師很容易就可以知道學(xué)生哪些知識(shí)點(diǎn)掌握得不夠好,以便下節(jié)課進(jìn)行重點(diǎn)講授,從而實(shí)現(xiàn)教學(xué)的實(shí)時(shí)化。
(3)系統(tǒng)對(duì)每位學(xué)生的每次登錄練習(xí)都有記錄(包括自測(cè)成績(jī)、錯(cuò)題編號(hào)等),這樣教師可以很容易掌握每位學(xué)生的學(xué)習(xí)情況,并針對(duì)學(xué)習(xí)落后的學(xué)生進(jìn)行定點(diǎn)輔導(dǎo),以達(dá)到教學(xué)精細(xì)化的目的。
開(kāi)發(fā)方案概述
1.關(guān)于自動(dòng)閱卷問(wèn)題
筆者采用Excel VBA進(jìn)行教學(xué),由于Excel自帶了VBA開(kāi)發(fā)環(huán)境,所以生成的題目只需要一個(gè)Excel文件即可保存。在該文件中,工作表一保存判斷題,工作表二保存選擇題,工作表三保存程序填空題,工作表四保存編程題。對(duì)于客觀題(前三種題型),程序只需要按題號(hào)與題庫(kù)答案進(jìn)行對(duì)比就可以閱卷。對(duì)于編程題的自動(dòng)閱卷,筆者這樣設(shè)計(jì):在題庫(kù)中,每道編程題的結(jié)果都要求保存在題目文件的工作表四中;閱卷時(shí),程序自動(dòng)打開(kāi)每位學(xué)生的試卷文件(一個(gè)Excel文件),采用Excel VBA的過(guò)程調(diào)用(call)命令執(zhí)行過(guò)程(學(xué)生抽到的題目號(hào)),再把結(jié)果(保存在工作表四中的數(shù)據(jù))跟題庫(kù)中的結(jié)果進(jìn)行比較,最后得出成績(jī)。對(duì)于有語(yǔ)法錯(cuò)誤不能運(yùn)行的程序,系統(tǒng)將殺死進(jìn)程,再對(duì)學(xué)生的源代碼進(jìn)行關(guān)鍵字對(duì)比,給出步驟分。[3]
2.系統(tǒng)結(jié)構(gòu)
考慮到出題效率,筆者采用了C/S系統(tǒng)結(jié)構(gòu),開(kāi)發(fā)工具使用Visual Studio 2010,數(shù)據(jù)庫(kù)使用SQL Server2008,系統(tǒng)結(jié)構(gòu)如下圖所示。
教師登錄系統(tǒng)后,可以出卷,安排任課班級(jí)的考試,查閱任課班級(jí)學(xué)生的考試成績(jī),以及查閱學(xué)生的練習(xí)情況。學(xué)生登錄后,可以進(jìn)行單元練習(xí),自我測(cè)試,查看題目答案以及知識(shí)點(diǎn)描述等。
3.數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)主要由學(xué)生信息表(如下頁(yè)表1)、試卷信息表(如下頁(yè)表2)和學(xué)生成績(jī)表(如表3)三個(gè)表組成。
結(jié)束語(yǔ)
構(gòu)建“學(xué)、練、考”一體的VBA教學(xué)平臺(tái),能有效解決“高級(jí)語(yǔ)言程序設(shè)計(jì)”課程教學(xué)中存在的問(wèn)題,加強(qiáng)教師和學(xué)生的信息交流,方便教師及時(shí)掌握學(xué)生的學(xué)習(xí)動(dòng)態(tài),較好地實(shí)現(xiàn)了教學(xué)的標(biāo)準(zhǔn)化、實(shí)時(shí)化、精細(xì)化,該平臺(tái)還可以作為一種通用教學(xué)平臺(tái)應(yīng)用到其他課程的教學(xué)中,具有普遍的應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]孫淑霞.地方高校大學(xué)計(jì)算機(jī)基礎(chǔ)課程改革的探索與實(shí)踐[J].中國(guó)大學(xué)教學(xué),2014(4).
篇7
從心理學(xué)的角度分析,興趣有直接興趣和間接興趣之分,前者主要是感性層面的,屬于外在動(dòng)機(jī),而后者是理性層面的,屬于內(nèi)在動(dòng)機(jī),是驅(qū)動(dòng)學(xué)生學(xué)習(xí)的最根本、最重要、最穩(wěn)定的因素。我們的教學(xué)不能止步于僅僅激發(fā)學(xué)生的直接興趣,更重要的是要激發(fā)學(xué)生的間接興趣。讓學(xué)生在學(xué)習(xí)過(guò)程中“嘗到甜頭”,獲得成功的體驗(yàn)則是一種很好的激發(fā)學(xué)生間接興趣的方法。在程序設(shè)計(jì)教學(xué)中的第一節(jié)課,我們可以先展示一些自己編寫(xiě)的或是以前學(xué)生編寫(xiě)的有趣的程序,吸引學(xué)生,告訴他們學(xué)習(xí)了VB程序設(shè)計(jì)后,大家都能編寫(xiě)出這些小程序,先從感性層面激發(fā)他們學(xué)習(xí)的興趣。然后選擇其中一個(gè)相對(duì)簡(jiǎn)單的實(shí)例,讓學(xué)生看一下界面、代碼及運(yùn)行效果,然后讓學(xué)生跟著我們操作一步步實(shí)現(xiàn)這個(gè)程序(主要是把事前發(fā)給學(xué)生的代碼讓學(xué)生復(fù)制到對(duì)應(yīng)的地方),讓他們初步體驗(yàn)VB程序設(shè)計(jì)的過(guò)程,并且獲得成功的體驗(yàn),從而在理性層面上激發(fā)他們學(xué)習(xí)程序設(shè)計(jì)的興趣。在后面的教學(xué)中,我們還可以讓學(xué)生在學(xué)習(xí)過(guò)程中有一定的自,允許產(chǎn)生“自己的任務(wù)主題”等方法來(lái)影響學(xué)生學(xué)習(xí)的內(nèi)在因素,培養(yǎng)學(xué)生學(xué)習(xí)的興趣,激發(fā)學(xué)生學(xué)習(xí)動(dòng)機(jī)。
二、選擇從簡(jiǎn)單實(shí)例入手,調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性
Vb程序設(shè)計(jì)是一門(mén)應(yīng)用性很強(qiáng)的課程,它既有理論又有實(shí)踐。而從初中生的認(rèn)知規(guī)律來(lái)看,只有把理論引入到具體的簡(jiǎn)單的實(shí)例中去,讓學(xué)生通過(guò)模仿,在實(shí)際操作中探究和領(lǐng)悟,才能讓學(xué)生輕松愉快的接受新的知識(shí),調(diào)動(dòng)他們學(xué)習(xí)程序設(shè)計(jì)的積極性。
例如,書(shū)本第三節(jié)中設(shè)計(jì)了一個(gè)“猜幣”程序,它首先有隨機(jī)函數(shù)int(2*rnd)產(chǎn)生0或是1,并且根據(jù)產(chǎn)生的0或是1顯示相應(yīng)的圖片和文字,然后根據(jù)輸入的數(shù)據(jù)(0或1)和隨機(jī)函數(shù)產(chǎn)生的數(shù)據(jù)對(duì)比,如果一樣就顯示“猜對(duì)了”,否則顯示“猜錯(cuò)了”。
對(duì)于首次接觸條件語(yǔ)句的學(xué)生來(lái)說(shuō),如果讓他們通過(guò)這個(gè)實(shí)例理解條件語(yǔ)句的運(yùn)用,那么學(xué)生看到如此復(fù)雜的程序設(shè)計(jì)思路,就會(huì)打擊他們的學(xué)習(xí)積極性。所以針對(duì)這個(gè)實(shí)例,我們可以把它分解成兩個(gè)小的程序來(lái)完成,減輕學(xué)生在理解上的難度。首先,我們讓學(xué)生完成一個(gè)簡(jiǎn)單的條件語(yǔ)句程序,讓學(xué)生判斷如果text1的text值大于或等于60,label2的caption屬性值為“恭喜你,及格了”,否則label2的caption屬性值為“很遺憾,沒(méi)有及格”。根據(jù)這個(gè)最簡(jiǎn)單的程序,讓學(xué)生能初步理解條件判斷語(yǔ)句的運(yùn)用。
然后,把根據(jù)隨機(jī)函數(shù)產(chǎn)生數(shù)據(jù)來(lái)顯示相應(yīng)的圖片和文字作為另一個(gè)程序。在這個(gè)程序中只要判斷隨機(jī)數(shù)如果是1, image1控件的picture屬性值導(dǎo)入正面圖片,label1的caption屬性值為“正面”,否則image1控件的picture屬性值導(dǎo)入背面圖片,label1的caption屬性值為“背面”。第一個(gè)程序是根據(jù)text1的輸入值來(lái)判斷顯示,第二個(gè)是根據(jù)隨機(jī)函數(shù)產(chǎn)生的值來(lái)判斷顯示,兩個(gè)程序的思維方法和解決的方法類(lèi)似,可以讓學(xué)生自己嘗試著完成。
當(dāng)這兩個(gè)程序?qū)W生都能理解后,讓學(xué)生進(jìn)一步探索判斷輸入的值與隨機(jī)的值如果相同就顯示“猜對(duì)了”,否則顯示“猜錯(cuò)了”,這樣學(xué)生很容易就能想到只要對(duì)第一個(gè)程序稍加改動(dòng)將判斷的條件改成隨機(jī)函數(shù)產(chǎn)生的值就可以完成了。這樣通過(guò)簡(jiǎn)單的實(shí)例教學(xué),再加上學(xué)生的進(jìn)一步探索就能完成稍微復(fù)雜的程序,讓學(xué)生在一步步的完成過(guò)程中得到越來(lái)越多的成就感,既能有效地調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,還同時(shí)培養(yǎng)了學(xué)生的探索能力。
三、培養(yǎng)學(xué)生互助合作的精神,促進(jìn)學(xué)生自主探究學(xué)習(xí)
在程序設(shè)計(jì)教學(xué)過(guò)程中,學(xué)生的兩極分化會(huì)比必修中的學(xué)習(xí)更加明顯,有的學(xué)生會(huì)對(duì)程序設(shè)計(jì)很感興趣,很樂(lè)意編程,而有的學(xué)生可能會(huì)很討厭,分析其原因之一很可能是一部分學(xué)生在學(xué)習(xí)過(guò)程中獲得的成功體驗(yàn)少,久而久之會(huì)失去學(xué)習(xí)的動(dòng)力,因此在教學(xué)過(guò)程中要注重培養(yǎng)學(xué)生的互助合作精神。我們可以根據(jù)學(xué)生對(duì)知識(shí)的掌握情況來(lái)劃分若干個(gè)組,教學(xué)時(shí),任務(wù)按照難易程度分開(kāi)發(fā)給他們,每個(gè)學(xué)生必須有必須完成的基本任務(wù),還有可選擇的附加任務(wù),對(duì)小組的評(píng)分標(biāo)準(zhǔn)是每個(gè)組的基本任務(wù)必須要完成,否則要扣分,附加任務(wù)看完成人數(shù)的多少額外附加一定的分值,這樣能力好的學(xué)生在做好基本任務(wù)后就會(huì)幫助其他學(xué)生,好的學(xué)生之間會(huì)相互討論附加的任務(wù),在相互的幫助和討論中,他們還可能會(huì)發(fā)現(xiàn)問(wèn)題并主動(dòng)地去探討一些還沒(méi)學(xué)到的問(wèn)題。這樣不僅能逐漸培養(yǎng)起學(xué)生的互助合作精神,而且由于組間存在競(jìng)爭(zhēng)激發(fā)了學(xué)生的學(xué)習(xí)熱情,促進(jìn)他們主動(dòng)去探究和學(xué)習(xí)。只有這樣才能讓更多的學(xué)生喜歡我們的課堂,喜歡我們這門(mén)課。
程序設(shè)計(jì)課既是枯燥的又是有趣的,我們只有在教學(xué)過(guò)程中根據(jù)學(xué)生的實(shí)際情況,結(jié)合學(xué)生的認(rèn)知特點(diǎn)積極地進(jìn)行教學(xué)實(shí)踐和探索,以學(xué)生學(xué)習(xí)活動(dòng)為中心,精心設(shè)計(jì)課堂,進(jìn)行大膽的教學(xué)創(chuàng)新實(shí)踐。
參考文獻(xiàn):
\[1\]呂品.關(guān)于程序設(shè)計(jì)教學(xué)──論中小學(xué)計(jì)算機(jī)課程設(shè)計(jì)之二.人民教育出版社初中信息技術(shù)網(wǎng)站論文.
篇8
一、程序設(shè)計(jì)課教學(xué)面臨的問(wèn)題
在程序設(shè)計(jì)課教學(xué)中,多數(shù)教師采用的是傳統(tǒng)的教學(xué)模式,即:以編程語(yǔ)言的語(yǔ)法教學(xué)為主線(xiàn),教師只是告訴學(xué)生那種語(yǔ)言有些什么命令,語(yǔ)言的各種語(yǔ)法,學(xué)生只是被動(dòng)地接受,大量的新專(zhuān)業(yè)名詞使學(xué)生難以掌握,在具體的編程及上機(jī)操作時(shí),往往出現(xiàn)無(wú)從下手、錯(cuò)誤百出、不會(huì)調(diào)試等情況,還有些學(xué)生照著書(shū)上能做,脫離書(shū)本什么也不會(huì)。長(zhǎng)期以往,會(huì)使學(xué)生認(rèn)為程序設(shè)計(jì)課程十分深?yuàn)W、那樣的可望而不可及,最終會(huì)導(dǎo)致學(xué)生對(duì)課程產(chǎn)生厭倦的思想,即使學(xué)習(xí)完課程,學(xué)生的程序設(shè)計(jì)思路非常狹窄,解決實(shí)際問(wèn)題的能力較差,不利于學(xué)生學(xué)習(xí)興趣的培養(yǎng)以及學(xué)生思維能力、創(chuàng)新能力、獨(dú)立分析問(wèn)題和解決問(wèn)題的能力的提高。
二、“項(xiàng)目教學(xué)法”的實(shí)踐與探索
“項(xiàng)目教學(xué)法”是以一個(gè)較完整的軟件開(kāi)發(fā)案例為中心,整個(gè)學(xué)期的教學(xué)都圍繞這個(gè)案例的設(shè)計(jì)進(jìn)行講解,通過(guò)對(duì)案例的講解,將程序設(shè)計(jì)中需要學(xué)習(xí)的各個(gè)知識(shí)點(diǎn)融入到案例中,這樣就將理論和實(shí)踐完全結(jié)合起來(lái),加深了學(xué)生對(duì)知識(shí)點(diǎn)的理解和培養(yǎng)了學(xué)習(xí)的學(xué)習(xí)興趣,并引導(dǎo)學(xué)生自行對(duì)案例進(jìn)行完善和修改,使學(xué)生程序設(shè)計(jì)能力得到提高。具體實(shí)施方案如下:
(一)軟件開(kāi)發(fā)案例的選擇。要準(zhǔn)備好一個(gè)具有實(shí)際應(yīng)用功能,適合學(xué)生掌握的軟件開(kāi)發(fā)案例,案例不能選擇太大太復(fù)雜的設(shè)計(jì),并且案例中涉及的內(nèi)容要是學(xué)生比較熟悉的,軟件功能不能過(guò)于復(fù)雜,但必須覆蓋課程中所有的知識(shí)點(diǎn),在講解時(shí)選用有代表性的功能模塊。可選用學(xué)生成績(jī)管理系統(tǒng)、學(xué)生選課管理系統(tǒng)、酒店管理系統(tǒng)等MIS系統(tǒng)。
(二)以項(xiàng)目開(kāi)發(fā)形式制定教學(xué)計(jì)劃和教學(xué)進(jìn)度。在制定課程教學(xué)進(jìn)度的時(shí)候要結(jié)合項(xiàng)目來(lái)進(jìn)行,教學(xué)計(jì)劃和教學(xué)進(jìn)度的設(shè)計(jì)應(yīng)按軟件設(shè)計(jì)過(guò)程的順序來(lái)進(jìn)行,在課程中可講解有關(guān)軟件工程方面的相關(guān)知識(shí)。
(三)精心準(zhǔn)備教案。根據(jù)已經(jīng)制訂的教學(xué)計(jì)劃和教學(xué)進(jìn)度,將課程中的各知識(shí)點(diǎn)較完整地總結(jié)歸納,做成電子教案。在講解軟件設(shè)計(jì)的時(shí)候,涉及到某知識(shí)點(diǎn)的時(shí)候,便可打開(kāi)該知識(shí)點(diǎn)的電子教案進(jìn)行演示講解,便于學(xué)生理解掌握知識(shí)點(diǎn)。
(四)鼓勵(lì)學(xué)生變換代碼。學(xué)生在許多情況下只會(huì)模仿老師講解的程序完成,并沒(méi)有真正理解程序代碼的應(yīng)用,不知道為什么要這樣寫(xiě),在講解過(guò)程中,應(yīng)該鼓勵(lì)學(xué)生使用其他代碼來(lái)完成某些功能,促進(jìn)學(xué)生對(duì)程序的理解,提高學(xué)生的創(chuàng)新能力。
(五)作業(yè)的設(shè)計(jì)。在知識(shí)點(diǎn)講授完后,應(yīng)設(shè)計(jì)一個(gè)與講的例子難度相當(dāng)?shù)淖鳂I(yè),讓學(xué)生思考獨(dú)立完成作業(yè),學(xué)生完成作業(yè)后會(huì)有一種成就感和強(qiáng)烈的繼續(xù)學(xué)的愿望。教師可以通過(guò)學(xué)生的設(shè)計(jì),給他們正確的引導(dǎo)。 轉(zhuǎn)貼于
(六)課程教學(xué)后期讓學(xué)生參與項(xiàng)目開(kāi)發(fā)。在課程的基本知識(shí)點(diǎn)講授完,學(xué)生也掌握比較透徹后,可讓學(xué)生參與到項(xiàng)目開(kāi)發(fā)中,將項(xiàng)目中一些功能分成多個(gè)模塊,以實(shí)驗(yàn)的形式分配給學(xué)生,讓學(xué)生也可以在課余的時(shí)間進(jìn)行開(kāi)發(fā)。
(七)改變考核方式。考核方式應(yīng)該靈活多樣,要甩掉“學(xué)為所考”的思想包袱。程序設(shè)計(jì)課程本身是理論學(xué)習(xí)與動(dòng)手操作于一體的課程,不能一味地追求理論知識(shí),而忽視動(dòng)手操作能力,因此,應(yīng)對(duì)學(xué)生的評(píng)價(jià)貫穿到整個(gè)學(xué)期的課程學(xué)習(xí)中。考核應(yīng)該由平時(shí)作業(yè)、實(shí)驗(yàn)設(shè)計(jì)作業(yè)、期末考試等幾項(xiàng)組成,平時(shí)考核可分階段進(jìn)行,要讓學(xué)生注重學(xué)習(xí)的過(guò)程,而不是考試的結(jié)果。
(八)課程實(shí)訓(xùn)。在課程的知識(shí)點(diǎn)全部講授完成后,安排2-4周的實(shí)訓(xùn),讓學(xué)生分組自由選題來(lái)進(jìn)行項(xiàng)目的開(kāi)發(fā),學(xué)生在開(kāi)發(fā)時(shí)應(yīng)分組進(jìn)行,讓學(xué)生分組進(jìn)行開(kāi)發(fā)可以發(fā)發(fā)揚(yáng)團(tuán)隊(duì)合作精神,便于優(yōu)勢(shì)互補(bǔ),有助于學(xué)生以后走上工作崗位,適應(yīng)開(kāi)發(fā)工作。在實(shí)訓(xùn)中,應(yīng)以學(xué)生的設(shè)計(jì)意見(jiàn)為主,充分發(fā)揮學(xué)生的能力,教師只給予相應(yīng)的建議。
三、實(shí)施過(guò)程
這里以設(shè)計(jì)管理系統(tǒng)的登陸窗體為例,介紹“項(xiàng)目教學(xué)法”中一個(gè)模塊教學(xué)的具體實(shí)施過(guò)程。登陸窗體的功能是輸入正確的用戶(hù)名和密碼通過(guò)身份驗(yàn)證,進(jìn)入主窗體。登陸窗體涉及到的知識(shí)點(diǎn)如下:1.窗體(Form)、標(biāo)簽(Label)、文本框(TextBox)、命令按鈕(Command)等控件的常用屬性的設(shè)置。2.窗體、標(biāo)簽、文本框、命令按鈕的常用方法。3.變量與數(shù)據(jù)類(lèi)型。4.IF語(yǔ)句及一些常用的函數(shù)的使用。
四、總結(jié)
系統(tǒng)登陸窗體的設(shè)計(jì)分下面幾個(gè)階段進(jìn)行:第一階段,對(duì)登陸窗體的設(shè)計(jì)和各控件的屬性進(jìn)行講解。第二階段,引入新知識(shí)點(diǎn)。針對(duì)新知識(shí)點(diǎn)在本例中的應(yīng)用對(duì)的各個(gè)新知識(shí)點(diǎn)進(jìn)行詳細(xì)的講解。第三階段,上機(jī)練習(xí)。1.讓學(xué)生模仿教師的設(shè)計(jì)過(guò)程做一遍,輸入程序代碼,加深印象。2.鼓勵(lì)學(xué)生提出問(wèn)題,用新的方法來(lái)完成程序代碼,同時(shí)提出加強(qiáng)程序代碼功能的方案,讓學(xué)生來(lái)完成,使學(xué)生加強(qiáng)對(duì)新知識(shí)點(diǎn)的理解和運(yùn)用。例如,能不能在輸入密碼時(shí)限定輸入密碼次數(shù)。3.布置作業(yè),布置與知識(shí)點(diǎn)相關(guān)的作業(yè),讓學(xué)生通過(guò)查資料自己完成作業(yè),對(duì)作業(yè)進(jìn)行批改。第四階段,對(duì)程序提出新的方案,如用戶(hù)名和密碼的存儲(chǔ)采用數(shù)據(jù)庫(kù),密碼的加密等,為以后的知識(shí)講授做準(zhǔn)備,同時(shí)給學(xué)生留下印象,在講到這些知識(shí)點(diǎn)的時(shí)候再來(lái)改進(jìn)程序。
“項(xiàng)目教學(xué)法”被應(yīng)用到程序設(shè)計(jì)類(lèi)課程的教學(xué)中,使教學(xué)與生產(chǎn)結(jié)合起來(lái),學(xué)以致用,注重培養(yǎng)學(xué)生動(dòng)手操作能力,學(xué)生普遍反映采用了“項(xiàng)目教學(xué)法”的教學(xué)模式后開(kāi)發(fā)能力提升很快,專(zhuān)業(yè)知識(shí)得以鞏固,相關(guān)知識(shí)點(diǎn)的運(yùn)用印象特別深刻,在比較真實(shí)的工作環(huán)境下,既學(xué)到了知識(shí),又學(xué)會(huì)了分析問(wèn)題、解決問(wèn)題的方法。在《VB程序設(shè)計(jì)》課程應(yīng)用“項(xiàng)目教學(xué)法”的教學(xué)模式的教學(xué)過(guò)程,也發(fā)現(xiàn)了一些問(wèn)題,雖然運(yùn)作難度較傳統(tǒng)教學(xué)模式較大,但值得進(jìn)一步的實(shí)踐和探索。
篇9
本系統(tǒng)的目標(biāo)是:通過(guò)相關(guān)軟件、硬件的設(shè)計(jì),實(shí)現(xiàn)由主機(jī)(上位機(jī))通過(guò)單片機(jī)(下位機(jī))通訊實(shí)現(xiàn)對(duì)石蠟車(chē)間現(xiàn)場(chǎng)石蠟成型機(jī)工作狀態(tài)的監(jiān)控。即利用主機(jī)的監(jiān)控軟件與單片機(jī)進(jìn)行通信,以實(shí)現(xiàn)對(duì)石蠟成型機(jī)的監(jiān)控功能。本系統(tǒng)應(yīng)具備如下功能:
(1) 界面設(shè)計(jì)清晰,功能齊全,實(shí)時(shí)準(zhǔn)確的顯示石蠟成型機(jī)所有參數(shù)及狀態(tài)
(2) 上位機(jī)與下位機(jī)能進(jìn)行可靠、實(shí)時(shí)的通信。
(3) 查詢(xún)歷史記錄功能
1軟硬件的選取及上下位機(jī)間通信協(xié)議的定義
基于上述目標(biāo)與功能,要實(shí)現(xiàn)本系統(tǒng),首先要解決以下幾個(gè)問(wèn)題:
1.1 上位機(jī)與單片機(jī)之間通信方式的選取
串行通信使用一條數(shù)據(jù)線(xiàn),將數(shù)據(jù)一位一位地依次傳輸,處理的數(shù)據(jù)電壓只有一個(gè)準(zhǔn)位,因此不容易漏失數(shù)據(jù)。串行通信端口(RS-232)是每部計(jì)算機(jī)上的必要配備,它不僅實(shí)用簡(jiǎn)單,而且價(jià)格便宜。。因此本系統(tǒng)采用RS-232串行通信方式用于上、下位機(jī)間的通信。
1.2 監(jiān)控軟件開(kāi)發(fā)平臺(tái)的選取
VisualBasic(VB)是一種可視化的、面向?qū)ο蠛筒捎檬录?qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語(yǔ)言,可用于開(kāi)發(fā)Windows環(huán)境下的各類(lèi)應(yīng)用程序。它簡(jiǎn)單易學(xué)、效率高,可以高效、快速地開(kāi)發(fā)Windows環(huán)境下功能強(qiáng)大、圖形界面豐富的應(yīng)用軟件系統(tǒng)。所以,本系統(tǒng)采用VB作為監(jiān)控軟件平臺(tái)。
1.3 單片機(jī)型號(hào)以及芯片的選取
MSP430系列單片機(jī)是美國(guó)德州儀器(TI)1996年開(kāi)始推向市場(chǎng)的一種16位具有精簡(jiǎn)指令集的、超低功耗的混合信號(hào)處理器(Mixed SignalProcessor)。由于它具有極低的功耗、豐富的片內(nèi)外設(shè)和方便靈活的開(kāi)發(fā)手段,已成為眾多單片機(jī)系列中一顆耀眼的新星。本系統(tǒng)采用MSP430單片機(jī)。
1.4 上位機(jī)與單片機(jī)之間的通信協(xié)議
Modbus 協(xié)議是應(yīng)用于電子控制器上的一種通用語(yǔ)言。通過(guò)此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(luò)(例如以太網(wǎng))和其它設(shè)備之間可以通信。它已經(jīng)成為一通用工業(yè)標(biāo)準(zhǔn)。本系統(tǒng)采用Modbus通訊協(xié)議進(jìn)行通訊,采用16位CRC校驗(yàn)以保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。
篇10
0 前言
在信息技術(shù)日益普及的環(huán)境下,地圖廣泛服務(wù)于城市公眾,成為數(shù)字城市的基礎(chǔ)部分。隨著計(jì)算機(jī)技術(shù)的進(jìn)步,地圖應(yīng)用也越來(lái)越廣泛。從政府部門(mén)到一般企業(yè),再到單獨(dú)的個(gè)人,都離不開(kāi)地圖。現(xiàn)在網(wǎng)絡(luò)上有很多地圖,但地圖應(yīng)用范圍單一,大部分面向大眾,針對(duì)某一行業(yè)或特定作用的地圖不是很多。也有一些專(zhuān)業(yè)功能的地圖,但大都價(jià)格昂貴。這些制約了地圖信息的更廣闊的發(fā)展。
VisualBasic是微軟公司推出的一種可視化的高級(jí)程序開(kāi)發(fā)語(yǔ)言,它支持面向?qū)ο蠹夹g(shù),特別需求者可以再VB平臺(tái)上開(kāi)發(fā)自己的需求;但大多缺少圖形信息。GIS主要是確定空間點(diǎn)的三維信息的一種技術(shù),在GIS領(lǐng)域中,有很多地圖開(kāi)發(fā)工具。本文選用VB作用開(kāi)發(fā)平臺(tái),調(diào)用MapObjects2.0作為開(kāi)發(fā)所用的ActiveX控件。
1 VB與MapObjects技術(shù)
1.1 Visual Basic
Visual Basic(VB)是微軟公司開(kāi)發(fā)的一種面向?qū)ο蟮拈_(kāi)發(fā)編程語(yǔ)言。VB因?yàn)樗暮?jiǎn)單、界面可視化、數(shù)據(jù)庫(kù)豐富而成為大多數(shù)軟件開(kāi)發(fā)者首選的開(kāi)發(fā)工具。BASIC 編程語(yǔ)言是VB的前身。VB擁有圖形用戶(hù)界面 ( GUI )和 快速應(yīng)用程序開(kāi)發(fā) ( RAD )系統(tǒng),能夠很容易地連接數(shù)據(jù)庫(kù)或創(chuàng)建ActiveX 控件。程序員快速、完整地使用VB提供的控件建立一個(gè)日常實(shí)用程序 。
1.2 MapObjects技術(shù)
MapObjects是一套制圖軟件集,過(guò)MapObjects開(kāi)發(fā)人員可以靈活地建立適合用戶(hù)的地圖接口。在小內(nèi)存空間中,程序員能用多種標(biāo)準(zhǔn)程序環(huán)境去開(kāi)發(fā)應(yīng)用程序,能聯(lián)合MapObjects與別的軟件實(shí)現(xiàn)地圖與用戶(hù)信息的聯(lián)系。它具有如下特點(diǎn):
(1)MapObjects功能強(qiáng)大,通過(guò)MapObjects可完成:顯示一張多圖層地圖(道路、河流、邊界)、地圖瀏覽、圖形元素生成(如點(diǎn),線(xiàn),圓,多邊形)、說(shuō)明注記等等基本地圖操作功能。
(2)MapObjects是過(guò)程用戶(hù)。它是為程序設(shè)計(jì)者服務(wù)的。程序設(shè)計(jì)者可利用MapObjects設(shè)計(jì)應(yīng)用程序,并把這些應(yīng)用程序提供給終極需求者。
(3)MapObjects還有一個(gè)特性,地圖既可以是程序中的主要元素,也可是附屬品。所以,MapObjects非常適合vertical應(yīng)用軟件。比如, 你的軟件可能主要是商用數(shù)據(jù)庫(kù),當(dāng)查詢(xún)時(shí)可在表單上高亮度顯示與查詢(xún)內(nèi)容相關(guān)的地圖。
另外,MapObjects支持Shape文件、圖像文件、數(shù)據(jù)表或通過(guò)ESRI的專(zhuān)用數(shù)據(jù)庫(kù)引擎連接的專(zhuān)用數(shù)據(jù)表。在基于MapObjects編寫(xiě)的應(yīng)用程序中,通過(guò)ODBC(開(kāi)放數(shù)據(jù)庫(kù)連接)驅(qū)動(dòng)程序,可以訪(fǎng)問(wèn)外部的數(shù)據(jù)表,它們可以是多種格式的,如Access、SQL Server、Oracle 等。
2 利用MapObjects實(shí)現(xiàn)地圖開(kāi)發(fā)
MapObjects是一套制圖軟件集,過(guò)MapObjects開(kāi)發(fā)人員可以靈活地建立適合用戶(hù)的地圖接口。在小內(nèi)存空間中,程序員能用多種標(biāo)準(zhǔn)程序環(huán)境去開(kāi)發(fā)應(yīng)用程序,能聯(lián)合MapObjects與別的軟件實(shí)現(xiàn)地圖與用戶(hù)信息的聯(lián)系。MapObjects是美國(guó)ESRi開(kāi)發(fā),是比較流行的組件式GIS開(kāi)發(fā)軟件。MapObjects是一組地圖軟件的組件(ActiveX控件),使用它可以在普通編程語(yǔ)言(如VB)上實(shí)現(xiàn)主要的地理信息系統(tǒng)(其中主要是電子地圖功能)功能。通過(guò)MapObjects可以靈活地建立適合用戶(hù)的信息系統(tǒng)。
2.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
根據(jù)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的幾個(gè)原則,即系統(tǒng)的代碼要統(tǒng)一,設(shè)計(jì)規(guī)范要標(biāo)準(zhǔn),傳遞語(yǔ)言要盡可能一致;系統(tǒng)應(yīng)具有較好的開(kāi)放性和結(jié)構(gòu)的可變性,采用模塊化結(jié)構(gòu),提高各模塊的獨(dú)立性,盡可能減少模塊間的數(shù)據(jù)偶合;系統(tǒng)抵御外界干擾的能力及受外界干擾時(shí)的恢復(fù)能力;在滿(mǎn)足系統(tǒng)需求的前提下,盡可能減小系統(tǒng)的開(kāi)銷(xiāo),我們做了如下設(shè)計(jì)(如圖1)。
2.2 系統(tǒng)開(kāi)發(fā)與集成
本系統(tǒng)地圖采用南京交通職業(yè)技術(shù)學(xué)院地圖,通過(guò)軟件學(xué)生可以在課程學(xué)習(xí)中通過(guò)該軟件來(lái)核實(shí)自己的實(shí)際作業(yè)成果,查詢(xún)學(xué)院的一些基礎(chǔ)地理信息(如圖2)。
3 結(jié)束語(yǔ)
一般來(lái)講,自主設(shè)計(jì)空間數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫(kù),利用VB等高級(jí)編程語(yǔ)言開(kāi)發(fā)開(kāi)發(fā)地圖應(yīng)用軟件,要求具備雄厚的科研力量和巨額的開(kāi)發(fā)費(fèi)用;引進(jìn)國(guó)外的先進(jìn)的地圖軟件(如ARC/INFO),結(jié)合自己的需求進(jìn)行開(kāi)發(fā),比較簡(jiǎn)便易行;面向?qū)ο蟮目梢曢_(kāi)發(fā)環(huán)境給大家提供了一種開(kāi)發(fā)周期短,成本低,可以脫離大型商業(yè)GIS軟件平立運(yùn)行的機(jī)會(huì),今后可以為不同的人群提供服務(wù)。
課題來(lái)源:南京交通職業(yè)技術(shù)學(xué)院青年基金課題
參考文獻(xiàn)
[1] 劉軒明.基于衛(wèi)星圖片的數(shù)字地圖開(kāi)發(fā)與應(yīng)用[D].哈爾濱工業(yè)大學(xué)碩士論文,2009.
[2] 劉劍.關(guān)于開(kāi)發(fā)地形圖成圖軟件的看法[C].《大地測(cè)量與地球動(dòng)力學(xué)進(jìn)展》論文集,2004.
篇11
一)主要內(nèi)容
基于Solidworks軟件使用VB高級(jí)語(yǔ)言程序,對(duì)常用件齒輪進(jìn)行參數(shù)化設(shè)計(jì),實(shí)現(xiàn)給定參數(shù)的圓錐齒輪的自動(dòng)化生成系統(tǒng)。
二)技術(shù)指標(biāo)
1、設(shè)計(jì)參數(shù)要符合實(shí)際生產(chǎn)要求;
2、生成圖形要符合國(guó)家標(biāo)準(zhǔn)規(guī)定;
3、技術(shù)路線(xiàn)
對(duì)基于Solidworks圓錐齒輪參數(shù)化設(shè)計(jì)的研究,準(zhǔn)備從以下幾個(gè)方面著手:
(1)系統(tǒng)界面模塊
該模塊的作用是采集直齒圓錐齒輪實(shí)體造型所需的具體參數(shù)。
(2)三維CAD軟件接口模塊
該模塊提供在OLE Automation層上所有與三維CAD軟件SolidWorks通訊的函數(shù)。CAD軟件的API函數(shù)以類(lèi)的形式封裝起來(lái),在直齒圓錐齒輪造型時(shí),通過(guò)這些函數(shù)驅(qū)動(dòng)CAD軟件生成直齒圓錐實(shí)體。
(3)結(jié)構(gòu)計(jì)算模塊
根據(jù)界面模塊的用戶(hù)輸入的參數(shù),計(jì)算直齒圓錐齒輪的結(jié)構(gòu)參數(shù)。
(4)齒形計(jì)算模塊
該模塊是整個(gè)系統(tǒng)的核心,可以完成直齒圓錐齒輪齒形計(jì)算。通過(guò)計(jì)算得到特定截面的齒廓參數(shù),為齒形生成模塊準(zhǔn)備所需的數(shù)據(jù)。
(5)結(jié)構(gòu)實(shí)體生成模塊
該模塊應(yīng)用三維CAD軟件Solidworks的基本特征,如拉伸(Extrude)、旋轉(zhuǎn)(Revolve)和圓周陣列(Circular Pattern)等操作,按照結(jié)構(gòu)類(lèi)型計(jì)算模塊輸出的參數(shù),生成圓錐齒輪的結(jié)構(gòu)實(shí)體部分。該操作的結(jié)果類(lèi)似生成直齒圓錐齒輪的毛坯。
(6)齒形生成模塊
該模塊應(yīng)用三維CAD軟件Solidworks的基本特征,如放樣切割(Template Knifing)、圓周陣列(Circular Pattern) 、拉伸(Extrude)和旋轉(zhuǎn)(Revolve)等操作,按照結(jié)構(gòu)類(lèi)型計(jì)算模塊輸出的參數(shù),生成直齒圓錐齒輪的結(jié)構(gòu)實(shí)體部分。然后利用圓周陣列可畫(huà)出全部齒形。
2 圓錐齒輪實(shí)體造型系統(tǒng)
參數(shù)化三維實(shí)體造型設(shè)計(jì)是以變量幾何和生成歷程樹(shù)為基礎(chǔ),以尺寸驅(qū)動(dòng)為特征的一種三維建模方法。其基本過(guò)程是:首先利用草圖功能勾畫(huà)零件基本形狀,然后根據(jù)設(shè)計(jì)要求標(biāo)注必要的尺寸,最后修改尺寸值,驅(qū)動(dòng)模型變化以生成需要的零件模型。參數(shù)化三維實(shí)體建模的目的是,通過(guò)修改尺寸而快速生成新的三維實(shí)體模型。
圓錐齒輪的輪齒有直齒和曲齒兩種類(lèi)型。直齒圓錐齒輪易于制造,適用于低速、輕載傳動(dòng)的場(chǎng)合,而曲齒圓錐齒輪傳動(dòng)平穩(wěn),承載能力強(qiáng),常用于高速、重載的場(chǎng)合,但其設(shè)計(jì)和制造較為復(fù)雜。本論文只討論直齒圓錐齒輪。
(3)齒形計(jì)算模塊
漸開(kāi)線(xiàn)齒廓的數(shù)學(xué)模型。我們?cè)谥苯亲鴺?biāo)系下,用漸開(kāi)線(xiàn)的直角坐標(biāo)方程式,計(jì)算漸開(kāi)線(xiàn)輪廓上各點(diǎn)坐標(biāo)值,然后在用樣條曲線(xiàn)繪出齒輪的一個(gè)齒廓。
(4)結(jié)構(gòu)實(shí)體生成模塊
該模塊應(yīng)用Solidworks的拉伸、旋轉(zhuǎn)和圓周陣列等操作命令,按照結(jié)構(gòu)類(lèi)型計(jì)算模塊輸出的參數(shù),生成直齒圓錐齒輪的結(jié)構(gòu)實(shí)體部分。該操作的結(jié)果類(lèi)似生成直齒圓錐齒輪的毛坯。
1)齒輪各基本尺寸計(jì)算
如圖4所示,以點(diǎn)1為坐標(biāo)原點(diǎn),軸線(xiàn)為一坐標(biāo)軸建立直角坐標(biāo)系,依次求出2、3、4、5、6、7的坐標(biāo),由1—2—3—4—5—1的連線(xiàn)構(gòu)成直齒圓錐齒輪的二維結(jié)構(gòu),再用旋轉(zhuǎn)輪廓線(xiàn)的方法既可生成圓錐齒輪的實(shí)體。
2)圓錐齒輪的實(shí)體建模
再用旋轉(zhuǎn)輪廓線(xiàn)的方法生成圓錐齒輪的實(shí)體
3)結(jié)構(gòu)實(shí)體生成模塊
2.2 系統(tǒng)運(yùn)行窗體的創(chuàng)建和應(yīng)用
1) 窗體的建立
2)程序的連接
用VB編程進(jìn)行的二次開(kāi)發(fā),要將VB和SolidWorks連接來(lái),編寫(xiě)VB代碼前,創(chuàng)建SolidWorks和VB對(duì)象,啟動(dòng)運(yùn)行SolidWorks。這樣就可以在VB的環(huán)境下利用SolidWorks對(duì)象及其下級(jí)對(duì)象的屬性和方法,完成用VB語(yǔ)言在環(huán)境中草圖和三維模型圖的繪制。下面給出VB語(yǔ)言在SolidWorks環(huán)境中繪制圓錐齒輪三維圖的部分子程序代碼:
2.3 程序的調(diào)試及運(yùn)行
1)運(yùn)行程序過(guò)程
在SolidWorks中,單擊[工具]/[宏]/[運(yùn)行],選擇*.swp出現(xiàn)程序運(yùn)行界面。通過(guò)在VB窗口中填寫(xiě)圓錐齒輪參數(shù)后,單擊‘生成’按鈕,發(fā)現(xiàn)錯(cuò)誤代碼91(對(duì)象變量或with塊變量未設(shè)置)。
經(jīng)過(guò)調(diào)試發(fā)現(xiàn)系統(tǒng)默認(rèn)的part語(yǔ)句類(lèi)型出現(xiàn)錯(cuò)誤,原因是程序中的part為完全定義造成運(yùn)行錯(cuò)誤,經(jīng)過(guò)重新定義Part As object ‘對(duì)象型變量’,重新逐句調(diào)試,更改變量類(lèi)型,最終解決了問(wèn)題。
2)運(yùn)行結(jié)果
3 結(jié)束語(yǔ)
(1)系統(tǒng)完成了圓錐齒輪實(shí)體的變量化自動(dòng)生成。
(2)建立了VB界面窗口連接Solidworks應(yīng)用程序,進(jìn)入Solidworks設(shè)計(jì)環(huán)境;從設(shè)計(jì)窗口中直接輸入?yún)?shù),可直接運(yùn)行參數(shù)化造型設(shè)計(jì)程序,得到所需的三維圓錐齒輪實(shí)體。
參考文獻(xiàn)
[1]王隆太,戴過(guò)洪.機(jī)械CAD /CAM技術(shù)[M].北京:機(jī)械工業(yè)出版社,2005.
[2]王文彬,.用VB實(shí)現(xiàn)SolidWorks對(duì)零件的參數(shù)化設(shè)計(jì)[J].機(jī)械報(bào),2003,30(6)
篇12
程序設(shè)計(jì)能力是計(jì)算機(jī)專(zhuān)業(yè)學(xué)生必備的一項(xiàng)基本技能。程序設(shè)計(jì)能力培養(yǎng)不僅包含技能培養(yǎng),還包含學(xué)生分析問(wèn)題、解決問(wèn)題以及創(chuàng)新能力的培養(yǎng)。為此,各高校從大一開(kāi)始就開(kāi)設(shè)了高級(jí)語(yǔ)言程序設(shè)計(jì)課程以及后續(xù)一系列課程,以提高學(xué)生的程序設(shè)計(jì)能力。然而,即使各高校設(shè)置了豐富的程序設(shè)計(jì)能力培養(yǎng)課程,學(xué)生的程序設(shè)計(jì)水平也沒(méi)有得到大幅度提高。
當(dāng)前軟件企業(yè)招不到合適的人才,計(jì)算機(jī)專(zhuān)業(yè)學(xué)生找不到工作,這種局面的形成歸因于學(xué)生的程序設(shè)計(jì)能力并未達(dá)到軟件企業(yè)預(yù)期的要求。調(diào)查表明,企業(yè)新招聘員工中只有15%直接來(lái)自高校畢業(yè)生,而85%來(lái)自社會(huì)招聘,因?yàn)樯鐣?huì)招聘人員動(dòng)手能力強(qiáng),入職后能很快適應(yīng)工作崗位。程序設(shè)計(jì)能力層次見(jiàn)表1,從表1可以看出,要?jiǎng)偃纹髽I(yè)軟件開(kāi)發(fā)工作,至少需要100000行代碼量;對(duì)于本科畢業(yè)生,至少需要有10000行代碼量,而目前計(jì)算機(jī)專(zhuān)業(yè)大多數(shù)學(xué)生本科4年的代碼量均在1000行,有的甚至更低。
1)程序設(shè)計(jì)類(lèi)課程依然重教學(xué),輕實(shí)踐。理論教學(xué)依然是程序設(shè)計(jì)類(lèi)課程的重點(diǎn),理論學(xué)時(shí)多,實(shí)踐學(xué)時(shí)少。教師花費(fèi)大量時(shí)間進(jìn)行語(yǔ)法、數(shù)據(jù)結(jié)構(gòu)概念、算法理論講解,因此也使得有針對(duì)性的實(shí)踐太少,基于相關(guān)知識(shí)和理論的案例教學(xué)不足,學(xué)生很難將所學(xué)知識(shí)點(diǎn)和理論用于解決實(shí)際問(wèn)題。
2)實(shí)踐環(huán)節(jié)枯燥,學(xué)生無(wú)法提高學(xué)習(xí)積極性。
在傳統(tǒng)程序設(shè)計(jì)實(shí)踐教學(xué)中,教師布置3~6道作業(yè)題,學(xué)生當(dāng)堂完成,然后將代碼以及運(yùn)行結(jié)果截圖打包上傳到服務(wù)器,教師一一評(píng)閱。教師給出的習(xí)題往往直接針對(duì)課堂教學(xué)的知識(shí)點(diǎn),無(wú)任何實(shí)際背景或故事情節(jié),實(shí)驗(yàn)枯燥乏味,學(xué)生學(xué)習(xí)積極性無(wú)法提高。
3)學(xué)生多,教師少,教師無(wú)法逐個(gè)解答學(xué)生的問(wèn)題。
在大學(xué)不斷擴(kuò)招的情形下,師生比進(jìn)一步擴(kuò)大。實(shí)踐教學(xué)過(guò)程中,教師無(wú)法一一發(fā)現(xiàn)和解答每個(gè)學(xué)生的問(wèn)題。學(xué)生將作業(yè)代碼和運(yùn)行結(jié)果截圖通過(guò)FTP上傳至服務(wù)器,教師查看運(yùn)行結(jié)果,由于學(xué)生多,教師無(wú)法逐個(gè)查看和運(yùn)行學(xué)生代碼,疲于應(yīng)付,因而導(dǎo)致實(shí)踐效果差。
4)實(shí)踐能力評(píng)價(jià)方法單一。
目前的課程考核多采用筆試,學(xué)生的實(shí)踐能力只能通過(guò)平時(shí)作業(yè)和實(shí)驗(yàn)進(jìn)行主觀性評(píng)價(jià),難以激發(fā)學(xué)生自主訓(xùn)練實(shí)踐能力的激情。在這樣的教學(xué)模式下,久而久之學(xué)生就失去了編程興趣,同時(shí)也降低了后續(xù)程序設(shè)計(jì)類(lèi)課程的學(xué)習(xí)積極性,以致形成惡性循環(huán),學(xué)生代碼閱讀量、代碼編寫(xiě)量均得不到保證,程序設(shè)計(jì)能力自然無(wú)法提高。
為了提專(zhuān)業(yè)提供論文寫(xiě)作、寫(xiě)作論文的服務(wù),歡迎光臨dylw.net高學(xué)生的程序設(shè)計(jì)能力,文獻(xiàn)[1]提出一種貫穿在系列課程中的程序設(shè)計(jì)能力培養(yǎng)方法,強(qiáng)調(diào)在一系列課程中持續(xù)不斷地進(jìn)行系統(tǒng)化訓(xùn)練,采用面向?qū)I(yè)應(yīng)用的分類(lèi)教學(xué),貫徹落實(shí)案例驅(qū)動(dòng)、強(qiáng)化實(shí)訓(xùn)等教學(xué)方法。文獻(xiàn)[2]初步將ACM模式應(yīng)用到程序設(shè)計(jì)類(lèi)課程實(shí)踐教學(xué)中,使學(xué)生的編程能力和解題思維能力得到有效訓(xùn)練,教學(xué)效果顯著提高。文獻(xiàn)[3]也提出采用ACM競(jìng)賽形式的程序設(shè)計(jì)能力層次化培養(yǎng)模式。這些方法都是提高學(xué)生程序設(shè)計(jì)能力的有益嘗試。
2 立體化程序設(shè)計(jì)能力培養(yǎng)模式
針對(duì)目前程序設(shè)計(jì)能力培養(yǎng)方面依然存在的一些突出問(wèn)題,我們借鑒國(guó)內(nèi)外一流大學(xué)的經(jīng)驗(yàn),與學(xué)校、學(xué)院教學(xué)部門(mén)配合,探索并建立立體化程序設(shè)計(jì)能力培養(yǎng)方法。立體化程序設(shè)計(jì)能力培養(yǎng)方法如圖1所示。
1)培養(yǎng)方法和過(guò)程。
在立體化程序設(shè)計(jì)能力培養(yǎng)方法中,教學(xué)活動(dòng)仍然分為理論知識(shí)講授與編程實(shí)踐,但理論課不再以單純介紹語(yǔ)法知識(shí)為主,而是以具體的程序案例分析為主,讓學(xué)生從案例中掌握語(yǔ)法。在實(shí)踐教學(xué)環(huán)節(jié)中,教師設(shè)計(jì)若干有趣的問(wèn)題,學(xué)生在解決問(wèn)題過(guò)程中學(xué)會(huì)相關(guān)的語(yǔ)法知識(shí)與編程技巧。學(xué)生編寫(xiě)的程序代碼全部通過(guò)安徽大學(xué)程序自動(dòng)評(píng)判系統(tǒng)進(jìn)行評(píng)判,學(xué)生只需在規(guī)定時(shí)間內(nèi)完成,不再局限在實(shí)踐課堂內(nèi)完成,令學(xué)生有了足夠多的思考和動(dòng)手編程時(shí)間。對(duì)于學(xué)生在編程過(guò)程中出現(xiàn)的各種問(wèn)題,教師和ACM/ICPC隊(duì)員及時(shí)進(jìn)行在線(xiàn)細(xì)致輔導(dǎo)。在每次作業(yè)結(jié)束后,系統(tǒng)公布所有學(xué)生的解題代碼,以供所有學(xué)生在線(xiàn)查看和評(píng)價(jià)。獲得優(yōu)秀評(píng)價(jià)的代碼將在系統(tǒng)上公布,以便學(xué)生有機(jī)會(huì)進(jìn)一步學(xué)習(xí)優(yōu)秀代碼,增加代碼閱讀量。
2)立體化程序設(shè)計(jì)能力培養(yǎng)特點(diǎn)。
(1)以高級(jí)語(yǔ)言程序設(shè)計(jì)課程為依托。高級(jí)語(yǔ)言程序設(shè)計(jì)課程是學(xué)生接觸的第一門(mén)程序設(shè)計(jì)類(lèi)課程,其教學(xué)與實(shí)踐對(duì)培養(yǎng)學(xué)生的編程興趣和能力起著至關(guān)重要的作用,可以幫助學(xué)生樹(shù)立自信心并步入程序設(shè)計(jì)的殿堂。
(2)課堂教學(xué)以案例為中心。程序設(shè)計(jì)=算法+數(shù)據(jù)結(jié)構(gòu)。在高級(jí)語(yǔ)言程序設(shè)計(jì)課程的教學(xué)過(guò)程中,我們摒棄單純講授語(yǔ)法的課堂教學(xué)方法,改之以程序案例為中心。在課程早期,案例以語(yǔ)法知識(shí)為主,逐步增加基本數(shù)據(jù)結(jié)構(gòu)和算法。整個(gè)教學(xué)過(guò)程以案例分析為中心進(jìn)行語(yǔ)法教學(xué),讓學(xué)生在潛移默化中學(xué)習(xí)到基本的數(shù)據(jù)結(jié)構(gòu)和算法。
(3)實(shí)踐教學(xué)以問(wèn)題求解為中心。在實(shí)踐環(huán)節(jié),教師通過(guò)設(shè)置有趣的故事和實(shí)際的問(wèn)題,幫助學(xué)生在求解問(wèn)題過(guò)程中掌握課堂上所學(xué)的語(yǔ)法知識(shí)、基本數(shù)據(jù)結(jié)構(gòu)和算法。
(4)實(shí)踐環(huán)節(jié)從課內(nèi)延伸至課外。實(shí)踐環(huán)節(jié)要求學(xué)生完成指定的編程題目。與傳統(tǒng)實(shí)踐環(huán)節(jié)不同,通過(guò)在線(xiàn)程序自動(dòng)評(píng)判平臺(tái),學(xué)生所有的編程作業(yè)只需在教師規(guī)定的時(shí)間段內(nèi)提交,學(xué)生既可以在實(shí)踐課上完成,又可以利用課外時(shí)間完成課堂內(nèi)沒(méi)有完成的作業(yè)。將實(shí)踐課延伸到課外的優(yōu)點(diǎn)表現(xiàn)在:①學(xué)生有足夠的時(shí)間思考分析問(wèn)題并最終通過(guò)編程解決問(wèn)題;②實(shí)踐題目數(shù)量適當(dāng)增加,學(xué)生的代碼量隨之增加 ,充分的課外實(shí)專(zhuān)業(yè)提供論文寫(xiě)作、寫(xiě)作論文的服務(wù),歡迎光臨dylw.net踐可以進(jìn)一步鞏固學(xué)生的理論知識(shí)基礎(chǔ)。
(5)經(jīng)驗(yàn)豐富的ACM/ICPC隊(duì)員參與程序設(shè)計(jì)實(shí)踐環(huán)節(jié)輔導(dǎo)。ACM/ICPC隊(duì)員經(jīng)過(guò)長(zhǎng)期的編程實(shí)踐,積累了豐富的編程經(jīng)驗(yàn),代碼能力強(qiáng),因此我們利用ACM/ICPC集訓(xùn)隊(duì)的優(yōu)勢(shì)資源,實(shí)行“傳幫帶”機(jī)制,對(duì)于每個(gè)學(xué)生編程過(guò)程中出現(xiàn)的問(wèn)題及時(shí)給予解答,有效提高學(xué)生的編程積極性。集訓(xùn)隊(duì)學(xué)生優(yōu)秀的編程水平對(duì)于低年級(jí)學(xué)生也是一種激勵(lì),可以進(jìn)一步激發(fā)其編程熱情,增加其向更高編程水平邁進(jìn)的動(dòng)力。
(6)學(xué)生作業(yè)采用自動(dòng)化評(píng)判模式。學(xué)生提交的作業(yè)通過(guò)服務(wù)器自動(dòng)評(píng)判給出程序的運(yùn)行結(jié)果。自動(dòng)評(píng)判模式對(duì)于編譯錯(cuò)誤,會(huì)直接給出編譯出錯(cuò)位置和出錯(cuò)類(lèi)型,方便學(xué)生自查;對(duì)于運(yùn)行錯(cuò)誤,包括結(jié)果錯(cuò)誤和運(yùn)行超時(shí),則需要學(xué)生重新審查程序代碼。服務(wù)器自動(dòng)評(píng)判能夠有效減輕教師批改作業(yè)壓力,還可以大大提高實(shí)踐教學(xué)效果。此外,服務(wù)器上保留了每個(gè)學(xué)生的做題細(xì)節(jié),包括以往的代碼、做題的數(shù)量、錯(cuò)誤類(lèi)型等信息,可以進(jìn)一步增強(qiáng)學(xué)生做題的成就感和積極性。值得一提的是該自動(dòng)評(píng)判平臺(tái)不僅支持高級(jí)語(yǔ)言程序設(shè)計(jì),還支持C++、Java、VB和Pascal語(yǔ)言,因而吸引了省內(nèi)一些初中、高中學(xué)生進(jìn)入該平臺(tái)進(jìn)行程序設(shè)計(jì)能力實(shí)踐。
(7)優(yōu)秀代碼展示有助于增加學(xué)生代碼閱讀量。學(xué)生代碼量包括代碼編寫(xiě)量和代碼閱讀量。代碼閱讀量是提高編程能力的一種重要途徑,然而在實(shí)際教學(xué)過(guò)程中常常被忽視,通過(guò)教師評(píng)閱、學(xué)生互評(píng)等方式,可以篩選出優(yōu)秀代碼并加以展示。優(yōu)秀代碼主要指具有巧妙的算法、運(yùn)行時(shí)間短、內(nèi)存占用空間少、代碼格式規(guī)整、符合標(biāo)準(zhǔn)編程風(fēng)格的程序代碼。展示優(yōu)秀代碼可以讓學(xué)生有機(jī)會(huì)看到彼此對(duì)于同一道題目的多種解決方案,有效促進(jìn)學(xué)生之間的交流,積極提高學(xué)生的代碼閱讀量。這種相互的交流還可以進(jìn)一步激發(fā)學(xué)生的創(chuàng)新靈感,在提高學(xué)生編程能力的同時(shí)也提高創(chuàng)新能力。
與傳統(tǒng)專(zhuān)業(yè)提供論文寫(xiě)作、寫(xiě)作論文的服務(wù),歡迎光臨dylw.net程序設(shè)計(jì)能力培養(yǎng)主要依靠“教師一學(xué)生”這種二維扁平的實(shí)踐教學(xué)模式不同,立體化程序設(shè)計(jì)能力培養(yǎng)方法以案例教學(xué)為中心進(jìn)行教學(xué),以問(wèn)題驅(qū)動(dòng)為中心進(jìn)行編程實(shí)踐,采用機(jī)器自動(dòng)評(píng)判和學(xué)生互評(píng)相結(jié)合的方式進(jìn)行學(xué)生編程實(shí)踐效果評(píng)價(jià),在教師—ACM隊(duì)員—學(xué)生之間建立一個(gè)跨越時(shí)間和空間的三維立體互動(dòng)教學(xué)網(wǎng)絡(luò)。這種教學(xué)方法將課內(nèi)實(shí)踐延伸至課外,將實(shí)驗(yàn)室實(shí)踐延伸到實(shí)驗(yàn)室外,對(duì)學(xué)生的程序設(shè)計(jì)能力進(jìn)行主客觀相結(jié)合的綜合評(píng)價(jià)與即時(shí)反饋。
3 實(shí)施成效
通過(guò)一系列的研究與設(shè)計(jì),我們構(gòu)建了立體化的程序設(shè)計(jì)能力培養(yǎng)模式,在安徽大學(xué)自主研發(fā)的自動(dòng)評(píng)判系統(tǒng)基礎(chǔ)上增加了高級(jí)語(yǔ)言程序設(shè)計(jì)實(shí)踐模塊。自2008年以來(lái),學(xué)生通過(guò)該自動(dòng)評(píng)判平臺(tái)進(jìn)行程序設(shè)計(jì)實(shí)踐呈逐年增多趨勢(shì),多名學(xué)生參加了ACM/ICPC程序設(shè)計(jì)競(jìng)賽以及省級(jí)程序設(shè)計(jì)競(jìng)賽,獲得各類(lèi)獎(jiǎng)勵(lì)10余項(xiàng),其中亞洲區(qū)邀請(qǐng)賽金獎(jiǎng)2項(xiàng)、省級(jí)競(jìng)賽一等獎(jiǎng)4項(xiàng)。實(shí)施該培養(yǎng)方法后,學(xué)生進(jìn)行自主程序設(shè)計(jì)訓(xùn)練的積極性明顯提高,目前在校生中程序代碼量已經(jīng)達(dá)到10000行的有200人左右,部分畢業(yè)學(xué)生直接進(jìn)入騰訊、百度等企業(yè)工作,用人單位也對(duì)畢業(yè)生的編程能力普遍表示滿(mǎn)意。安徽大學(xué)計(jì)算機(jī)專(zhuān)業(yè)學(xué)生2008—2012年提交代碼量如圖2所示。
該培養(yǎng)方法不僅提高了學(xué)生的程序設(shè)計(jì)能力,而且培養(yǎng)了學(xué)生的創(chuàng)新精神和可持續(xù)發(fā)展能力,還吸引了許多非計(jì)算機(jī)專(zhuān)業(yè)學(xué)生學(xué)習(xí)程序設(shè)計(jì)技術(shù)。近年來(lái),陸續(xù)有電子學(xué)院、自動(dòng)化學(xué)院、數(shù)學(xué)學(xué)院、化學(xué)化工學(xué)院、資源與環(huán)境工程學(xué)院和物理學(xué)院的學(xué)生參與到程序設(shè)計(jì)實(shí)踐中,并且取得了不錯(cuò)的學(xué)習(xí)效果。例如,安徽專(zhuān)業(yè)提供論文寫(xiě)作、寫(xiě)作論文的服務(wù),歡迎光臨dylw.net大學(xué)物理學(xué)院一名學(xué)生經(jīng)過(guò)該平臺(tái)實(shí)踐后,積極參與ACM/ICPC程序設(shè)計(jì)競(jìng)賽,獲得2010年ACM/ICPC亞洲區(qū)競(jìng)賽銅獎(jiǎng)并于2012年成功考取復(fù)旦大學(xué)計(jì)算機(jī)專(zhuān)業(yè)研究生。
4 結(jié)語(yǔ)
強(qiáng)調(diào)師生互動(dòng)、實(shí)踐反饋、學(xué)生互動(dòng)足立體化程序設(shè)計(jì)能力培養(yǎng)方法的關(guān)鍵,而利用案例教學(xué)與趣味實(shí)踐是重要途徑。實(shí)踐證明,立體化程序設(shè)計(jì)能力培養(yǎng)方法在提高學(xué)生編程水平和算法能力方面具有較大優(yōu)勢(shì),取得了顯著成效。今后我們將進(jìn)一步注重教師與學(xué)生互動(dòng),探索更多的師生之間、學(xué)生之間互動(dòng)手段,不斷提高學(xué)生編程素養(yǎng)和創(chuàng)新水平。
篇13
傳統(tǒng)示波器是電子工業(yè)、科學(xué)研究和教學(xué)實(shí)驗(yàn)領(lǐng)域中一種必備的儀器,并且都在這些領(lǐng)域中占有重要的地位。在高速發(fā)展的現(xiàn)代科技技術(shù)下,對(duì)傳統(tǒng)測(cè)控儀器提出了新的技術(shù)要求,主要包括智能化、自動(dòng)化、多樣化等等[1]。傳統(tǒng)儀器跟其他傳統(tǒng)測(cè)控儀器一樣,越來(lái)越不能滿(mǎn)足這些新技術(shù)的要求,與此同時(shí),新儀器的開(kāi)發(fā)對(duì)開(kāi)發(fā)商與用戶(hù)都帶來(lái)了更大的挑戰(zhàn)。基于上述原因,新型的測(cè)控儀器設(shè)備的出現(xiàn)是當(dāng)務(wù)之急,虛擬儀器這個(gè)概念變得不再陌生。
虛擬儀器的開(kāi)發(fā)基于強(qiáng)大的計(jì)算機(jī)軟件和硬件,把傳感器技術(shù),自動(dòng)化控制技術(shù)等有效的融合在一起[2]。軟件設(shè)計(jì)平臺(tái)的靈活性,依據(jù)用戶(hù)不同的特殊需求創(chuàng)建出人機(jī)友好操作界面,實(shí)現(xiàn)并取代各類(lèi)特殊、昂貴的測(cè)試儀器的功能。
實(shí)現(xiàn)用戶(hù)友好操作界面的軟件操作平臺(tái)有很多,例如,Labview軟件,MATLAB軟件,Visual Basic軟件,JAVA軟件等,本文將對(duì)實(shí)現(xiàn)虛擬示波器用戶(hù)操作界面的開(kāi)發(fā)性軟件進(jìn)行比較。
2.虛擬儀器的發(fā)展
2.1 國(guó)外發(fā)展?fàn)顩r
近年來(lái),世界各國(guó)的虛擬儀器公司開(kāi)發(fā)了不少的虛擬儀器開(kāi)發(fā)軟件,方便了開(kāi)發(fā)商利用這些開(kāi)發(fā)軟件組建自己的虛擬儀器或測(cè)試系統(tǒng),并編制測(cè)試軟件,最具影響力的是NI公司的Labview和Labwindows/CVi開(kāi)發(fā)軟件,美國(guó)HP公司的HP-VEE和HPTIG平臺(tái)軟件,美國(guó)Tektronix公司的Ez-Test和Tek-TNS軟件以及HEM Data公司的Snap-Master平臺(tái)軟件等都是國(guó)際上公認(rèn)的優(yōu)秀虛擬儀器開(kāi)發(fā)平臺(tái)[3]。從1988年陸續(xù)有虛擬儀器產(chǎn)品面市,當(dāng)時(shí)有五家制造商推出30種產(chǎn)品。此后,虛擬儀器產(chǎn)品每年成倍增加,到1994年底,虛擬儀器制造廠已達(dá)95家共生產(chǎn)1000多種虛擬儀器產(chǎn)品,銷(xiāo)售額達(dá)2.93億美元,占整個(gè)儀器銷(xiāo)售額73億的40%。美國(guó)是虛擬儀器的誕生地,也是全球最大的虛擬儀器制造國(guó),生產(chǎn)虛擬儀器的主要廠家有HP公司目前生產(chǎn)100多種型號(hào)的虛擬儀器,Tektroflix公司目前生產(chǎn)約80多種型號(hào)的虛擬儀器。
2.2 國(guó)內(nèi)發(fā)展?fàn)顩r
國(guó)內(nèi)虛擬儀器的開(kāi)發(fā)和研究起步相對(duì)比較晚,清華大學(xué),重慶大學(xué),西安交大以及東方震動(dòng)和噪聲技術(shù)研究等高校和公司對(duì)虛擬儀器的產(chǎn)品和設(shè)計(jì)平臺(tái)以及NI產(chǎn)品做了大量的研究工作,所研究和開(kāi)發(fā)的結(jié)果在某些方面都得到了很好的應(yīng)用,比較突出的是重慶大學(xué)測(cè)試中心所研究的虛擬儀器,目前,部分院校的實(shí)驗(yàn)室也引入了虛擬儀器系統(tǒng),包括上海復(fù)旦大學(xué),上海交通大學(xué),華中科技大學(xué)等[4]。于此,又開(kāi)發(fā)了一批新的虛擬儀器系統(tǒng)用于教學(xué)和科研,其中華中科技大學(xué)機(jī)械學(xué)院所開(kāi)發(fā)出的Inventor可重構(gòu)虛擬實(shí)驗(yàn)臺(tái)、深圳藍(lán)津信息技術(shù)有限公司開(kāi)發(fā)出的DRVI快速可重組虛擬儀器平臺(tái)等影響力比較大,中國(guó)農(nóng)業(yè)大學(xué)的研究人員利用虛擬儀器開(kāi)發(fā)平臺(tái)開(kāi)發(fā)了用于精密播種機(jī)性能檢測(cè)的實(shí)驗(yàn)室自動(dòng)化系統(tǒng)。山東大學(xué)醫(yī)學(xué)院基于虛擬儀器技術(shù)研究了胸雙極立體心電圖及其三維可視。
2.3 未來(lái)的發(fā)展趨勢(shì)
虛擬儀器正在持續(xù)且迅速地發(fā)展,它即將取代測(cè)量技術(shù)在傳統(tǒng)領(lǐng)域的各類(lèi)儀器,使儀器的功能和技術(shù)性能方面具有了靈活性和經(jīng)濟(jì)性,因而更適應(yīng)當(dāng)代科學(xué)技術(shù)迅速發(fā)展和科學(xué)研究所提出的更高更新的測(cè)量需求[5]。并且隨著計(jì)算機(jī)技術(shù)、儀器技術(shù)和網(wǎng)絡(luò)通信技術(shù)的不斷完善,虛擬儀器技術(shù)也會(huì)在向網(wǎng)絡(luò)化方向發(fā)展,即基于網(wǎng)絡(luò)的虛擬儀器。網(wǎng)絡(luò)技術(shù)和虛擬儀器技術(shù)相結(jié)合,產(chǎn)生了基于網(wǎng)絡(luò)的虛擬儀器,使用的網(wǎng)絡(luò)化虛擬儀器,可以在任何地點(diǎn),任何時(shí)間獲取測(cè)試的數(shù)據(jù),因此圖像化編輯平臺(tái)的發(fā)展將帶動(dòng)和完善虛擬儀器的發(fā)展。國(guó)內(nèi)專(zhuān)家預(yù)測(cè)未來(lái)的幾年內(nèi)我國(guó)將有50%的儀器為虛擬儀器,國(guó)內(nèi)將有大批企業(yè)使用虛擬儀器系統(tǒng)對(duì)生產(chǎn)設(shè)備的運(yùn)行狀況進(jìn)行實(shí)時(shí)監(jiān)測(cè)。
3.幾種虛擬示波器常用開(kāi)發(fā)環(huán)境的特點(diǎn)
3.1 基于Labview的虛擬示波器
Labview是一種基于圖形編程語(yǔ)言的可視化優(yōu)秀開(kāi)發(fā)平臺(tái),它與傳統(tǒng)編程語(yǔ)言最大的區(qū)別是使用圖形語(yǔ)言,以框圖的形式編寫(xiě)程序[6]。它與VisualC++、visual basic、LabWindows/CVI等編程語(yǔ)言不同,是使用圖形化程序設(shè)計(jì)語(yǔ)言G,而不是基于文本語(yǔ)言的程序代碼,用方框圖代替了傳統(tǒng)的程序代碼,一個(gè)Labview程序主要包括前面板、框圖程序、圖標(biāo)/接線(xiàn)端口3部分[7]。為用戶(hù)提供一個(gè)便捷、輕松的設(shè)計(jì)環(huán)境,利用它設(shè)計(jì)者可以像搭積木一樣,輕松組建一個(gè)測(cè)量系統(tǒng)或數(shù)據(jù)采集系統(tǒng),并可以任意構(gòu)建儀器面板,而無(wú)須進(jìn)行任何繁瑣的計(jì)算機(jī)程序代碼的編程,從而可以大大簡(jiǎn)化程序的設(shè)計(jì)。
在設(shè)計(jì)虛擬示波器時(shí),程序包括數(shù)據(jù)采集,波形顯示,信號(hào)處理,波形存儲(chǔ)和回放幾個(gè)模塊。因而硬件部分的主要功能就是采集外部的信號(hào),可以是PCI、USB、DAQ等數(shù)據(jù)采集裝置,然后是信號(hào)調(diào)理,目的就是完成信號(hào)緩沖、放大、濾波等功能[8],Labview開(kāi)發(fā)平臺(tái)自帶的函數(shù)具有強(qiáng)大的信號(hào)處理功能,充分發(fā)揮Labview的優(yōu)勢(shì)所在。在它的前面板上可以非常直觀地顯示出旋鈕,開(kāi)關(guān),波形等示波器應(yīng)有的界面設(shè)置,參數(shù)設(shè)置,可以根據(jù)開(kāi)發(fā)者的想法自行定義,具有很強(qiáng)的靈活性[9],真正的操控系統(tǒng)的是后面板,建立功能模塊,元器件的連接,按鍵功能的實(shí)現(xiàn)等等,模塊化的實(shí)現(xiàn)使虛擬示波器的功能更加完善。
3.2 基于MATLAB的虛擬示波器
MATLAB是Matrix和Labortaty前三個(gè)字母的縮寫(xiě),意思是“距陣實(shí)驗(yàn)室”[10]。是一套功能十分強(qiáng)大的計(jì)算機(jī)輔助和設(shè)計(jì)教學(xué)軟件,MATLAB具有以下的主要功能:數(shù)值計(jì)算功能,符號(hào)計(jì)算功能,圖形處理功能及可視化功能,可視化建模及動(dòng)態(tài)仿真功能。
基于MATLAB平臺(tái)設(shè)計(jì)的虛擬示波器可以充分發(fā)揮它的數(shù)據(jù)分析功能,不僅方便了實(shí)驗(yàn)研究,也可以為控制系統(tǒng)的設(shè)計(jì)與優(yōu)化提供了有效的途徑[11]。基于MATLAB的虛擬示波器硬件系統(tǒng)主要是完成數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì),主要有MCU、數(shù)字I/O、A/D、數(shù)據(jù)通信接口,以及電源部分組成。而對(duì)計(jì)算機(jī)串口以及數(shù)據(jù)輸入的控制,由MATLAB軟件的儀器控制工具箱中的函數(shù)來(lái)完成。通過(guò)調(diào)用MATLAB的數(shù)據(jù)采集,畫(huà)圖程序來(lái)完善虛擬示波器的功能。MATLAB是很好的數(shù)據(jù)分析處理軟件,而將其與Labview相結(jié)合編程可以極大的提高系統(tǒng)的數(shù)據(jù)采集、分析、故障診斷的能力,具有很強(qiáng)的技術(shù)提升空間。
3.3 基于Visual Basic的虛擬示波器
Visual Basic簡(jiǎn)稱(chēng)VB,是Microsoft公司推出的一種Windows應(yīng)用程序開(kāi)發(fā)工具。在界面設(shè)計(jì)、文件處理、多媒體應(yīng)用、數(shù)據(jù)訪(fǎng)問(wèn)等方面提供了有力的幫助,具有易懂、易學(xué)的優(yōu)點(diǎn)。對(duì)于虛擬示波器開(kāi)發(fā)而言,VB在數(shù)據(jù)處理和圖形顯示方面不如Labview。在使用VB開(kāi)發(fā)工業(yè)測(cè)量與控制系統(tǒng)應(yīng)用軟件時(shí),需要對(duì)待測(cè)量信號(hào)進(jìn)行實(shí)時(shí)采集、顯示、以及實(shí)時(shí)處理等VB并不擅長(zhǎng)。對(duì)此類(lèi)應(yīng)用程序的開(kāi)發(fā),最為理想的解決方案是將VB的圖形用戶(hù)界面開(kāi)發(fā)及其他方面的優(yōu)勢(shì)和LabVIEW在數(shù)據(jù)采集、顯示與處理方面的優(yōu)勢(shì)結(jié)合起來(lái)[12],互相取長(zhǎng)補(bǔ)短,從而開(kāi)發(fā)出功能更加強(qiáng)大的測(cè)控軟件系統(tǒng)。
MATLAB與VB的結(jié)合主要有兩種方式。其一是在VB中引入MATRIXVB,使得VB可以調(diào)用MATLAB函數(shù)。其二是將在MATLAB中編寫(xiě)的文件編譯成VB可以調(diào)用的DLL文件。通過(guò)混合編程,利用VB和MATRIXVB,快速、簡(jiǎn)潔地生成虛擬儀器[13]。
3.4 基于JAVA的虛擬示波器
JAVA是由Sun Microsystems公司推出的JAVA程序設(shè)計(jì)語(yǔ)言和平臺(tái)的總稱(chēng)。面向?qū)ο蟮囊淮尉幾g隨處運(yùn)行的高級(jí)語(yǔ)言,提供了強(qiáng)大的網(wǎng)絡(luò)支持,用Java實(shí)現(xiàn)的HotJava瀏覽器跨平臺(tái)、動(dòng)感的Web、Internet計(jì)算的功能。推動(dòng)了Web的迅速發(fā)展,常用的瀏覽器均支持Java applet[14]。基于JAVA開(kāi)發(fā)網(wǎng)絡(luò)化的虛擬測(cè)控系統(tǒng)具有強(qiáng)大的網(wǎng)絡(luò)和跨平臺(tái)的優(yōu)勢(shì)。
基于JAVA的網(wǎng)絡(luò)化虛擬示波器,利用socket和多線(xiàn)程技術(shù)實(shí)現(xiàn),使用雙緩存技術(shù)解決了波形顯示時(shí)的閃爍問(wèn)題,由系統(tǒng)啟動(dòng)用戶(hù)界面線(xiàn)程,同時(shí)啟動(dòng)不斷偵聽(tīng)對(duì)客戶(hù)連接請(qǐng)求的線(xiàn)程。如果偵聽(tīng)到客戶(hù)的連接請(qǐng)求,就開(kāi)辟一個(gè)新的線(xiàn)程來(lái)處理其連接請(qǐng)求。與此同時(shí)還要查詢(xún)數(shù)據(jù)是否已經(jīng)傳送完畢,一旦完成便要通知用戶(hù)界面線(xiàn)程更新界面。
除了上述的幾種開(kāi)發(fā)平臺(tái)外,還有C++ Bulider,Visual ,VC等都可以是結(jié)合多種軟件的虛擬儀器開(kāi)發(fā)平臺(tái),另外國(guó)內(nèi)也有一些虛擬儀器開(kāi)發(fā)系統(tǒng),如吉林大學(xué)自主研發(fā)的圖形化虛擬儀器開(kāi)發(fā)平臺(tái)LabScene,重慶大學(xué)研制的虛擬儀器開(kāi)發(fā)系統(tǒng)VMIDS等等[15]。并在相應(yīng)領(lǐng)域取得了一定的成果。
4.結(jié)束語(yǔ)
在各領(lǐng)域的應(yīng)用中,虛擬儀器正在取代著傳統(tǒng)儀器,它的優(yōu)勢(shì)也是顯而易見(jiàn)的,它的出現(xiàn)是儀器界的一次革命,具體表現(xiàn)為:智能化程度高,處理能力強(qiáng);復(fù)用性強(qiáng),系統(tǒng)費(fèi)用低;可操作性強(qiáng)等等。對(duì)于虛擬儀器的設(shè)計(jì)而言,軟件設(shè)計(jì)是核心,對(duì)于每一種虛擬儀器的開(kāi)發(fā)平臺(tái)都有它自己的特色與缺陷,MATLAB是一款數(shù)字處理與圖形化處理的強(qiáng)大軟件,在設(shè)計(jì)虛擬示波器時(shí)可以發(fā)揮它強(qiáng)大的數(shù)據(jù)處理功能,對(duì)于Visual Basic而言,它的缺陷是存在的,但它是一款作為結(jié)合型開(kāi)發(fā)軟件的好處;利用JAVA的開(kāi)發(fā)的虛擬儀器是現(xiàn)在乃至未來(lái)的重要開(kāi)發(fā)平臺(tái),它是儀器朝著網(wǎng)絡(luò)化的發(fā)展,就目前而言,Labview是虛擬示波器開(kāi)發(fā)軟件的首選,它的圖型化編程語(yǔ)言使用戶(hù)和開(kāi)發(fā)者都能比較容易理解。在實(shí)際應(yīng)用中,我們不僅僅局限于單種軟件開(kāi)發(fā)工具,可以將它們結(jié)合起來(lái)使用,取長(zhǎng)補(bǔ)短,各抒其長(zhǎng),會(huì)使所開(kāi)發(fā)的虛擬儀器得到更全面的設(shè)計(jì)。再者在實(shí)施方案前,對(duì)開(kāi)發(fā)平臺(tái)進(jìn)行分析探討、比較,最終選擇適合的虛擬平臺(tái),對(duì)之后的工作會(huì)帶來(lái)更多的便利。
參考文獻(xiàn)
[1]王波.虛擬示波器系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].蘇州大學(xué)碩士學(xué)位論文,2006.
[2]王維喜.基于聲卡的多功能虛擬示波器和虛擬函數(shù)發(fā)生器設(shè)計(jì)[D].青島大學(xué)學(xué)位論文,2009.
[3]李艷.基于Labview虛擬儀器的設(shè)計(jì)和應(yīng)用[D].南京理工大學(xué)學(xué)位論文,2006.
[4]丁鵬.基于USB數(shù)據(jù)采集的虛擬儀器的研究和設(shè)計(jì)[D].西安電子科技大學(xué)學(xué)位論文,2010.
[5]王美剛.基于聲卡的虛擬儀器[D].太原理工大學(xué)碩士學(xué)位論文,2006.
[6]姜碧瓊.基于Labview的虛擬示波器的設(shè)計(jì)[D].西北農(nóng)林科技大學(xué)學(xué)位論文,2008.
[7]朱紅林,劉武.基于Labview的虛擬示波器的設(shè)計(jì)[J].電子工程師.2006.32(11):17-19.
[8]曾秀云.基于虛擬儀器的信號(hào)采集與控制系統(tǒng)開(kāi)發(fā)[D].電子科技大學(xué).2010.
[9]朱治國(guó),鄭建榮,劉小平等.虛擬儀器及常用開(kāi)發(fā)軟件[J].現(xiàn)代儀器,2004,1:28-31.
[10]薛德慶,姚世鋒,劉銳,蔡繼軍.MATLAB在虛擬儀器中的編程應(yīng)用研究[J].傳感器與儀器儀表,2006,22(5-1):157-159.
[11]羅彬,曾岳南,張雪群.基于MATLAB的虛擬示波器設(shè)計(jì)[J].儀器儀表用戶(hù),2006.13(4):107-110.
[12]宋波,陳一民.關(guān)于虛擬儀器開(kāi)發(fā)工具的比較與選取[J].國(guó)外電子測(cè)量技術(shù),2006,25(8):1-5.