緒論:寫作既是個人情感的抒發(fā),也是對學術(shù)真理的探索,歡迎閱讀由發(fā)表云整理的11篇vb程序設計論文范文,希望它們能為您的寫作提供參考和啟發(fā)。
1.2工程施工放樣數(shù)學模型
1.2.1曲線常數(shù):(1)緩和曲線傾角:πβ180200=×Rl(2)圓曲線內(nèi)移值:(3)切線外移量:23002240Rllm
1.2.2曲線要素:(1)切線長:(2)曲線長度:(3)外矢距:E=R+PR2()secα(4)切曲差:D=2TL
1.2.3主點里程:(1)ZH點里程:(2)HY點里程:(3)QZ點里程:(4)YH點里程:(5)HZ點里程:檢核計算:
1.2.4獨立坐標計算:(1)在坐標系x′o′y′中,緩和曲線ZH-HY段(i1K)獨立坐標計算:(2)計算ZH-HY緩和曲線細部點:(3)計算ZH-HY緩和曲線HY點(直接將上式0lli代為0lli代為):(4)在坐標系x′o′y′中,圓曲線HY-YH段任意一點獨立坐標計算:=+=+(1)siniiiiyPRCosxmRφφ1.2.5主點及若干曲線中樁點坐標:(1)(指ZH到JD的坐標方位角)(2)(右轉(zhuǎn)用-,左轉(zhuǎn)為+)(3)(右轉(zhuǎn)用-,左轉(zhuǎn)為+)(4)三個主點坐標如下:ZH點坐標:HZ點坐標:QZ點坐標:(5)曲線中樁點坐標按線路右轉(zhuǎn)所得公式如下(注意若為線路左轉(zhuǎn)則以下幾個公式用iiy代替y):
2工程施工放樣項目VisualBasic程序設計
2.1程序界面
2.1.1主程序界面。主程序界面設計如圖2所示,通過主界面,可以輸入所有的已知數(shù)據(jù),并選擇偏角的類型。圖2主程序界面
2.1.2結(jié)果顯示界面。計算結(jié)果通過一個文本框的形式,將所有需要的結(jié)果及一些關(guān)鍵的中間結(jié)果分欄顯示,如圖3所示:圖3結(jié)果顯示界面
2.2核心代碼
2.2.1計算曲線常數(shù)和曲線要素:IfR<>0ThenJD=Ls*180/(2*R*PI)p=Ls^2/(24*R)-Ls^4/(2688*R^3)m=Ls/2-Ls^3/(240*R^2)T=(R+p)*Tan(PJ/2)+mL=PJ*R+LsE=(R+p)*1/Cos(PJ/2)-Rq=2*T-LElseMsgBox"必須輸入曲線半徑R!"Text12.SetFocusEndIf
2.2.2主點里程及獨立坐標計算:k1=k1*1000+k11k2=k2*1000+k22k3=k3*1000+k33kZH=k1-TkkZH=kZH\1000kkkZH=kZH-kkZH*1000kkkZH=Format(kkkZH,“###.###”)Str1="ZH點里程:"&"K"&kkZH&"+"&kkkZHStr2="HY點里程:"&"K"&kkHY&"+"&kkkHYStr3="QZ點里程:"&"K"&kkQZ&"+"&kkkQZStr4="YH點里程:"&"K"&kkYH&"+"&kkkYHStr5="HZ點里程:"&"K"&kkHZ&"+"&kkkHZLi=k2-kZHLi1=k3-kZHX11=Li-(Li^5)/(40*R^2*Ls^2)Y11=(Li^3)/(6*R*Ls)X12=m+R*Sin((Li1-0.5*Ls)/R)Y12=p+R*(1-Cos((Li1-0.5*Ls)/R))Xhy1=m+R*Sin(JD*PI/180)Yhy1=p+R*(1-Cos(JD*PI/180))Ajd=((Li1-0.5*Ls)/R)*180/PI
2.2.3坐標計算:Xzh=X2+T*Cos(A)Yzh=Y2+T*Sin(A)Xhy=Xzh-Xhy1*Cos(A)+K*Yhy1*Sin(A)Yhy=Yzh-Xhy1*Sin(A)-K*Yhy1*Cos(A)Xqz=X2+E*Cos(Ajz)Yqz=Y2+E*Sin(Ajz)X111=Xzh-X11*Cos(A)+K*Y11*Sin(A)Y111=Yzh-X11*Sin(A)-K*Y11*Cos(A)X112=Xzh-X12*Cos(A)+K*Y12*Sin(A)Y112=Yzh-X12*Sin(A)-K*Y12*Cos(A)
2.2.4結(jié)果輸出:OpenApp.Path&“\T1.txt”ForInputAs#2DoWhileNotEOF(2)'循環(huán)至文件尾。LineInput#2,TextLine'讀入一行數(shù)據(jù)并將其賦予某變量。Form2.Text1.Text=Form2.Text1.Text&Chr(13)+Chr(10)&TextLineLoopClose#2Form2.Show
雖然有關(guān)部門一直非常的關(guān)注VB程序設計課程的教學問題,我國的VB程序設計課程教學也取得了非常大的進步但是依然存在著一些問題。這些問題涉及到高校教學制度,考試制度,教學方法等多個方面,因而必須要給予極大的重視并積極采取必要的措施進行解決。
1、教學方法陳舊
教學方法陳舊會導致教學效果大打折扣,目前,很多計算機教學方面的老師還是用比較原始的教學方法來進行計算機教學,特別是習慣性的用過于專業(yè)的語言來講授教學內(nèi)容,且教學課程的設置并不符合學生們實際學習的需要,這就使得學生們在學習VB程序設計時不太感興趣,也不能主動去復習、鞏固。很多老師雖然非常重視實踐操作,可是學生們在自己設計程序時只能根據(jù)老師所教的內(nèi)容來進行編程卻缺乏創(chuàng)造性思維,這對于培養(yǎng)極具創(chuàng)新意識的高素質(zhì)人才來說是非常不利的。老師們在介紹VB程序設計時往往強調(diào)是面向?qū)ο蟮某绦蛟O計時沒有將VB與其他的程序設計語言進行比較,這也使得學生們對VB程序設計課程的了解比較抽象。其實VB與其他的編程語言可以共同開發(fā)一些數(shù)據(jù)庫以實現(xiàn)特定的用途。而這也是當前教學過程中比較缺乏的。
2、學生評價體系落后
除了以上的這些問題外還有一點是比較重要的,那就是學生的評價體系比較落后,很多學校著重考學生的基本知識,這就使學生容易陷入死記硬背的怪圈中而不能形成自己的思維能力。學校往往是簡單的將學分作為評價學生的標準,因而促使學生們?yōu)榱双@得學分而進行學習或開展活動,這對于學生的發(fā)展是非常不利的。老師不能從考試和平時作業(yè)來簡單的評價一個學生對于課程的掌握情況,這對于學生的評價是不完善的。很多老師還用相同的標準來對于不同專業(yè)的學生,這也是相當不合理的。
二、如何改善VB程序設計課程教學
為了解決當前VB程序設計課程教學中存在的問題,有關(guān)部門應該要保持對這門課程的客觀評價并結(jié)合當前的實際情況來改善教學狀況。只有與時俱進用新的教育理念和教學方法才能培養(yǎng)出未來需要的高素質(zhì)人才。
1、培養(yǎng)學生學習興趣
學生是學習的主體,所以在改善教學狀況時首先就應該要培養(yǎng)學生的學習興趣。老師應該讓學生們了解這門課程的應用并將一些比較實用且非常有趣的東西介紹給學生們,這就可以增強學生們的學習興趣并真正的喜歡上VB程序設計這們課程。老師們可以讓學生們了解到一些游戲例如俄羅斯方塊就是根據(jù)VB程序設計開發(fā)出來的進而引導學生學習如何進行VB程序設計的學習。學生們甚至可以自己根據(jù)程序開發(fā)的思想設計出自己想要的簡單程序。老師們還可以給學生們介紹一些比較有用的課外書籍借以啟發(fā)學生們的創(chuàng)造性思維。學生們在日常生活中也應該注意有意識的培養(yǎng)自己這方面的興趣。很多同學對軟件開發(fā)比較感興趣,這就可以將所學與所用結(jié)合起來,在興趣的驅(qū)使下有意識的學習程序設計往往能夠取得更好的效果。
2、改變教學方法
除了要培養(yǎng)學生們的學習興趣外還應該要改變教學方法。只有教學方法改變了才能提高學習效果并保障學生能夠真正吸收VB程序設計的思想學會運用這門技術(shù)。對于很多學生來說可視化設計便利了他們的學習,所以老師要將VB程序設計的一些特點以合適的形式介紹給同學們,這就減少了他們的理解障礙。老師在教學過程中要將理論教學和具體操作結(jié)合起來,不僅要讓學生們知道VB程序設計的思想還要讓他們了解如何通過具體的操作來實現(xiàn)程序設計。當然,老師們往往發(fā)揮著非常大的作用,老師們應該盡可能的將具體的教學內(nèi)容貫徹到學生們的實際操作中。學生們既要充分的利用各種教學資源還要有創(chuàng)新意識大膽的提出新思想。以師范類非計算機專業(yè)的VB程序設計課程教學為例,師范類學生往往對VB程序設計課程不重視,所以老師們往往通過案例教學法等方式來增強教學效果。一些老師根據(jù)師范類學生邏輯思維不強等特點加強對學生的思維鍛煉,這就取得了比較好的效果。所以,老師們根據(jù)學生群體的不同改變教學方法是非常必要的。
3、完善學生評價體系
中圖分類號:G623 文獻標識碼:A 文章編號:1674-098X(2012)12(b)-0-01
VB程序設計是該校部分非計算機專業(yè)必修的課程之一,目前教學中普遍采用多媒體課堂教學與上機實踐緊密結(jié)合的方式。這種教學方式雖然能適當提高學生的學習興趣,但仍然是以教師教學為主體,學生只是被動的接受知識,不能很好的培養(yǎng)學生解決實際問題的能力。而案例教學和任務驅(qū)動式教學能很好的實現(xiàn)理論與實踐的銜接,所以筆者將案例教學和任務驅(qū)動式教學相結(jié)合,同時吸取傳統(tǒng)教學的優(yōu)點,并考慮到該校學生學習VB現(xiàn)狀,探索出一種適合該校學生學習VB的教學方法―任務驅(qū)動式案例教學法。
1 任務驅(qū)動式案例教學法的特點
1.1 任務驅(qū)動和案例教學
任務驅(qū)動教學法是以建構(gòu)主義的認知靈活性理論為基礎(chǔ)的一種教學方法。教師將教學內(nèi)容設計成學生感興趣的任務,并將知識點隱含到任務中,引導學生通過各種方式實任務,獲得知識。案例教學主要是對具有一定實踐性、針對性的典型實例進行分析、討論、推斷、歸納和總結(jié),以提高學生分析問題和解決問題的能力的一種教學方法。
1.2 任務驅(qū)動式案例教學法
任務驅(qū)動式案例教學法是將案例教學與任務驅(qū)動相結(jié)合的一種教學方法。案例教學側(cè)重于“教”,指教師在授課的過程中以事先設計好的典型案例為基礎(chǔ);而任務驅(qū)動側(cè)重于“學”,指學生在學習的過程中以任務為驅(qū)動,以解決問題為目標,在解決問題的過程中學習。這種教學方法主要是把學生作為教學中的主體,教師在授課中的主要目的是激發(fā)學生的學習興趣,引導學生自主學習,構(gòu)建相應知識體系,培養(yǎng)和提高學生的實際操作能力。而VB課程的實踐性較強,在教學中不僅要讓學生掌握理論知識,還要培養(yǎng)學生的實踐操作能力,以及自主學習和獨立分析、解決問題的能力,所以VB程序設計的教學適合采用該教學方法。在整個的教學方法中,需要教師和學生很好的配合。教師設計有代表性的案例,在向?qū)W生呈現(xiàn)、講解案例的過程中激發(fā)學生的學習興趣。再根據(jù)相關(guān)知識點給學生布置任務,學生得到任務后根據(jù)情況自主學習或分組討論學習,通過對案例的認真研究和模仿,并在教師的協(xié)助指導下逐步完成任務。在整個教學過程中學生不僅掌握了VB的基本知識和方法,在教師的引導下建構(gòu)了相應的知識體系,同時也掌握了相應的操作方法以及相關(guān)的技巧,極大的提高了學生的實踐操作能力。
2 任務驅(qū)動式案例教學的實施
任務驅(qū)動式案例教學法首先要精選案例;然后向?qū)W生呈現(xiàn)案例,通過案例引入任務;再引導學生自主學習,分析任務、進一步探究任務,最后做出總結(jié)評價。
2.1 教師精選案例
教師分析VB程序設計的教學目標和教學內(nèi)容,根據(jù)教學內(nèi)容設計出一些學生日常生活中常見的典型案例,比如網(wǎng)頁中常見的滾動字幕、計算器、qq登陸框、qq農(nóng)場定時提醒鬧鐘、音樂播放器、學生成績管理系統(tǒng)等,選取這些案例不僅能提高學生的學習興趣,而且能使學生清楚學習VB的實際用途,這樣學生才有動力繼續(xù)學習下去。
2.2 教師呈現(xiàn)案例、提出任務
向?qū)W生展示設計好的案例,使學生有個直觀的印象。將案例分解為VB教學中的知識點進行講解,通過講解使學生掌握知識點,模仿案例。然后提出問題,根據(jù)提出的問題布置相應任務。以下以“蝴蝶飛舞”為例。(1)向?qū)W生展示案例。如圖1所示,當單擊“開始”按鈕時,蝴蝶從左向右飛翔,同時“開始”按鈕變?yōu)椤袄^續(xù)”按鈕,單擊“暫停”按鈕后停止。
圖1 “蝴蝶飛舞”案例
(2)講解涉及到的知識點。Timer控件(Enabled、Interval屬性和Timer事件)、Image控件(Visible屬性)、VB坐標系的使用,進一步熟悉If語句的應用。(3)提出問題。蝴蝶飛出窗體時如何處理? 蝴蝶飛舞的速度如何控制?蝴蝶飛舞的方向能否發(fā)生變化?如何制作滾動字幕?(4)布置任務。編寫蝴蝶飛出窗體時從窗體的另一邊飛入的程序;編寫調(diào)整蝴蝶飛舞的方向(左下->右上或其他方向)的程序;設計簡單的演員表字幕滾動程序;設計紅燈停、綠燈行的程序等。
2.3 學生自主探究任務、實現(xiàn)任務
學生得到任務后,以自主學習或分小組討論的方式來完成任務。對于相對簡單的任務學生應該自主學習,遇到困難時查閱相關(guān)資料或向同學、老師尋求幫助。這樣可以培養(yǎng)學生獨立分析、解決問題的能力,便于循序漸進地學習VB基礎(chǔ)知識,掌握程序設計方法。
2.4 師檢查任務、總結(jié)與評價任務
當學生完成任務后,教師應該認真檢查學生完成任務的情況,進行總結(jié)與評價。這樣不僅可以明確學生掌握知識的情況,有針對性的對學生進行不同的輔導;同時還能發(fā)現(xiàn)教學中存在的不足,以便及時調(diào)整教學內(nèi)容和教學方法。在任務評價階段,還可以讓學生提供有針對性的反饋信息,并將某些有代表性的作品作為范例給學生進行示范講解,讓同學之間進行作品欣賞和各種方法的交流,這樣不僅可以開拓學生的思維,集思廣益,還可以鼓勵學生創(chuàng)新,充分發(fā)揮了他們的想象力和創(chuàng)造性。
3 結(jié)語
在VB程序設計的教學中采用任務驅(qū)動式案例教學法的教學效果較好。首先,該教學方法活躍了課堂氣氛,極大的提高了學生學習VB程序設計的興趣;其次,有效地促進了理論向?qū)嵺`的轉(zhuǎn)化,提高了學生的實踐能力;再次,培養(yǎng)了學生一定的相互協(xié)作的能力。最后,很好完成了教學內(nèi)容,達到了教學要求的目標。該方法也存在不足:教學進度難以把握,教學效果評價有一定的困難,還有待于進一步研究與
改進。
參考文獻
[1] 羅新密.基于任務驅(qū)動的大學計算機文化基礎(chǔ)課程教學模式研究與實踐[J].計算機與信息技術(shù),2008(3).
關(guān)鍵詞: VB程序設計;一體化教學;教學改革
Key words: VB Programming Design;integrated teaching;reform in education
中圖分類號:G652 文獻標識碼:A 文章編號:1006-4311(2016)30-0197-02
0 引言
隨著IT行業(yè)的發(fā)展,企業(yè)對相關(guān)人才的要求越來越高,以軟件開發(fā)為例,企業(yè)招聘程序設計人員的要求是不僅具有較強的合作能力,還具有豐富的開發(fā)實踐經(jīng)驗。在這種情況下,高職計算機語言類課程的重要目標應是為計算機專業(yè)學生打好程序設計基礎(chǔ),不斷提高學生程序設計水平。
VB是計算機專業(yè)學生必修的一門專業(yè)課程,它是一門可視化的、面向?qū)ο蟮某绦蛟O計語言,它具有所見即所得、結(jié)構(gòu)化程序設計思想以及強大的數(shù)據(jù)庫訪問功能。在傳統(tǒng)的教學模式下,VB課程授課以教師為主導,學生扮演者被動聽講的角色,該教學模式下學生需要花費大量的時間和精力學習語法等理論概念知識,沒有時間和精力進行實踐,導致該教學模式下培養(yǎng)出來的學生普遍實踐能力較弱,進入社會中無法在短時間內(nèi)適應企業(yè)的要求。究其原因主要是院校在教學過程中未將理論和實踐結(jié)合起來,使得理論和實踐脫節(jié),這種情況嚴重影響了院校的教學質(zhì)量,影響了院校應用型人才培養(yǎng)目標的實現(xiàn)。面對這種形勢,院校應采取有效措施提高VB課程的教學質(zhì)量,首要任務就是改革VB課程的教學模式,采用“教、學、做”一體化教學模式,該模式培養(yǎng)出來的學生都是理論和實踐兼顧的應用型人才。
一體化教學是指理論與實踐一體化教學,該教學方法打破了理論課和實踐課的界限,將兩者有機的結(jié)合起來,通過創(chuàng)造良好的實訓環(huán)境,學生在“學中做,做中學”,更加注重學生的實踐能力,突出教學內(nèi)容和教學方法的科學性和實踐性。
1 項目設計及教學思路
要想成為一名合格的VB程序設計員,應具備以下能力:熟練掌握 VB的基本設計、編程、調(diào)試的方法;學會用戶界面設計方法;理解面向?qū)ο蟮某绦蛟O計思想;熟練運用VB開發(fā)環(huán)境等。基于此我們應建立相應的教學目標:熟練掌握VB的基本編程方法;掌握面向?qū)ο蟪绦蛟O計的特點;掌握可視化編程技巧等。在已確定的教學目標的基礎(chǔ)上采取一體化教學模式,確定最終的教學思路為以學生為主體,以項目為載體。
在實際的教學過程中可通過設計與生活息息相關(guān)的項目來調(diào)動學習熱情,即采用“大項目、小案例、任務驅(qū)動”的教學模式。 “大項目”是一個相對的概念,它可以突破教材的章節(jié)限制,將VB課程所有授課內(nèi)容的知識點用一個相對較大的項目涵蓋,其中各章節(jié)的知識點基本都隱含在項目的各個模塊中;“小案例”同樣如此,也是一個相對的概念,當完成各項目模塊功能時,可通過引入學生感興趣的、實踐意義強的小案例,來導入知識點,引出項目。
為更好地完成課程教學的目的,筆者設計了一個相對完善的學生信息管理系統(tǒng)綜合項目,如圖1所示。每一個模塊都包含界面設計、代碼設計、調(diào)試等重要步驟,個別模塊還包含數(shù)據(jù)庫設計。在設計任務時盡可能循序漸進地把知識點融入到任務中,然而由于該門課程設計知識點眾多,學生們要想良好地完成這個綜合項目,需要預先做很多準備,掌握很多相關(guān)知識,比如各章節(jié)的知識點內(nèi)容、VB程序設計的基本概念和基礎(chǔ)知識等。需要注意的是設計項目時應循序漸進,先設計比較容易的項目,之后慢慢提高項目難度,如此不僅能夠幫助學生學習和掌握相關(guān)的知識點,還能夠培養(yǎng)學生的實踐能力和團隊協(xié)作能力。
2 模擬企業(yè)的課程設計和教學方法
傳統(tǒng)的教學模式是先理論后實踐,而“教、學、做”一體化教學模式的特點是理論和實踐同時進行。這種新型的教學模式課程設計時圍繞實踐展開,項目中包含知識點,學生在實踐的過程中就潛移默化的學習了相關(guān)的知識點。該教學模式要求學生積極的參與進來,教師作為整個項目的主導著,應合理安排各個環(huán)節(jié)的操作時間,適時地任務,鼓勵學生解決各類問題。比如在講授控件的使用方法時,可通過設計“圖書管理系統(tǒng)”同步項目,把項目分成“界面設計”、 “菜單設計”、“數(shù)據(jù)庫管理”、“用戶權(quán)限管理”四個子任務,教師引導學生現(xiàn)將每個子任務都完成好,之后設置每個任務所需的控件屬性,最后編程各個對象。“教、學、做”一體化教學模式的重點是教師做好自身的主導工作,給學生創(chuàng)造一個良好的“真實”學習環(huán)境,學生在身臨其境中就能夠潛移默化的掌握各個知識點。
3 靈活運用信息化教學環(huán)境
傳統(tǒng)的教學模式是學生看教師的演示,然后依靠自身記憶模仿老師的操作進行操作,不能和老師進行同步操作。現(xiàn)在智能化的教學環(huán)境,教師可以采取多元化的教學手段,要求學生邊看邊做,實現(xiàn)“教、學、做”一體。
借助數(shù)字化校園建設的平臺,利用現(xiàn)已成熟的網(wǎng)絡技術(shù),實現(xiàn)信息技術(shù)與學科課程的整合,營造一種新型的教學環(huán)境。①開發(fā)特色信息資源。對于重要的知識點開發(fā)微課資源,并將資源上傳網(wǎng)絡,學生借助學習終端可下載資源自主學習,在課堂教學中,也是“翻轉(zhuǎn)”課堂的一個重要的組成部分。另外,也可以把課堂教學延伸到課堂以外。②借助網(wǎng)絡交流平臺。如今網(wǎng)絡信息發(fā)展飛速,博客、QQ、微信已深深融入到我們的學習生活中,教師應引導學生正確地使用通訊工具及網(wǎng)絡。師生可以通過微信等平臺在課余時間進行反饋交流,幫助教師及時掌握學生學習動態(tài),這是教學環(huán)節(jié)中必不可少的一部分。
當前在硬件配置方面,我們實現(xiàn)了電腦師生人手一臺,多媒體教學系統(tǒng)設備也比較齊全,另外江蘇省江陰中等專業(yè)學校學生人手一只“綠網(wǎng)”手機,學校也出臺了一套比較健全的管理制度。在軟件配置方面,安裝了軟件多媒體教學演示系統(tǒng)。且建立了專門的學生實訓室。在這種教學環(huán)境下,學生們能夠一邊聽教師講課一邊操作計算機,即在接收理論知識的同時就能夠馬上進行實際操作,如此不僅有利于學生掌握相關(guān)的理論知識,還能夠培養(yǎng)學生的實踐能力和團隊協(xié)作能力,教學效果將事半功倍。
4 加強校企合作
職業(yè)學校最終的培養(yǎng)目標是讓學生成為一個準員工,滿足企業(yè)需求。所以高校應加強和企業(yè)的合作,在課程設計時充分考慮實際市場的影響,運用市場上常用的軟件,注意不讓教學內(nèi)容和實際市場需求脫節(jié)。只有這樣高校培養(yǎng)出來的才是理論知識和實踐能力兼具的應用型人才,才能夠滿足當前社會的要求。我系與某軟件公司聯(lián)合辦了一個校企合作班,由企業(yè)師傅與學校老師一起開發(fā)課程給學生上課。通過校企合作,為學生實訓、實習提供了真實的場所。教學場地不再拘泥于課程,可在企業(yè)組織實訓,由企業(yè)提供硬件設備和軟件技術(shù),學校負責管理。通過加強校企合作,能夠有效提高學生的實踐能力,如此不僅有效提高了學校的教學質(zhì)量,也更好地滿足了企業(yè)的用人需求,實現(xiàn)了學校和企業(yè)雙贏。
5 建立新的考核評價體系
整個課程學習過程中要建立一個科學合理的教學評價體系。VB課程的目標是提高學生程序設計、代碼編寫和可視化界面設計的綜合能力。所以我們采用的評價方式必須是多方面的,不僅要有理論知識檢查,還要有實際操作能力的考核。傳統(tǒng)的考核方式以考試為課程的最終評價依據(jù),主要由平時成績、期中考試和期末考試成績總評而成。而現(xiàn)在我們除了通過課上提問和討論發(fā)言來檢驗學生的理論掌握程度,還通過項目的階段任務完成情況來檢驗學生是否掌握該課程的實踐要求。對學生的考核評價以項目任務的完成情況為依據(jù)。根據(jù)企業(yè)相關(guān)職位的崗位要求來制定考核評價標準,以學生完成的項目成果作為評價的內(nèi)容,從而確保學生的崗位職業(yè)能力,實現(xiàn)與企業(yè)崗位工作“零對接”。
6 結(jié)束語
一體化教學模式將理論學習與實際操作緊密結(jié)合,將學生從被動的學習模式中解放出來,提高了教學質(zhì)量,讓學生積極主動地參與到學習活動當中,自主地去構(gòu)建個人知識,實現(xiàn)知識的遷移,使學生的實際操作能力和專業(yè)技能得到了培養(yǎng)。這種教學模式采用多種教學方法和教學手段,將教學的科學性和教學的藝術(shù)性相結(jié)合,始終以學生為中心,以就業(yè)為導向,以培養(yǎng)高技能人才為目標的職業(yè)教育辦學方針。這種教學模式下學生就業(yè)后深受用人單位的歡迎,對學生就業(yè)有極大的益處。
參考文獻:
中圖分類號:G434 文獻標識碼:B 論文編號:1674-2117(2017)06-0084-03
研究背景
計算機程序設計語言一直是學生反映比較難的一門課程。長期以來,很多高校使用VB語言作為“高級語言程序設計”課程的教學內(nèi)容,筆者所在學校原來也是如此。在VB語言的教學過程中,筆者發(fā)現(xiàn)了一些問題,突出表現(xiàn)為以下兩點:①學生反映學習編程比較難,而且歷年考試成績也不理想;②學生覺得學習這門課程用處不大。這就導致很多學生對這門課程沒興趣,上課純粹為了應付考試,甚至產(chǎn)生厭學情緒。[1]筆者仔細分析了上述問題,認為問題產(chǎn)生的原因主要有以下三個:①學生基礎(chǔ)較差,且邏輯思維能力不強。②VB語言要結(jié)合數(shù)據(jù)庫編程,才能展現(xiàn)它的強大功能。而大多數(shù)學校只開一學期課程,學時太短,學生僅能機械地學習語法,沒有時間學習實際應用部分的內(nèi)容,從而覺得VB語言沒有用。③學語法時,教師沒有給學生呈現(xiàn)對其專業(yè)學習有幫助的例子,所以他們沒有一個直觀的感受。
筆者經(jīng)過詳細的論證,決定采用Excel VBA替代VB教學。VBA有著其他語言或開發(fā)工具所不具備的獨特優(yōu)點:①VBA可以通過操作Excel操作數(shù)據(jù)庫,這樣就可以開發(fā)出很多實用的程序,使學生對編程有了直觀的體驗,提高了他們的學習興趣。[2]②VBA是易學、上手較快的編程語言,且屬于VB語言的子集。即使是非計算機專業(yè)人員,也可以用它編寫出需要的件,極大地降低了學生學習的難度。③可以高效、快速地編制出Windows環(huán)境下功能強大、圖形界面豐富的應用軟件系統(tǒng)。用Excel VBA替代VB的教學改革在筆者所在學院已經(jīng)進行了兩年,并取得了較好的教學效果。學生學習興趣明顯加強,對編程的應用能力也得到了較大的提高。
目前仍存在的問題
“高級語言程序設計”課程改革雖然已經(jīng)取得了一定的成效,但還存在以下幾個問題。
1.缺乏完善的題庫
由于筆者用Excel VBA替代了VB進行教學,學生在上機練習的過程中,有很多題目不再是傳統(tǒng)的編程題。例如,在教學過程中,筆者把Excel作為數(shù)據(jù)庫使用,讓學生通過編程操作Excel,使他們能輕松理解數(shù)據(jù)庫的基本概念和知識。但由于沒有建立統(tǒng)一的題庫,每位教師上課時例題都有所不相同,對知識點的要求也有細微的差別,所以給期末考試命題帶來了困難,未能實現(xiàn)教學標準化。
2.困難解答不及時,教學實時化不夠
“高級語言程序設計”課程是一門對實踐要求較高的課程。學生上機編程時,一個語法錯誤或隱含的邏輯錯誤都將導致程序運行失敗,甚至系統(tǒng)崩潰。這時,如果遇到的問題不能及時得到解決,學生則容易產(chǎn)生厭學情緒。但在課堂中,教師要同時面對幾十個學生,要想及時解答每個學生的問題是不可能的,教學實時化不夠。
3.教學考核、評價體系不完善
考試的目的不僅是為了檢查學生的學習成績,還要及時發(fā)現(xiàn)他們哪些知識點掌握不足,并針對特定問題進行指導。目前,筆者所在學校的改革使學生對“高級語言程序設計”這門課程的整體學習成效有了較大提高,但學校的教學考核、評價體系不夠完善,教師對單個學生的學習狀況掌握還不夠精細。
“學、練、考”一體的VBA教學平臺構(gòu)思
針對以上問題,筆者提出開發(fā)一個集“學、練、考”于一體的VBA教學平臺來實現(xiàn)教學的標準化、實時化、精細化,其具體步驟如下。
(1)開發(fā)一個統(tǒng)一的題庫來實現(xiàn)教學的標準化。按照教學大綱的要求,筆者把每一章的知識點按選擇題、判斷題、程序填空題、編程題四類題型編制成試題庫。這樣,不論哪位教師上課,學生掌握的知識點都是固定的,保障了教學質(zhì)量的穩(wěn)定。
(2)單元測驗后,軟件會自動統(tǒng)計出每題的出錯率,教師很容易就可以知道學生哪些知識點掌握得不夠好,以便下節(jié)課進行重點講授,從而實現(xiàn)教學的實時化。
(3)系統(tǒng)對每位學生的每次登錄練習都有記錄(包括自測成績、錯題編號等),這樣教師可以很容易掌握每位學生的學習情況,并針對學習落后的學生進行定點輔導,以達到教學精細化的目的。
開發(fā)方案概述
1.關(guān)于自動閱卷問題
筆者采用Excel VBA進行教學,由于Excel自帶了VBA開發(fā)環(huán)境,所以生成的題目只需要一個Excel文件即可保存。在該文件中,工作表一保存判斷題,工作表二保存選擇題,工作表三保存程序填空題,工作表四保存編程題。對于客觀題(前三種題型),程序只需要按題號與題庫答案進行對比就可以閱卷。對于編程題的自動閱卷,筆者這樣設計:在題庫中,每道編程題的結(jié)果都要求保存在題目文件的工作表四中;閱卷時,程序自動打開每位學生的試卷文件(一個Excel文件),采用Excel VBA的過程調(diào)用(call)命令執(zhí)行過程(學生抽到的題目號),再把結(jié)果(保存在工作表四中的數(shù)據(jù))跟題庫中的結(jié)果進行比較,最后得出成績。對于有語法錯誤不能運行的程序,系統(tǒng)將殺死進程,再對學生的源代碼進行關(guān)鍵字對比,給出步驟分。[3]
2.系統(tǒng)結(jié)構(gòu)
考慮到出題效率,筆者采用了C/S系統(tǒng)結(jié)構(gòu),開發(fā)工具使用Visual Studio 2010,數(shù)據(jù)庫使用SQL Server2008,系統(tǒng)結(jié)構(gòu)如下圖所示。
教師登錄系統(tǒng)后,可以出卷,安排任課班級的考試,查閱任課班級學生的考試成績,以及查閱學生的練習情況。學生登錄后,可以進行單元練習,自我測試,查看題目答案以及知識點描述等。
3.數(shù)據(jù)庫設計
數(shù)據(jù)庫主要由學生信息表(如下頁表1)、試卷信息表(如下頁表2)和學生成績表(如表3)三個表組成。
結(jié)束語
構(gòu)建“學、練、考”一體的VBA教學平臺,能有效解決“高級語言程序設計”課程教學中存在的問題,加強教師和學生的信息交流,方便教師及時掌握學生的學習動態(tài),較好地實現(xiàn)了教學的標準化、實時化、精細化,該平臺還可以作為一種通用教學平臺應用到其他課程的教學中,具有普遍的應用價值。
參考文獻:
[1]孫淑霞.地方高校大學計算機基礎(chǔ)課程改革的探索與實踐[J].中國大學教學,2014(4).
隨著信息技術(shù)的發(fā)展,計算機已逐漸普及到家庭,電腦發(fā)揮其強大功能的同時,也給家長帶來了困擾:怎樣能控制小孩只能在限定的時間內(nèi)操作電腦呢?本文利用VB編寫了一個限制用戶登錄時間的小程序可以解決這個問題。
1.編程思路
首先,在Windows下建立兩個用戶,一個是小孩知道的普通用戶,用戶名可以為Child;一個是超級用戶注銷,用戶名可以設為Adm,該用戶能自由使用和管理電腦并可控制Child用戶。為防止Child用戶修改系統(tǒng)時間,要求此用戶在建立時權(quán)限為受限用戶,Amd用戶要加密碼,此用戶名和密碼不能讓小孩知道。
然后,利用VB建立一窗體實現(xiàn)提示游戲時間到了的信息,利用兩個時鐘控件控制游戲的登錄時間和玩多長時間,并設置相應屬性。
最后通過調(diào)用API函數(shù),若小孩不在指定的游戲時間內(nèi)登錄或超過了玩游戲時間,系統(tǒng)就自動注銷此用戶。為使窗體更形象,特通過調(diào)用API函數(shù)使窗體設為有圖形背景的橢圓狀。API函數(shù)是一組C語言編寫的系統(tǒng)函數(shù),是Windows本身用來提供圖形用戶界面和操作windows環(huán)境的所有的過程。VB可以直接調(diào)用所有Win32API函數(shù)。本文用到的幾個API函數(shù):GetUser-Name函數(shù)、ExitWindowsEx函數(shù)、CreateEllipticRgn函數(shù)、SetWindowRgn函數(shù)。
下面主要以ExitWindowsEx函數(shù)說明API函數(shù)的功能及使用,ExitWindowsEx函數(shù)可以方便地實行重新啟動計算機或退出Windows系統(tǒng)并關(guān)閉計算機免費論文。它有兩個參數(shù),參數(shù)、uFlags指示執(zhí)行該函數(shù)時要完成的動作,可以用一個或幾個常數(shù)的組合或數(shù)值的組合來指定動作。這些常數(shù)為:
EWX_LOGOFF(=0)
EWX_SHUTDOWN(=1)
EWX_REBOOT(=2)
EWX_FORCE(=4)
EWX_POWEROFF(=8)
比如要強制用戶退出重新登錄可以設參數(shù)uFlags值為0或4注銷,(參數(shù)uFlags值也可是這些常數(shù)的組合),如組合值為0+1+2表示強制終止所有進程,退出登錄、關(guān)閉計算機、重新啟動計算機等方面的信息。dwReserved參數(shù)用于控制是否要保留當前窗體狀態(tài)。GetUserName函數(shù)用于獲取當前登錄的用戶名的信息;CreateEllipticRgn函數(shù)用于建立橢圓狀窗體。為能讓計算機啟動時自動運行此程序,需修改Windows注冊表。
2.程序設計過程
(1)在Windows的“控制面板”中的“用戶和密碼”程序中,首先選中“要使用本機,用戶必須輸入用戶名和密碼”復選框,再建立兩個用戶:Amd和Child(權(quán)限為受限用戶),并為Amd用戶設置密碼和權(quán)限(超級用戶Administrator權(quán)限)。
(2)在VB中建立一窗體,并為窗體增加兩個時鐘控件和一個標簽,屬性設置為下表:
控件名
屬性
屬性值
窗體
Name
frmmain
標簽
Caption
“孩子你應該結(jié)束游戲,去學習了!”
Backstyle
0-Transparent
時鐘1
name
Timer1
中圖分類號:G642 文獻標識碼:B
文章編號:1672-5913(2007)10-0039-02
西北師范大學知行學院是甘肅省第一所獨立院校,為了增強辦學競爭力,不斷地創(chuàng)建專業(yè)特色鮮明、應用優(yōu)勢突出、就業(yè)需求看好的新專業(yè),在傳承和發(fā)揚西北師范大學百年老校的崇尚學術(shù)、追求卓越、嚴謹治學的優(yōu)良傳統(tǒng)同時,積極研究和探索,采用新的教學模式培養(yǎng)人才,提高教育教學質(zhì)量。
知行學院計算機與信息科學系是為適應西部大開發(fā),加快培養(yǎng)信息技術(shù)人才而設置的,在堅持科學發(fā)展觀的前提下,全面推進素質(zhì)教育,從改革教學模式著眼,有效地培養(yǎng)應用型人才方面,做了許多切實的工作。
第一,從社會需要定位培養(yǎng)目標,制定務實的辦學思路,就是“面向社會、以人為本、任務激勵、實踐創(chuàng)新、多能多證、應試應市”。面向社會就是以社會的需求,和“科教興國”戰(zhàn)略、“人才強國”戰(zhàn)略的要求確定專業(yè)設置、培養(yǎng)目標和教學模式,為西部大開發(fā)培養(yǎng)信息技術(shù)人才。以人為本,就是以學生為本,教師和管理人員要為學生的成才服務。實踐創(chuàng)新,就是要培養(yǎng)學生的實踐能力和創(chuàng)新意識,使其具有新型應用型人才的重要素質(zhì)。任務激勵,就是以課題項目的研究、開發(fā),充分調(diào)動學生的學習積極性。多能多證是所培養(yǎng)的應用型人才,不僅要拿到學校的畢業(yè)證,還要拿到國家相關(guān)的專業(yè)等級與職業(yè)資格證書。應試應市,表明素質(zhì)教育不排斥考試能力,學生要能適應專升本的考試、研究生考試和國家機關(guān)凡進必考的形勢,適應人才市場的需求,應聘就業(yè)。在此基礎(chǔ)上,進一步實施的新舉措是“兩手抓”:一手抓學生的搞課題項目實踐,一手抓考取國家的專業(yè)技術(shù)等級和職業(yè)資格證書。使學生在畢業(yè)時,每個人都搞出幾個項目成果,獲得幾個資格證書。幾年來的實踐證明了整個辦學思路有很強的指導性和實際意義,已在增強學生素質(zhì),提高就業(yè)率方面凸現(xiàn)優(yōu)勢。
第二,根據(jù)經(jīng)濟社會發(fā)展和人才市場對各專業(yè)人才的素質(zhì)要求,合理地調(diào)整各專業(yè)的課程設置和教學內(nèi)容,強化學生實踐能力、創(chuàng)業(yè)能力的培養(yǎng),積極推行教學改革,努力推進教學創(chuàng)新已勢在必行。教學改革要落在實處,除了科學地制訂教學計劃外,在課程設置中,知行學院計算機系突出了這樣幾個方面:首先,瞄準技術(shù)發(fā)展應用領(lǐng)域的前沿,不斷的選擇增設實用性強的新課程,以適應計算機科學日益迅速的發(fā)展。幾年來先后增設了大型數(shù)據(jù)庫、ASP、EDA技術(shù)等課程;其次,著眼應用,增加實踐性課程,制定了x+1學期的教學與實踐計劃,即專科生第六學期從事專業(yè)實習,本科生第八學期安排專業(yè)實習。為了加強畢業(yè)生專升本與就業(yè)工作,把專升本的輔導提早到第5學期,把畢業(yè)設計與畢業(yè)論文提前到第7學期,這一措施既可以保證上述工作有充分的時間來完成,更重要的是學生的畢業(yè)論文和畢業(yè)設計成果在就業(yè)應聘面試中派上用場。再次,面向社會,增設開發(fā)和研究性課題。對專職教師要求教學采用新技術(shù)、新手段,以全新的姿態(tài)走上講臺,教學效果普遍較好。
第三,為落實辦學思路培養(yǎng)應用型人才,多年來的實踐中認識到,應用型人才的最主要的特點是具有較強的實踐能力和創(chuàng)新精神,既能創(chuàng)新,又能創(chuàng)業(yè)。能夠搞項目與課題的研究和開發(fā),所以培養(yǎng)學生從事課題、項目的研究和開發(fā)能力,成為培養(yǎng)應用型人才的關(guān)鍵。依據(jù)動機理論,人們愿意做出努力的事情不外乎兩種:一是他們指望做后能成功的事,一是能看到成功帶來收益的事。在教學過程中向?qū)W生公布一系列有實際意義的課題任務,向?qū)W生說明實際意義,完成這些任務能學到什么技能,然后讓他們報名選做,老師進行個別指導,引導學生自己進行社會調(diào)查、搜集資料、進行實踐和創(chuàng)造性的學習。通過任務激勵,極大的調(diào)動了學生的學習積極性和主動性。
第四,采用課題、項目研究與開發(fā)教學模式,培養(yǎng)應用型人才。為了使學生有較多的項目開發(fā)的體驗與實踐,在一部分應用性強的專業(yè)技術(shù)課程的教學中,改變傳統(tǒng)的教學方法,采用新的教學模式,就是把教學的目標、教學的過程、教學結(jié)果考核均與課題項目的研發(fā)相連接的教學模式。這樣就改變了只靠畢業(yè)設計集中搞項目的辦法,而讓每一門專業(yè)課為新型人才培養(yǎng)做出貢獻。筆者有幸承擔了“Visual Basic程序設計”課程的教學任務,率先進行“課題、項目研究與開發(fā)教學模式”的教學。第一步,改編寫了教材,將VB課程學習中要做的課題一一列出。VB這門課程是計算機專業(yè)和電子信息工程專業(yè)學習的核心必修課,實踐性很強的課程,對培養(yǎng)學生的實踐能力和創(chuàng)新能力能發(fā)揮重要作用,在學生整個知識體系中,占有重要地位。第二步,設計一個全面全新的教學模式:“一個飛躍達標、兩個階段教學、三個層次要求、四個方面考核”。一個飛躍達標,就是實現(xiàn)從案例教學入門到項目開發(fā)的飛躍。由于教學目標定位于培養(yǎng)應用型人才,其最重要的特征就是能搞課題項目研發(fā),具有較強的實踐能力和創(chuàng)新能力。把課題、項目研發(fā)的任務分解到相關(guān)課程教學中進行。這樣,畢業(yè)時每個學生可以搞出三、四項成果,提高了就業(yè)競爭能力;兩個階段教學,就是把一個學期分成兩個階段,進行階段教學。第一階段,進行案例教學,以課題為主線,學習基本概念、基本理論和基本設計方法,做到由基本概念與案例入門。第二個階段,進行項目研發(fā)。綜合運用所學知識和方法,分析和解決實際問題,不僅能做小項目,也能做功能相對完整的中等程度項目。實現(xiàn)由“案例”到“項目”的飛躍;整個階段都是講練結(jié)合,加強實際動手能力的培養(yǎng)。具體做法是:每個課題單元分兩個階段,教師講解、演示為一個階段(2學時),學生實訓練習為一個階段(4學時)。教師講解、演示課題項目時,給出課題項目名稱,說明課題目的、課題意義,講解演示設計過程,(包括界面設計、屬性設置、代碼編寫、運行調(diào)試、整理保存和注釋詳解)讓學生知其然而且知其所以然。通過實訓練習,使學生親手完成一些案例和項目任務,獲得成就感,從而引起繼續(xù)學習的興趣。提高學習的積極性,達到“任務激勵”和“實踐創(chuàng)新”的目的;因材施教,分層次教學。實訓練習課題難度分一般、較難和難三個層次。一般的課題任務要求全體同學完成,較難的課題任務要求二分之一的學生完成,難的課題任務供少數(shù)優(yōu)秀同學選做。考核成績考慮到四個方面:學習態(tài)度、出勤情況、創(chuàng)新精神和成果業(yè)績。期末考試,讓學生分組選題,采用論文答辯的方式進行。看創(chuàng)新精神,看成果業(yè)績。第三步,根據(jù)改革了的教學模式,進一步設計了改革要求,即為授課編寫獨具特色的講稿,打印成冊;采用多媒體手段進行教學,做出教學課件;匯編學生完成的課題成果,刻錄成光盤并保存。按照上述的教學模式以及改革要求進行的教學,從教得方面來看,因為“Visual Basic程序設計”是一門實踐性很強的課程,為避免單調(diào)的理論講解,筆者從多本輔導教材中精心挑選了多個有代表性的實例匯總為16個課題(如窗體程序設計、復選框程序設計、查詢密碼程序設計、菜單程序設計、多重文檔程序設計、訪問數(shù)據(jù)庫技術(shù)、賓館管理系統(tǒng)等)作為主導教材詳細講解,制作了多媒體教學課件。并在多媒體教學環(huán)境中進行實際演示,配合理論知識的強調(diào),教學效果良好,學生比較感興趣,學習的主動性和積極性較強,在期末課題設計時也充分發(fā)揮了創(chuàng)造性思維。從學的方面來看,學生對這門課程的教學比較感興趣,因為這門課程實用性較強,但難度不算很大。學生們?yōu)榱四軐W好VB這門課,借閱了多本相關(guān)資料,花費了大量業(yè)余時間來上機實踐,進一步強化他們對一些VB實用例子的理解和掌握。因此,學習的效果也比較好。“Visual Basic程序設計”這門課程實用性較強,符合專業(yè)課學習的改革要求。達到了培養(yǎng)學生從事課題、項目的研究和開發(fā)能力,促進他們成為應用型人才的目的。2006年VB程序設計課題項目研發(fā)教學的成果比較顯著,下半年期末考試中列出26個課題,學生分組進行研發(fā),同學們設計出了“學籍管理系統(tǒng)”、“電子教務系統(tǒng)”、“評語管理系統(tǒng)”、“企業(yè)人事管理系統(tǒng)”、“小區(qū)物業(yè)管理系統(tǒng)”、“快捷Windows桌面操作系統(tǒng)”、“AMT模擬系統(tǒng)”、“黃河風采抽獎系統(tǒng)”、“多媒體播放器”等課題項目,一些同學的程序設計很具特色和創(chuàng)造性。
第五,知行學院計算機系又將“課題項目研發(fā)的教學模式”推廣到EDA技術(shù)、數(shù)字圖像處理、C程序設計、CAXA、多媒體技術(shù)、JAVA等課程,都收到了良好的效果。數(shù)字圖像處理期末列出了27個課題,同學們完成的“建立五官數(shù)據(jù)庫為特征人物畫像”、“運動員號碼識別處理系統(tǒng)”獨具特色。EDA出了20個課題,“三層電梯控制設計器”、“乒乓球游戲設計”、“智能函數(shù)發(fā)生器設計”、“數(shù)字鐘”等課題學生們在創(chuàng)建過程中充分發(fā)揮了創(chuàng)造性,使同學們都很有成就感。2003年以來學生完成各類課題150多項,學生的專業(yè)技能顯著提高。因此在一部分專業(yè)課程中改革教學內(nèi)容和教學模式,對學生的實踐能力、創(chuàng)新能力,培養(yǎng)應用型人才很有實際意義。
本系統(tǒng)的目標是:通過相關(guān)軟件、硬件的設計,實現(xiàn)由主機(上位機)通過單片機(下位機)通訊實現(xiàn)對石蠟車間現(xiàn)場石蠟成型機工作狀態(tài)的監(jiān)控。即利用主機的監(jiān)控軟件與單片機進行通信,以實現(xiàn)對石蠟成型機的監(jiān)控功能。本系統(tǒng)應具備如下功能:
(1) 界面設計清晰,功能齊全,實時準確的顯示石蠟成型機所有參數(shù)及狀態(tài)
(2) 上位機與下位機能進行可靠、實時的通信。
(3) 查詢歷史記錄功能
1軟硬件的選取及上下位機間通信協(xié)議的定義
基于上述目標與功能,要實現(xiàn)本系統(tǒng),首先要解決以下幾個問題:
1.1 上位機與單片機之間通信方式的選取
串行通信使用一條數(shù)據(jù)線,將數(shù)據(jù)一位一位地依次傳輸,處理的數(shù)據(jù)電壓只有一個準位,因此不容易漏失數(shù)據(jù)。串行通信端口(RS-232)是每部計算機上的必要配備,它不僅實用簡單,而且價格便宜。。因此本系統(tǒng)采用RS-232串行通信方式用于上、下位機間的通信。
1.2 監(jiān)控軟件開發(fā)平臺的選取
VisualBasic(VB)是一種可視化的、面向?qū)ο蠛筒捎檬录?qū)動方式的結(jié)構(gòu)化高級程序設計語言,可用于開發(fā)Windows環(huán)境下的各類應用程序。它簡單易學、效率高,可以高效、快速地開發(fā)Windows環(huán)境下功能強大、圖形界面豐富的應用軟件系統(tǒng)。所以,本系統(tǒng)采用VB作為監(jiān)控軟件平臺。
1.3 單片機型號以及芯片的選取
MSP430系列單片機是美國德州儀器(TI)1996年開始推向市場的一種16位具有精簡指令集的、超低功耗的混合信號處理器(Mixed SignalProcessor)。由于它具有極低的功耗、豐富的片內(nèi)外設和方便靈活的開發(fā)手段,已成為眾多單片機系列中一顆耀眼的新星。本系統(tǒng)采用MSP430單片機。
1.4 上位機與單片機之間的通信協(xié)議
Modbus 協(xié)議是應用于電子控制器上的一種通用語言。通過此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(例如以太網(wǎng))和其它設備之間可以通信。它已經(jīng)成為一通用工業(yè)標準。本系統(tǒng)采用Modbus通訊協(xié)議進行通訊,采用16位CRC校驗以保證數(shù)據(jù)傳輸?shù)臏蚀_性。
關(guān)鍵詞:vb計時器對象
vb系統(tǒng)中提供了固有計時器timer控件,通過給計時器控件的interval屬性設置不同的數(shù)值,就可以控制計時器運行的時間間隔,但該屬性是一個雙字節(jié)的整型變量,最大值只能設置為65535,即只有65535毫秒,約一分鐘多一點,在需要長時間計時時,該控件就無能為力了。本文給出用timer控件創(chuàng)建一個超長時間的計時器對象,并將其編譯成activexdll部件,供其它應用程序調(diào)用,可實現(xiàn)最大限度地利用代碼的可重用性。下面給出這個超長計時器對象的編程設計過程,供讀者參考選用。
1.編寫程序
啟動vb,新建一個activexdll工程,將工程命名為newtimer,將類模塊名class1改名為longtimer。在工程中添加一個窗體form1,在窗體上加入一個timer計時器控件timer1。打開longtimer類模塊,加入如下程序代碼:
optionexplicit
publiceventtick()''''聲明事件
privatenzasinteger
privatecsasinteger
privatem_formasform1
privatewitheventsm_timerastimer''''聲明對象類變量
''''返回enable屬性值
publicpropertygetenabled()asboolean
enabled=m_timer.enabled
endproperty
''''設置enable屬性值
publicpropertyletenabled(byvalvnewvalueasboolean)
m_timer.enabled=vnewvalue
endproperty
''''返回interval屬性值
publicpropertygetinterval()aslong
interval=m_timer.interval
endproperty
''''設置interval屬性值
publicpropertyletinterval(byvalvnewvalueaslong)
cs=0
nz=vnewvalue\65536+1
m_timer.interval=vnewvalue\nz
endproperty
''''類初始化事件
privatesubclass_initialize()
setm_form=newform1
loadm_form
setm_timer=m_form.timer1
endsub
''''類終止事件
privatesubclass_terminate()
unloadm_form
setm_timer=nothing
endsub
''''產(chǎn)生tick事件
privatesubm_timer_timer()
cs=cs+1
ifcs>=nzthen
raiseeventtick
cs=0
endif
endsub
窗體form1只用來作計時器timer1的載體,不用于顯示。
2.測試newtimer.dll
對activexdll部件進行測試,與標準的exe程序一樣,可分為單步運行或全運行。在寫完所有程序代碼后,建議用戶先用ctrl+f5進行全編譯執(zhí)行,發(fā)現(xiàn)檢查newtimer程序的語法錯誤。也可建立一個測試工程與newtimer鏈接進行測試,針對由newtimer類模塊提供的每個屬性和事件,添加測試代碼來測試它們的屬性和方法。按f8,進入單步運行狀態(tài),逐個語句察看對newtimer類模塊的調(diào)用情況。
3.編譯newtimer.dll
完成測試,排除所有錯誤后,從“文件(f)”菜單中選擇“生成newtimer.dll(k)”命令,編譯生成newtimer.dll文件。編譯成功后newtimer.dll文件將自動注冊到windows注冊表中,
4.引用newtimer.dll
引用activexdll部件同引用其他對象一樣,從“工程(p)”菜單中選擇“引用(n)”命令,打開引用窗口,從引用列表中選中newtimer對象。如果是第一次引用newtimer,則在引用窗體上單擊“游覽(b)”命令按鈕,將newtimer.dll文件添加到可引用列表框中方可使用。
5.調(diào)用newtimer.dll
在應用程序中加入下述程序代碼,實現(xiàn)參newtimer.dll的調(diào)用:
optionexplicit
dimwitheventslongtimer1aslongtimer
privatesublongtimer1_tick()
print"時間到,此處添加處理程序"
endsub
privatesubcommand1_click()
longtimer1.interval=12000‘兩分鐘
longtimer1.enabled=true
endsub
privatesubform_load()
setlongtimer1=newlongtimer
endsub
項目編號:該論文由科技廳指導性軟課題資助
近年來,計算機領(lǐng)域在全球呈現(xiàn)出快速發(fā)展的態(tài)勢,尤其是軟件業(yè),其發(fā)展速度已經(jīng)遠遠超越其他的科技領(lǐng)域,在某種程度上已經(jīng)開始引領(lǐng)著全球在經(jīng)濟、貿(mào)易、產(chǎn)業(yè)、人力等方面一系列的變革。所以,就目前的情況看,計算機相關(guān)技術(shù)的掌握及操作能力的高低是企業(yè)挑選人才的一個很重要的衡量標準,當前我國高校在計算機教學方面應該緊緊跟住當前的形勢,不斷優(yōu)化計算機軟件教學內(nèi)容,提高計算機教學質(zhì)量。
《Visual Basic程序設計》課程是計算機類各專業(yè)的一門核心基礎(chǔ)課,目的在于培養(yǎng)計算機軟件程序員、信息系統(tǒng)設計師、網(wǎng)站設計、數(shù)據(jù)庫設計師、網(wǎng)絡管理等專業(yè)方向?qū)W生基本的程序設計能力。VB語言難以理解、比較枯燥,學生在沒有相應的知識背景下,對課程缺乏興趣,甚至有恐懼心理。這就要求教師在教學中分析、摸索出一些行之有效的教學方法,才有可能激發(fā)學生對程序設計的興趣,培養(yǎng)學生的程序設計能力。
高等院校計算機科學與技術(shù)專業(yè)開設3-5門程序設計類課程可以有效地提高學生的崗位適應能力,因為學生通過學習經(jīng)典架構(gòu)的程序設計語言及現(xiàn)在流行的面向?qū)ο笤O計語言,可以掌握在不同開發(fā)環(huán)境中進行軟件開發(fā)的技能,還可以在遇到新的相同架構(gòu)的程序設計語言時觸類旁通,快速地入手。
一、當前程序設計類課程教學的現(xiàn)狀與問題
目前我國IT行業(yè)發(fā)展迅速,機遇與挑戰(zhàn)并存,企業(yè)需要大批的軟件程序設計類人才,但是很多計算機專業(yè)的學生在就業(yè)時往往出現(xiàn)技術(shù)能力不足、項目開發(fā)經(jīng)驗欠缺等問題,嚴重影響了應屆生的就業(yè)選擇。究其原因,主要是這些同學在校學習時只是大量學習基礎(chǔ)知識,并沒有達到精通的程度,而且缺乏實戰(zhàn)經(jīng)驗,很難適應高效快速的工作環(huán)境。那么又是什么原因造成這種現(xiàn)象的呢?究其原因主要有如下幾個方面:
1.教學目標不明確
目前我國高校計算機專業(yè)人才培養(yǎng)機制普遍采用“3+1”的方式,學生在校學習3年基礎(chǔ)知識,程序設計類課程一般會在第一年的下半學期開始,每學期開設1門,學時在70-90左右。3年下來學生至少掌握4-5門程序設計語言,但是由于這些課程的教育方法都是大體上雷同的,一般是教師課上講語法,演示代碼編寫,課下組織實驗課或者簡單的課程設計。學生雖然能掌握簡單的程序語言編程模式但是脫離課堂之外的內(nèi)容通常一無所知,這就往往造成“高分低能”的現(xiàn)象,學生學習程序設計類課程的目的在于掌握編程能力,可以在日后的工作中把程序設計語言作為工具一樣進行項目開發(fā),而不是把程序設計語言作為一門原理課程學習它的原理。而且程序設計語言種類繁多,各有特點,教師應當根據(jù)學生的特點有針對性地選擇適合學生的內(nèi)容進行授課,多為學生畢業(yè)后的擇業(yè)考慮。
2.教學模式和內(nèi)容相對落后
目前高校計算機專業(yè)程序設計類課程的教學模式多數(shù)都是傳統(tǒng)的教學模式,一般都是“課上代碼分析+課后練習”形式。課上講的內(nèi)容多年來沒有什么變化,學生聽得不是很明白,課下僅僅進行簡單的習題練習和課程設計顯然無法讓學生完全掌握程序設計語言的精髓,至于自主學習和實踐性探索的精神更是無法體現(xiàn),綜合運用能力難以提高。這就造成了在校能通過課程考試,但是離開學校就難以應對工作崗位要求。
二、VB課程的教學現(xiàn)狀分析
程序設計課程是一門理論性和實踐性都很強的課程。在傳統(tǒng)的教學模式中,《Visual Basic程序設計》課程采用理論教學和實踐教學相結(jié)合的方式,課時比例大致安排為1:1。理論教學過程中,教師大多數(shù)是按教材的章節(jié)前后編排順序,循序漸進進行VB程序設計思想和語言規(guī)則講解。即使采用了多媒體教學手段,也是按照教材上的章節(jié)內(nèi)容安排做成PPT課件,把書本上的案例和習題進行演示分析。在講述理論的同時,也盡可能引導學生思考,通過例題、案例的分析,培養(yǎng)學生自己分析問題的能力。但是,這樣的課堂教學往往是很抽象、枯燥的。
實踐教學是課堂教學不可缺少的環(huán)節(jié),實踐教學質(zhì)量的好壞直接影響到課程的整體效果和質(zhì)量。因此,在教學過程中一般會安排學生上機實操,進行實際的編程訓練,然后運行調(diào)試,改錯。目前實踐教學一般是在教師的指導下,由學生完成章節(jié)性的習題,布置的實訓項目一般是教材上的例題或者是課后練習題。如此實踐教學只能稱之為驗證性實驗,缺乏創(chuàng)造性。
在傳統(tǒng)的教學模式下,教師始終處于主導地位,由教師向?qū)W生介紹程序設計的思想,介紹語言規(guī)則和使用方法,學生處于被動學習狀態(tài),始終跟著老師的思路,沒有學習主動性。在教學過程中,筆者也發(fā)現(xiàn),學生學習理論知識好像并不十分困難,聽老師講解例題、習題也能夠明白。但真正讓學生動手操作解決實際問題時,卻無從下手。因此,教師受傳統(tǒng)教學模式的影響,在教學中重理論、輕實踐,課堂講授只注重教材中基本語法和語句的講解,不注重學生實際編程和程序設計能力的培養(yǎng),授課形式以教師講學生聽為主,沒有學生自主思考、設計、實現(xiàn)的過程,學生被動接受教師所授內(nèi)容,產(chǎn)生枯燥厭學的情緒,從而導致學生學習積極性不高,動手能力差,課程結(jié)束后還不能用所學知識解決實際問題。
三、改革VB課程教學的方法探討
1.教學方法要有多樣性
1 計算機專業(yè)學生程序設計能力培養(yǎng)現(xiàn)狀
程序設計能力是計算機專業(yè)學生必備的一項基本技能。程序設計能力培養(yǎng)不僅包含技能培養(yǎng),還包含學生分析問題、解決問題以及創(chuàng)新能力的培養(yǎng)。為此,各高校從大一開始就開設了高級語言程序設計課程以及后續(xù)一系列課程,以提高學生的程序設計能力。然而,即使各高校設置了豐富的程序設計能力培養(yǎng)課程,學生的程序設計水平也沒有得到大幅度提高。
當前軟件企業(yè)招不到合適的人才,計算機專業(yè)學生找不到工作,這種局面的形成歸因于學生的程序設計能力并未達到軟件企業(yè)預期的要求。調(diào)查表明,企業(yè)新招聘員工中只有15%直接來自高校畢業(yè)生,而85%來自社會招聘,因為社會招聘人員動手能力強,入職后能很快適應工作崗位。程序設計能力層次見表1,從表1可以看出,要勝任企業(yè)軟件開發(fā)工作,至少需要100000行代碼量;對于本科畢業(yè)生,至少需要有10000行代碼量,而目前計算機專業(yè)大多數(shù)學生本科4年的代碼量均在1000行,有的甚至更低。
1)程序設計類課程依然重教學,輕實踐。理論教學依然是程序設計類課程的重點,理論學時多,實踐學時少。教師花費大量時間進行語法、數(shù)據(jù)結(jié)構(gòu)概念、算法理論講解,因此也使得有針對性的實踐太少,基于相關(guān)知識和理論的案例教學不足,學生很難將所學知識點和理論用于解決實際問題。
2)實踐環(huán)節(jié)枯燥,學生無法提高學習積極性。
在傳統(tǒng)程序設計實踐教學中,教師布置3~6道作業(yè)題,學生當堂完成,然后將代碼以及運行結(jié)果截圖打包上傳到服務器,教師一一評閱。教師給出的習題往往直接針對課堂教學的知識點,無任何實際背景或故事情節(jié),實驗枯燥乏味,學生學習積極性無法提高。
3)學生多,教師少,教師無法逐個解答學生的問題。
在大學不斷擴招的情形下,師生比進一步擴大。實踐教學過程中,教師無法一一發(fā)現(xiàn)和解答每個學生的問題。學生將作業(yè)代碼和運行結(jié)果截圖通過FTP上傳至服務器,教師查看運行結(jié)果,由于學生多,教師無法逐個查看和運行學生代碼,疲于應付,因而導致實踐效果差。
4)實踐能力評價方法單一。
目前的課程考核多采用筆試,學生的實踐能力只能通過平時作業(yè)和實驗進行主觀性評價,難以激發(fā)學生自主訓練實踐能力的激情。在這樣的教學模式下,久而久之學生就失去了編程興趣,同時也降低了后續(xù)程序設計類課程的學習積極性,以致形成惡性循環(huán),學生代碼閱讀量、代碼編寫量均得不到保證,程序設計能力自然無法提高。
為了提專業(yè)提供論文寫作、寫作論文的服務,歡迎光臨dylw.net高學生的程序設計能力,文獻[1]提出一種貫穿在系列課程中的程序設計能力培養(yǎng)方法,強調(diào)在一系列課程中持續(xù)不斷地進行系統(tǒng)化訓練,采用面向?qū)I(yè)應用的分類教學,貫徹落實案例驅(qū)動、強化實訓等教學方法。文獻[2]初步將ACM模式應用到程序設計類課程實踐教學中,使學生的編程能力和解題思維能力得到有效訓練,教學效果顯著提高。文獻[3]也提出采用ACM競賽形式的程序設計能力層次化培養(yǎng)模式。這些方法都是提高學生程序設計能力的有益嘗試。
2 立體化程序設計能力培養(yǎng)模式
針對目前程序設計能力培養(yǎng)方面依然存在的一些突出問題,我們借鑒國內(nèi)外一流大學的經(jīng)驗,與學校、學院教學部門配合,探索并建立立體化程序設計能力培養(yǎng)方法。立體化程序設計能力培養(yǎng)方法如圖1所示。
1)培養(yǎng)方法和過程。
在立體化程序設計能力培養(yǎng)方法中,教學活動仍然分為理論知識講授與編程實踐,但理論課不再以單純介紹語法知識為主,而是以具體的程序案例分析為主,讓學生從案例中掌握語法。在實踐教學環(huán)節(jié)中,教師設計若干有趣的問題,學生在解決問題過程中學會相關(guān)的語法知識與編程技巧。學生編寫的程序代碼全部通過安徽大學程序自動評判系統(tǒng)進行評判,學生只需在規(guī)定時間內(nèi)完成,不再局限在實踐課堂內(nèi)完成,令學生有了足夠多的思考和動手編程時間。對于學生在編程過程中出現(xiàn)的各種問題,教師和ACM/ICPC隊員及時進行在線細致輔導。在每次作業(yè)結(jié)束后,系統(tǒng)公布所有學生的解題代碼,以供所有學生在線查看和評價。獲得優(yōu)秀評價的代碼將在系統(tǒng)上公布,以便學生有機會進一步學習優(yōu)秀代碼,增加代碼閱讀量。
2)立體化程序設計能力培養(yǎng)特點。
(1)以高級語言程序設計課程為依托。高級語言程序設計課程是學生接觸的第一門程序設計類課程,其教學與實踐對培養(yǎng)學生的編程興趣和能力起著至關(guān)重要的作用,可以幫助學生樹立自信心并步入程序設計的殿堂。
(2)課堂教學以案例為中心。程序設計=算法+數(shù)據(jù)結(jié)構(gòu)。在高級語言程序設計課程的教學過程中,我們摒棄單純講授語法的課堂教學方法,改之以程序案例為中心。在課程早期,案例以語法知識為主,逐步增加基本數(shù)據(jù)結(jié)構(gòu)和算法。整個教學過程以案例分析為中心進行語法教學,讓學生在潛移默化中學習到基本的數(shù)據(jù)結(jié)構(gòu)和算法。
(3)實踐教學以問題求解為中心。在實踐環(huán)節(jié),教師通過設置有趣的故事和實際的問題,幫助學生在求解問題過程中掌握課堂上所學的語法知識、基本數(shù)據(jù)結(jié)構(gòu)和算法。
(4)實踐環(huán)節(jié)從課內(nèi)延伸至課外。實踐環(huán)節(jié)要求學生完成指定的編程題目。與傳統(tǒng)實踐環(huán)節(jié)不同,通過在線程序自動評判平臺,學生所有的編程作業(yè)只需在教師規(guī)定的時間段內(nèi)提交,學生既可以在實踐課上完成,又可以利用課外時間完成課堂內(nèi)沒有完成的作業(yè)。將實踐課延伸到課外的優(yōu)點表現(xiàn)在:①學生有足夠的時間思考分析問題并最終通過編程解決問題;②實踐題目數(shù)量適當增加,學生的代碼量隨之增加 ,充分的課外實專業(yè)提供論文寫作、寫作論文的服務,歡迎光臨dylw.net踐可以進一步鞏固學生的理論知識基礎(chǔ)。
(5)經(jīng)驗豐富的ACM/ICPC隊員參與程序設計實踐環(huán)節(jié)輔導。ACM/ICPC隊員經(jīng)過長期的編程實踐,積累了豐富的編程經(jīng)驗,代碼能力強,因此我們利用ACM/ICPC集訓隊的優(yōu)勢資源,實行“傳幫帶”機制,對于每個學生編程過程中出現(xiàn)的問題及時給予解答,有效提高學生的編程積極性。集訓隊學生優(yōu)秀的編程水平對于低年級學生也是一種激勵,可以進一步激發(fā)其編程熱情,增加其向更高編程水平邁進的動力。
(6)學生作業(yè)采用自動化評判模式。學生提交的作業(yè)通過服務器自動評判給出程序的運行結(jié)果。自動評判模式對于編譯錯誤,會直接給出編譯出錯位置和出錯類型,方便學生自查;對于運行錯誤,包括結(jié)果錯誤和運行超時,則需要學生重新審查程序代碼。服務器自動評判能夠有效減輕教師批改作業(yè)壓力,還可以大大提高實踐教學效果。此外,服務器上保留了每個學生的做題細節(jié),包括以往的代碼、做題的數(shù)量、錯誤類型等信息,可以進一步增強學生做題的成就感和積極性。值得一提的是該自動評判平臺不僅支持高級語言程序設計,還支持C++、Java、VB和Pascal語言,因而吸引了省內(nèi)一些初中、高中學生進入該平臺進行程序設計能力實踐。
(7)優(yōu)秀代碼展示有助于增加學生代碼閱讀量。學生代碼量包括代碼編寫量和代碼閱讀量。代碼閱讀量是提高編程能力的一種重要途徑,然而在實際教學過程中常常被忽視,通過教師評閱、學生互評等方式,可以篩選出優(yōu)秀代碼并加以展示。優(yōu)秀代碼主要指具有巧妙的算法、運行時間短、內(nèi)存占用空間少、代碼格式規(guī)整、符合標準編程風格的程序代碼。展示優(yōu)秀代碼可以讓學生有機會看到彼此對于同一道題目的多種解決方案,有效促進學生之間的交流,積極提高學生的代碼閱讀量。這種相互的交流還可以進一步激發(fā)學生的創(chuàng)新靈感,在提高學生編程能力的同時也提高創(chuàng)新能力。
與傳統(tǒng)專業(yè)提供論文寫作、寫作論文的服務,歡迎光臨dylw.net程序設計能力培養(yǎng)主要依靠“教師一學生”這種二維扁平的實踐教學模式不同,立體化程序設計能力培養(yǎng)方法以案例教學為中心進行教學,以問題驅(qū)動為中心進行編程實踐,采用機器自動評判和學生互評相結(jié)合的方式進行學生編程實踐效果評價,在教師—ACM隊員—學生之間建立一個跨越時間和空間的三維立體互動教學網(wǎng)絡。這種教學方法將課內(nèi)實踐延伸至課外,將實驗室實踐延伸到實驗室外,對學生的程序設計能力進行主客觀相結(jié)合的綜合評價與即時反饋。
3 實施成效
通過一系列的研究與設計,我們構(gòu)建了立體化的程序設計能力培養(yǎng)模式,在安徽大學自主研發(fā)的自動評判系統(tǒng)基礎(chǔ)上增加了高級語言程序設計實踐模塊。自2008年以來,學生通過該自動評判平臺進行程序設計實踐呈逐年增多趨勢,多名學生參加了ACM/ICPC程序設計競賽以及省級程序設計競賽,獲得各類獎勵10余項,其中亞洲區(qū)邀請賽金獎2項、省級競賽一等獎4項。實施該培養(yǎng)方法后,學生進行自主程序設計訓練的積極性明顯提高,目前在校生中程序代碼量已經(jīng)達到10000行的有200人左右,部分畢業(yè)學生直接進入騰訊、百度等企業(yè)工作,用人單位也對畢業(yè)生的編程能力普遍表示滿意。安徽大學計算機專業(yè)學生2008—2012年提交代碼量如圖2所示。
該培養(yǎng)方法不僅提高了學生的程序設計能力,而且培養(yǎng)了學生的創(chuàng)新精神和可持續(xù)發(fā)展能力,還吸引了許多非計算機專業(yè)學生學習程序設計技術(shù)。近年來,陸續(xù)有電子學院、自動化學院、數(shù)學學院、化學化工學院、資源與環(huán)境工程學院和物理學院的學生參與到程序設計實踐中,并且取得了不錯的學習效果。例如,安徽專業(yè)提供論文寫作、寫作論文的服務,歡迎光臨dylw.net大學物理學院一名學生經(jīng)過該平臺實踐后,積極參與ACM/ICPC程序設計競賽,獲得2010年ACM/ICPC亞洲區(qū)競賽銅獎并于2012年成功考取復旦大學計算機專業(yè)研究生。
4 結(jié)語
強調(diào)師生互動、實踐反饋、學生互動足立體化程序設計能力培養(yǎng)方法的關(guān)鍵,而利用案例教學與趣味實踐是重要途徑。實踐證明,立體化程序設計能力培養(yǎng)方法在提高學生編程水平和算法能力方面具有較大優(yōu)勢,取得了顯著成效。今后我們將進一步注重教師與學生互動,探索更多的師生之間、學生之間互動手段,不斷提高學生編程素養(yǎng)和創(chuàng)新水平。