計算機編程技術(shù)學(xué)習(xí)范文

時間:2023-09-22 17:21:26

導(dǎo)語:如何才能寫好一篇計算機編程技術(shù)學(xué)習(xí),這就需要搜集整理更多的資料和文獻,歡迎閱讀由公務(wù)員之家整理的十篇范文,供你借鑒。

計算機編程技術(shù)學(xué)習(xí)

篇1

摘要:復(fù)變函數(shù)論是理學(xué)專業(yè)信息與計算科學(xué)的一門基礎(chǔ)課。通過學(xué)習(xí)本課程,能夠培養(yǎng)學(xué)生嚴(yán)謹(jǐn)而縝密的數(shù)理邏輯能力和較強的動手操作能力。本文主要分析了復(fù)變函數(shù)論的課程特點和主要教學(xué)問題,從妥善處理教學(xué)內(nèi)容、增加課外上機操作項目、嘗試多種教學(xué)手段、改革考核方式和改革教學(xué)方法五個方面對復(fù)變函數(shù)課程教學(xué)進行改革探索,提高復(fù)變函數(shù)課的教學(xué)質(zhì)量。

關(guān)鍵詞:復(fù)變函數(shù);教學(xué)改革;教學(xué)質(zhì)量

中圖分類號:G642.0 文獻標(biāo)志碼:A 文章編號:1674-9324(2017)13-0091-02

一、引言

復(fù)變函數(shù)是信息與計算科學(xué)專業(yè)的一門專業(yè)主干課程,與數(shù)學(xué)分析息息相關(guān)。該課程主要研究具單復(fù)變量的復(fù)值可微函數(shù)的性質(zhì),研究對象為全純函數(shù),即復(fù)解析函數(shù)。復(fù)變函數(shù)也稱為復(fù)分析,其推廣和發(fā)展了數(shù)學(xué)分析的相關(guān)內(nèi)容,與數(shù)學(xué)分析有許多相似之處,尤其是在邏輯結(jié)構(gòu)方面。

二、復(fù)變函數(shù)課程特點和主要教學(xué)問題

1.課程特點。根據(jù)復(fù)變函數(shù)的理論體系和信息與計算科學(xué)專業(yè)設(shè)置特點,筆者所在學(xué)校為復(fù)變函數(shù)課安排了48個學(xué)時,其中理論教學(xué)40個學(xué)時、上機教學(xué)8個學(xué)時。由于學(xué)時限制,筆者沒能全部講完各板塊內(nèi)容,而是精選了信息與計算科學(xué)專業(yè)的必學(xué)內(nèi)容,具體為:復(fù)數(shù)與復(fù)變函數(shù)、解析函數(shù)、復(fù)變函數(shù)的積分、解析函數(shù)的級數(shù)表示、留數(shù)及其應(yīng)用、共形映射、傅里葉變換和拉普拉斯變換。從教學(xué)實踐中,筆者總結(jié)出信息與計算科學(xué)專業(yè)復(fù)變函數(shù)論課程存在以下特點。(1)抽象性。復(fù)變函數(shù)的研究方法實際上是數(shù)學(xué)分析研究方法的延續(xù),主要目的是建立具有優(yōu)良性質(zhì)的解析函數(shù)和研究解析函數(shù)的主要方法。研究部分多值函數(shù),是復(fù)變函數(shù)的一個內(nèi)容,同時也是復(fù)變函數(shù)課程的一個難點。復(fù)變函數(shù)應(yīng)用的廣泛性及其在后續(xù)課程中的基礎(chǔ)性,是復(fù)變函數(shù)論的一個重要方面[1]。它是一門公認(rèn)的抽象性很強的學(xué)科,概念和理論較多,更加復(fù)雜、難懂。(2)實用性。復(fù)變函數(shù)源于實踐,是一門具有系統(tǒng)理論體系的學(xué)科,作為強大的工具被廣泛應(yīng)用在自動化控制、理論物理、彈性力學(xué)、流體力學(xué)、空氣動力學(xué)、語音識別與合成、信號分析與圖像處理、地震勘測、通信與控制及電子工程等眾多自然科學(xué)領(lǐng)域[2]。

2.主要教學(xué)問題。(1)教學(xué)內(nèi)容處理不妥當(dāng)。復(fù)變函數(shù)雖然是一門應(yīng)用廣泛的學(xué)科,但并非各個板塊的內(nèi)容都必須精講細(xì)講。在實際教學(xué)過程中,筆者發(fā)現(xiàn),所教授的內(nèi)容沒能最大限度地挖掘本專業(yè)學(xué)生的潛能。在授課過程中,一方面,注重公式的前因后果和推導(dǎo)過程,對定理的證明過程講得精細(xì),但因?qū)W生已修過數(shù)學(xué)分析,而數(shù)學(xué)分析中的許多推理方法可直接推廣到復(fù)變函數(shù)論中,讓學(xué)生對繁雜的推理過程產(chǎn)生一定的抵觸情緒。另一方面,沒能充分展示各個板塊內(nèi)容在實際生活中的應(yīng)用。這主要是因為本課程只有48個課時,在這么短的時間內(nèi)講授每個板塊的知識應(yīng)用,不現(xiàn)實。(2)課程實踐環(huán)節(jié)不突出。筆者所在學(xué)校的復(fù)變函數(shù)課雖有8個課時的上機訓(xùn)練時間,但這遠(yuǎn)遠(yuǎn)不夠。復(fù)變函數(shù)是一門系統(tǒng)學(xué)科,可廣泛應(yīng)用于實踐中,但內(nèi)容抽象,因此需要借用相關(guān)數(shù)學(xué)軟件如MATLAB來幫助學(xué)生理解相關(guān)知識點。然而,由于上機課時非常少,很難充分利用MATLAB來展示各板塊內(nèi)容。(3)教學(xué)手段不夠多元。如今,微課、慕課、翻轉(zhuǎn)課堂等教學(xué)方式逐漸改變了傳統(tǒng)教學(xué)方式,但多媒體+黑板板書的教學(xué)方式仍占主導(dǎo)地位,這或多或少地影響了教學(xué)效果,減低了學(xué)生的學(xué)習(xí)興趣。(4)課程考核方式不夠理想。復(fù)變函數(shù)多以期末考試為主要考核方式,即學(xué)生的總評成績由期末卷面成績*70%加平時成績*30%構(gòu)成。這一成績構(gòu)成方式較為單一,沒有考慮學(xué)生其他學(xué)習(xí)因素。(5)學(xué)生學(xué)習(xí)興趣不濃。在授課過程中,筆者發(fā)現(xiàn)學(xué)生的學(xué)習(xí)興趣不夠濃烈,主要在于這門課本身比較抽象,再加上教師在教學(xué)中并沒有充分利用各種教學(xué)方式,使得學(xué)生普遍認(rèn)為這門課枯燥無味。而有些學(xué)生開始時能跟上教學(xué)步伐,但越到后面就越聽不懂,而后就慢慢地失去了學(xué)習(xí)熱情。

三、改革措施

1.妥善理教學(xué)內(nèi)容。信息與計算科學(xué)專業(yè)的培養(yǎng)目標(biāo)是:培養(yǎng)具有良好的數(shù)學(xué)基礎(chǔ)和數(shù)學(xué)思維能力,掌握信息與計算數(shù)學(xué)的基本理論、方法與技能,能運用基本理論、方法與技能解決信息技術(shù)或科學(xué)與工程計算中的實際問題的應(yīng)用型高級專門人才;同時滿足學(xué)生個性發(fā)展多樣化的需要,分流培養(yǎng)學(xué)術(shù)型人才。因此,在講授復(fù)變函數(shù)這門課時,必須考慮本專業(yè)的培養(yǎng)目標(biāo)。在授課過程中,筆者的具體做法如下:(1)精講緒論內(nèi)容。緒論是第一次課,一定要把復(fù)變函數(shù)論的來龍去脈、研究對象、研究方法及其與所學(xué)課程的聯(lián)系、對后續(xù)課程的作用等內(nèi)容精講,讓學(xué)生有個初步印象。(2)由于第一章復(fù)數(shù)部分學(xué)生在高中已學(xué)過,但大多只是初步了解,因此在講授這部分內(nèi)容時,要充分利用現(xiàn)代化的教學(xué)方式將把復(fù)數(shù)的重要地位凸顯出來,而對與數(shù)學(xué)分析中相似的內(nèi)容如極限與連續(xù)等,讓學(xué)生課前自學(xué),課堂中主要講授這些內(nèi)容與數(shù)學(xué)分析中相關(guān)內(nèi)容的不同之處。(3)重點講授解析函數(shù)、復(fù)變函數(shù)的積分、解析函數(shù)的級數(shù)表示、留數(shù)及其應(yīng)用、傅里葉變換和拉普拉斯變換,對繁雜的定理證明,只講授證明思路,讓學(xué)生課后嘗試證明過程。(4)引入具體實例,讓學(xué)生感受到復(fù)變函數(shù)在實際中的具體應(yīng)用,激發(fā)學(xué)習(xí)興趣。

2.增加課外上機操作項目。培養(yǎng)和提高學(xué)生的動手操作能力,是信息與計算科學(xué)專業(yè)的一個培養(yǎng)目標(biāo),也是復(fù)變函數(shù)論的一個主要教學(xué)目的。筆者所在學(xué)校雖然對復(fù)變函數(shù)論設(shè)置了8個課時的上機操作,但課時比較少,很難達(dá)到明顯的教學(xué)效果,為此,筆者嘗試增設(shè)了復(fù)變函數(shù)的積分、復(fù)變函數(shù)的泰勒展開、復(fù)變函數(shù)的圖形、有理函數(shù)的部分分式展開式等實驗項目,借助學(xué)校網(wǎng)絡(luò)教學(xué)平臺,把相關(guān)實驗內(nèi)容制作成PPT上傳到網(wǎng)絡(luò)教學(xué)平臺,學(xué)生可以在規(guī)定的時間內(nèi)學(xué)完相關(guān)內(nèi)容,完成相應(yīng)的實驗,并將這部分內(nèi)容作為學(xué)生考核的一個組成部分。如果學(xué)生有問題,可以在網(wǎng)絡(luò)教學(xué)平臺中提問,筆者根據(jù)實際情況進行解答。

3.運用多種教學(xué)手段。除了使用傳統(tǒng)的多媒體+黑板板書和網(wǎng)絡(luò)教學(xué)平臺外,對有些內(nèi)容,還可以嘗試制作微課,讓學(xué)生可以課后自學(xué),激發(fā)學(xué)習(xí)興趣。

4.改革考核方式。由于信息與計算科學(xué)專業(yè)的培養(yǎng)目標(biāo)是培養(yǎng)應(yīng)用型高級專門人才和學(xué)術(shù)型人才,所以復(fù)變函數(shù)論這門課應(yīng)嘗試運用多種考核方式,共同構(gòu)成學(xué)生的期末總評成績。例如,考核方式主要有:平時作業(yè)成績(課后習(xí)題作業(yè)、課堂考勤情況)、增設(shè)課外實驗項目完成情況、隨堂上機操作實驗成績、期末考試卷面成績、期末上機考試成績等。其中,平時作業(yè)完成情況體現(xiàn)了學(xué)生的學(xué)習(xí)態(tài)度及對所學(xué)知識的理解和掌握情況;增設(shè)課外實驗項目和隨堂上機操作實驗項目的表現(xiàn),則體現(xiàn)出學(xué)生運用知識解決實際問題的能力;期末考試情況體現(xiàn)出學(xué)生對所學(xué)知識的整體把握程度;期末上機操作完成情況,體現(xiàn)了學(xué)生綜合運用知識解決實際問題的能力。因此,利用期末一張試卷的完成情況來判別學(xué)生對整門課程的掌握程度有失偏頗,不能真實地反映出學(xué)生的多種能力。采用多種考核方式,不僅能夠從多方面真實地反映出學(xué)生的學(xué)習(xí)情況和對知識的掌握情況,而且能夠充分展示學(xué)生的綜合能力。

5.改革教學(xué)方法。為了充分激發(fā)學(xué)生的學(xué)習(xí)興趣,可運用多媒體作為輔助教學(xué),制作微課,充分利用網(wǎng)絡(luò)教學(xué)平臺,采用多種教學(xué)方法,如類比法、問題驅(qū)動法、導(dǎo)入法等。并且,盡可能地簡化理論推導(dǎo)過程,充分調(diào)動學(xué)生情緒,讓他們樂于自主學(xué)習(xí),并能切身感受學(xué)習(xí)復(fù)變函數(shù)的樂趣。

四、結(jié)語

復(fù)變函數(shù)是信息與計算科學(xué)專業(yè)的基礎(chǔ)課,通過學(xué)習(xí)該課程,能夠培養(yǎng)學(xué)生嚴(yán)謹(jǐn)而縝密的數(shù)理邏輯能力和較強的動手操作能力。如何提高復(fù)變函數(shù)的教學(xué)質(zhì)量,是許多教師面臨的問題。筆者根據(jù)實際教學(xué)體驗,從妥善處理教學(xué)內(nèi)容、增加n外上機操作項目、嘗試多種教學(xué)手段、改革考核方式和改革教學(xué)方法等方面進行了研究與實踐,得出一些見解,以期對提高復(fù)變函數(shù)的教學(xué)質(zhì)量起到一定的作用。

參考文獻:

[1]朱福國,賈秀梅,張飛羽,王汝軍.復(fù)變函數(shù)精品課程建設(shè)的探索與實踐[J].河西學(xué)院學(xué)報,2015,31(5):105-110.

[2]史秀波,張瓊芬,林亮.復(fù)變函數(shù)與積分變換教學(xué)改革探討[J].教育教學(xué)論壇,2012,(57):207-209.

篇2

關(guān)鍵詞:計算機應(yīng)用;Delphi編程技術(shù);教學(xué)方法

中圖分類號:TP311.13

1 問題的提出

Delphi 是可視化應(yīng)用程序開發(fā)環(huán)境、可重用性面向?qū)ο缶幊陶Z言、快速編譯器和數(shù)據(jù)庫技術(shù)的完美結(jié)合。它具有功能強大、運行速度快、易于學(xué)習(xí)和使用以及開發(fā)迅速等特點。在高校計算機應(yīng)用及相關(guān)專業(yè)高年級的學(xué)生中開設(shè)《Delphi 編程技術(shù)》這門課程能培養(yǎng)學(xué)生應(yīng)用可視化的開發(fā)工具,進行有關(guān)信息系統(tǒng)開發(fā)的能力。但是,如果《Delphi 編程技術(shù)》的教學(xué)采用計算機類課程的傳統(tǒng)教學(xué)模式——先由教師講授知識要點,然后隔段時間讓學(xué)生在機房進行實驗,學(xué)生往往會覺得這門課程抽象、枯燥,就如體育教師在教室里教游泳的動作,事倍功半,影響教學(xué)效果。因此,本文介紹使用多媒體設(shè)備,選擇一些生動典型的實例,再輔以相應(yīng)的練習(xí),讓學(xué)生在邊學(xué)習(xí)邊實踐中熟悉Delphi開發(fā)環(huán)境和掌握Delphi編程技術(shù),本文講述筆者使用實例教學(xué)法中的一些體會。

2 實例教學(xué)的目的:引導(dǎo)學(xué)生的學(xué)習(xí)興趣,發(fā)揮學(xué)生的主體作用。

教學(xué)中教是手段,學(xué)是主體,教是為學(xué)服務(wù)的,追求學(xué)生最佳的學(xué)習(xí)效果是教學(xué)的目的。要產(chǎn)生好的學(xué)習(xí)效果,必須引導(dǎo)學(xué)生的學(xué)習(xí)興趣,增強學(xué)生的主體意識,發(fā)揮學(xué)生的主體作用,引導(dǎo)學(xué)生主動、積極地參與教學(xué)過程,激發(fā)學(xué)生的求知欲望,使其覺得學(xué)習(xí)這門課程是自己的需求。實例教學(xué)法利用實例把一些抽象的概念直觀化,Delphi 友好的界面也易于引起學(xué)生的學(xué)習(xí)興趣,在這樣的條件下,輔以一些生動、活潑,貼近學(xué)生生活,易于被學(xué)生接受的實例,如學(xué)生選課管理系統(tǒng)、學(xué)生成績管理系統(tǒng)、簡單的游戲制作等,讓學(xué)生覺得該課程不僅有趣而且實用性強,學(xué)生就愿意通過自我學(xué)習(xí),自我實踐把知識引向縱深。

另一方面,計算機應(yīng)用科學(xué)技術(shù)日新月異,這要求計算機應(yīng)用及相關(guān)專業(yè)的學(xué)生必須具備舉一反三、觸類旁通的能力,從這個意義上說,在教學(xué)過程中開發(fā)學(xué)生的自主學(xué)習(xí)的潛力,學(xué)會學(xué)習(xí),意義更重大、更深遠(yuǎn)。那么,怎么開發(fā)學(xué)生自主學(xué)習(xí)的潛力,讓學(xué)生學(xué)會學(xué)習(xí)呢?要做到這點,在課堂上就實例學(xué)實例就不夠了,本人試著從以下幾方面入手培養(yǎng)學(xué)生。

首先,由于課時的限制,課堂上不可能介紹Delphi所有控件的功能和屬性,一般同種類型的控件,選擇4至5個詳細(xì)介紹,其余的則引導(dǎo)學(xué)生通過閱讀課本和參考書進行自我學(xué)習(xí)。例如,Delphi中有十幾個常用組件:Label、Edit、Memo、Button、CheckBox、RadioButton、ListBox、ComboBox、ScrollBar、GroupBox、RadioGroup等,全部詳細(xì)介紹既費時也沒必要,只要選擇其中幾個有代表性的詳細(xì)介紹,如詳細(xì)介紹Edit、Memo、ListBox、ComboBox、ScrollBar,其余組件稍作提示后讓學(xué)生自學(xué)即可。

第二,《Delphi 編程技術(shù)》是實踐性很強的課程,要特別注重學(xué)生的自我動手實踐,所以講解完實例,要相應(yīng)地給學(xué)生布置一個練習(xí)。練習(xí)不能是讓學(xué)生把課堂上的實例照原樣實現(xiàn)一遍,練習(xí)既要有具體的要求,又要留給學(xué)生自我發(fā)揮的空間,鼓勵學(xué)生充分應(yīng)用想象力和創(chuàng)造力完成。例如常用組件的功能、屬性及事件介紹完后,可要求學(xué)生用這些組件實現(xiàn)輸入時間(包括年、月、日、時、分、秒、星期),然后顯示時間的練習(xí),強調(diào)輸入時間的方式是否多樣化,界面布局是否友好是該練習(xí)的成績的依據(jù)。至于怎么布局,用什么控件進行輸入則讓學(xué)生自己發(fā)揮,這樣,學(xué)生會以完成自己的作品的態(tài)度來完成練習(xí),以增加學(xué)生學(xué)習(xí)的成就感。最后,把優(yōu)秀的作品拿出來讓大家共同欣賞,讓所有學(xué)生都從中有所收獲。

第三,通過學(xué)習(xí)Delphi引導(dǎo)學(xué)生強化計算機英語的學(xué)習(xí),為今后的進一步學(xué)習(xí)打下堅實的基礎(chǔ)。Delphi中的提示信息是英文信息,要想讓學(xué)生更好地進行自主學(xué)習(xí),將來熟練地使用這項編程技術(shù),熟悉這些英文提示很重要,所以,在課堂上有意識地引導(dǎo)學(xué)生,要學(xué)生用心認(rèn)識這些英文信息,并最終能利用這些英文信息,減少編程過程中對教師的依賴性,增強獨立編程的能力。

第四,強調(diào)學(xué)生在學(xué)習(xí)過程中要注意Delphi編程技術(shù)是“一種能自我發(fā)展的編程技術(shù)”。一方面,隨著Delphi版本的不斷更新,Delphi的新功能和新特點不斷出現(xiàn);另一方面,學(xué)生可以方便地通過Internet下載一些原系統(tǒng)沒有但別人編寫好的方便實用功能強大的控件,同時,鼓勵學(xué)生自己編寫一些自定義構(gòu)件供自己使用。

第五,為了有利于發(fā)揮學(xué)生的主體作用,要積極培植師生間融洽的情感氣氛,營造生動活潑的課堂氛圍。鼓勵學(xué)生從多種途徑去尋求解決問題的方法,讓他們平等地參與討論,自我解決問題。

3 實例教學(xué)法必須精心設(shè)計實例

是否精心設(shè)計實例關(guān)系到實例教學(xué)法能否成功。教學(xué)過程中,本人對實例的設(shè)計基本上貫徹三個原則。

第一,實例內(nèi)容應(yīng)循序漸進、由淺入深。根據(jù)這個原則,本人將教學(xué)過程劃分為四個階段:①介紹Delphi的集成開發(fā)環(huán)境、各種控件的使用和集成調(diào)試器。②介紹如何用Delphi開發(fā)多媒體應(yīng)用程序。③介紹如何用Delphi開發(fā)數(shù)據(jù)庫應(yīng)用程序。④介紹如何開發(fā)自定義構(gòu)件及開發(fā)Internet應(yīng)用程序等。每個階段輔以若干實例,在講解實例的過程中列出該實例的技術(shù)要點及通過實例要學(xué)習(xí)的知識點。

第二,實例內(nèi)容能夠基本涵蓋Delphi的各類控件的功能與特征。在四個階段的課程中,每個階段都有學(xué)習(xí)的側(cè)重點,課堂上不可能也沒必要詳細(xì)介紹全部控件,在教學(xué)過程中要把控件分類,以幾個控件輻射一類控件。當(dāng)然,最后可以讓學(xué)生動手制作一個簡單但能綜合應(yīng)用各種控件的數(shù)據(jù)庫系統(tǒng),如學(xué)生成績管理系統(tǒng),該練習(xí)既包含了窗體、菜單、面板組件、快速按鈕組件以及其他一些常用組件,又使用了各種對話框組件及基本的數(shù)據(jù)庫組件。

第三,圍繞教學(xué)目的設(shè)計典型、有代表性的實例。每一堂課都有教學(xué)目的,課堂的教學(xué)內(nèi)容應(yīng)圍繞著教學(xué)目的展開,實例教學(xué)法也不例外。所以,在備課時首先要考慮的是教學(xué)目的,即這堂課要求學(xué)生學(xué)習(xí)哪些控件的功能及特征,通過這些控件學(xué)生又能自己學(xué)習(xí)到哪些控件的功能及特征,根據(jù)教學(xué)目的,去精心設(shè)計典型、有代表性的實例。只有這樣,每堂課的學(xué)習(xí)才能體現(xiàn)其側(cè)重點,學(xué)生學(xué)習(xí)時才能有針對性、有目的性。例如,在介紹用Delphi開發(fā)多媒體應(yīng)用程序時,只要兩個實例,一個實例學(xué)習(xí)利用Delphi進行多媒體動畫制作,另一個實例學(xué)習(xí)利用Delphi實現(xiàn)聲音,有了這樣明確的目的性,用不多的課時就可以讓學(xué)生學(xué)會用Delphi開發(fā)多媒體應(yīng)用程序。

篇3

【關(guān)鍵詞】計算機 軟件開發(fā) JAVA編程語言 應(yīng)用價值

JAVA編程語言最初是一種專門為計算機系統(tǒng)設(shè)置的產(chǎn)品,但是隨著互聯(lián)網(wǎng)技術(shù)和計算機軟件技術(shù)的發(fā)展和進步,JAVA編程語言逐漸演變、改革和發(fā)展,最終成為計算機軟件開發(fā)中的編程語言,而且為互聯(lián)網(wǎng)的服務(wù)性能的提升起到了至關(guān)重要的作用。而且據(jù)目前的計算機編程的發(fā)展形式看來,國內(nèi)的計算機編程技術(shù)還有很大的發(fā)展和進步空間,因此本文主要針對計算機軟件開發(fā)中JAVA編程語言的應(yīng)用價值進行分析和討論,主要包括JAVA編程語言的特點以及在計算機軟件開發(fā)中的應(yīng)用,其中主要是應(yīng)用價值部分。

1 計算機軟件開發(fā)中JAVA編程語言的特點

盡管JAVA編程語言在我國已經(jīng)得到了一定的發(fā)展,而且也占有了很大的市場。但是仍然有很多人對JAVA編程語言不夠了解,在本文的開始部分主要來討論計算機軟件開發(fā)中JAVA編程語言的主要特點。

1.1 JAVA編程語言的語法相對來說都比較簡單

JAVA語言與C++語言彼此的語法結(jié)構(gòu)等都非常接近,相對于其他程序用語言來說都比較簡單。在計算機軟件開發(fā)中語言結(jié)構(gòu)及語言是指一種能夠?qū)⒏鞣N語言的每個部分有機地結(jié)合起來,進行一定的處理之后以一種特定程序的形式顯示出來的。但是JAVA編程語言又是區(qū)別于C++語言的,它是C++語言的更高級的形式,JAVA編程語言是在c語言和C++語言的基礎(chǔ)上形成的,是它們的更高級形式,在技術(shù)上也更加成熟,運用的語法結(jié)構(gòu)也就相對比較簡單一些。這對于計算機技術(shù)的發(fā)展以及計算機軟件開發(fā)技術(shù)的提升都是很有幫助的,而且對于學(xué)習(xí)和研究JAVA編程語言的學(xué)生和研究者來說都會更方便!

1.2 JAVA編程語言是一種有對象型的語言

JAVA編程語言是一種有對象型的語言是區(qū)別于其他語言來說的。具體來說就是指編程語言在編寫計算機源程序時會將一個程序分為幾個不同的模塊,但是JAVA編程語言不同于其他各種類型的語言的就是它能夠智能識別信息,而且每個模塊的建立都是根據(jù)程序的具體需求的,都有自己的服務(wù)對象,這樣不僅簡化了編程步驟,而且大幅度地提升了系統(tǒng)和程序的運行、工作效率??偟膩碚f就是在JAVA編程語言技術(shù)的模式下整個系統(tǒng)和程序會更容易編寫、維護以及運行!

1.3 JAVA編程語言具有較好的可移植性

JAVA編程語言與其他編程語言相比另一個不可比擬的優(yōu)勢就是JAVA編程語言具有較好的可移植性。簡單來說就是JAVA編程語言能夠在網(wǎng)站上比較方便地下載和使用各種資源。相對于其他的編程語言來說JAVA編程語言能夠更加方便計算機用戶使用網(wǎng)絡(luò)資源,包括各種圖片、視頻資料等,這個特點對于計算機的遠(yuǎn)程資料傳輸有很大的幫助。這就是JAVA編程語言的可移植性。

2 計算機軟件開發(fā)中JAVA編程語言的具體應(yīng)用

2.1 能夠設(shè)計出動態(tài)的畫面,而且還能夠調(diào)用圖像和圖形

用戶在計算機網(wǎng)絡(luò)上觀看的各種視頻以及各種動態(tài)圖片都是根據(jù)JAVA編程語言設(shè)計制作的,這就是JAVA編程語言在計算機軟件開發(fā)中的最重要的應(yīng)用,如果沒有這種編程語言計算機呈現(xiàn)給我餓們的將只是一個個不銜接的圖片,甚至是沒有色彩和圖像的,這樣計算機軟件開發(fā)就失去了它的真實意義。因此必須要保證JAVA編程語言在計算機軟件開發(fā)中的正常運用,只有這樣計算機的正常工作和服務(wù)才能得到保障!

2.2 能夠?qū)⒒ヂ?lián)網(wǎng)分模塊設(shè)置,更方便人們查找

互聯(lián)網(wǎng)給大家生活帶來的方便自然不言而喻,人們可以迅速從海量的網(wǎng)絡(luò)信息中找到適合自己的,這主要就是JAVA編程語言程序的功勞,在討論JAVA編程語言的特點時就已經(jīng)提到過JAVA編程語言能夠?qū)⑿畔⒎帜K處理,在具體的應(yīng)用過程中體現(xiàn)出來就是將互聯(lián)網(wǎng)各項功能信息分模塊收集和處理,每個版塊不同,服務(wù)對象不同,信息自然也就不同,人們根據(jù)自己的需求篩選出對自己最有利的信息,這同時也是互聯(lián)網(wǎng)的一大功能和受歡迎的主要原因。這就要求在計算機軟件開發(fā)過程中必須要嵌入JAVA編程語言,使得計算機和網(wǎng)絡(luò)信息能夠以更加清晰和明確的方式呈現(xiàn)在大眾面前!

2.3 能夠設(shè)計交互操作

在JAVA編程語言程序的運行下計算機的軟件開發(fā)技術(shù)能夠設(shè)計交互操作,具體來說就是能夠選擇性地控制計算機軟件開發(fā)的流程,包括定向和不定向交互,選擇交互等,將各種信息和資源進行交換和處理,實現(xiàn)計算機軟件開發(fā)的可控制性和可視化,進而保證計算機運行時候的可操作性,這個應(yīng)用價值就在于如果計算機軟件沒有這個功能,人們就無法控制計算機,那么計算機就失去了它存在和使用的意義。因此在計算機軟件開發(fā)過程中必須要引進JAVA編程語言。

以上只是幾個JAVA編程語言在計算機軟件開發(fā)中的重要應(yīng)用,實際上JAVA編程技術(shù)和計算機軟件開發(fā)是相輔相成,相互制約的關(guān)系,缺少了任何一個計算機都無法正常運行,但是需要注意的是在JAVA編程語言運用的過程中必須要根據(jù)特定的版本和領(lǐng)域,選擇特定的JAVA程序,避免不必要的麻煩,保證計算機軟件的運行穩(wěn)定、靈活和完整,進而保證計算機網(wǎng)絡(luò)的正常運作!

3 小結(jié)

綜合以上的分析和討論可以很明顯地看出計算機軟件開發(fā)和JAVA編程語言是兩個相輔相成的技術(shù)和程序,缺少了任何一個計算機都不能正常運行。JAVA編程語言在計算機軟件開發(fā)中的應(yīng)用價值正在隨著技術(shù)的進展不斷增大,而且目前國內(nèi)很多投資者很看好JAVA編程技術(shù)在國內(nèi)計算機和信息技術(shù)智能化行業(yè)的應(yīng)用,相信在不久的將來JAVA編程語言的技術(shù)水準(zhǔn)及其在計算機軟件開發(fā)中的應(yīng)用價值會不斷增加!期待JAVA編程語言在我國計算機行業(yè)的新明天!

參考文獻

[1]田智.基于計算機軟件開發(fā)的JAVA編程語言分析[J].硅谷,2014(19):59-59,37.

[2]路帥.計算機軟件開發(fā)中JAVA編程語言的應(yīng)用分析[J].中文信息,2014(08):2.

[3]曲志鵬.關(guān)于計算機軟件開發(fā)的JAVA編程語言研究[J].消費電子,2014(06):196-196.

作者簡介

劉芳(1981-),女,包頭市人。大學(xué)本科學(xué)歷。現(xiàn)為內(nèi)蒙古電子信息職業(yè)技術(shù)學(xué)院高級講師。主要研究方向為計算機科學(xué)與技術(shù)。

篇4

論文摘要:在建構(gòu)式教育理論的指導(dǎo)下,以就業(yè)需求為目標(biāo),針對數(shù)據(jù)結(jié)構(gòu)教學(xué)中教與學(xué)目標(biāo)不明、學(xué)習(xí)信心和動力不足、編程基礎(chǔ)薄弱等問題,提出建構(gòu)式的數(shù)據(jù)結(jié)構(gòu)教學(xué)方法,在實際教學(xué)中取得較好的教學(xué)效果,這些措施也可作為其他計算機專業(yè)課程教學(xué)的參考。

近年來,在產(chǎn)業(yè)界急需大量軟件開發(fā)人員的情況下,普通本科院校計算機專業(yè)學(xué)生的就業(yè)率持續(xù)走低。網(wǎng)絡(luò)、報紙等媒體對計算機本科教育現(xiàn)狀多有批評,甚至出現(xiàn)了大學(xué)不如培訓(xùn)公司的極端觀點,嚴(yán)重影響了學(xué)生對專業(yè)課程的學(xué)習(xí)興趣、動力和信心。數(shù)據(jù)結(jié)構(gòu)是計算機專業(yè)的核心基礎(chǔ)課程,上承程序設(shè)計語言、離散數(shù)學(xué),下啟操作系統(tǒng)、編譯原理等課程,其重要性不言而喻。一方面,數(shù)據(jù)結(jié)構(gòu)學(xué)科具有難度大、抽象層次高、概念繁雜等特點,學(xué)生很難掌握,更不要說將抽象理論與就業(yè)實踐需求相結(jié)合。另一方面,國內(nèi)主流數(shù)據(jù)結(jié)構(gòu)教材和相應(yīng)的傳統(tǒng)教學(xué)模式側(cè)重于培養(yǎng)學(xué)生的計算機學(xué)科基礎(chǔ)理論素養(yǎng),而將如何通過組織數(shù)據(jù)結(jié)構(gòu)教學(xué)活動積極推動就業(yè)的問題留給了任課教師[1]。這造成了學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的目標(biāo)不明、信心和動力不足。筆者面向就業(yè)需要明確了數(shù)據(jù)結(jié)構(gòu)的兩大主要教學(xué)目標(biāo),并在實際教學(xué)過程中實踐建構(gòu)式教育理論,嘗試解決學(xué)生對專業(yè)認(rèn)識不清、學(xué)習(xí)興趣不足、編程基礎(chǔ)薄弱等問題。一些做法得到了學(xué)生的認(rèn)可和配合,成功地激發(fā)了學(xué)生的學(xué)習(xí)主動性、在一定程度上培育了學(xué)生的創(chuàng)新精神。

1面向就業(yè)需求的數(shù)據(jù)結(jié)構(gòu)教學(xué)目標(biāo)

教育要服務(wù)于社會生產(chǎn)需求。數(shù)據(jù)結(jié)構(gòu)教學(xué)也必須緊扣這一根本目標(biāo)。本節(jié)從滿足就業(yè)需要的角度闡明了數(shù)據(jù)結(jié)構(gòu)教學(xué)的兩個主要目標(biāo):

1) 培養(yǎng)超越具體程序設(shè)計語言技巧的編程技術(shù)。

現(xiàn)階段是一個傳統(tǒng)的生產(chǎn)生活方式迅速向電子化、信息化轉(zhuǎn)變的時期。人們需要開發(fā)和維護更多、規(guī)模更大的計算機系統(tǒng)來滿足生產(chǎn)和生活的需要[2]。這就決定了具有熟練編程技術(shù)的程序員在很長時期內(nèi)都將受到產(chǎn)業(yè)界的青睞。大學(xué)對學(xué)生編程技術(shù)的培養(yǎng)始于程序設(shè)計語言的教學(xué),如C語言,Java語言等。但是現(xiàn)今編程語言繁多,各種新概念層出不窮,常常出現(xiàn)學(xué)生無所適從或者質(zhì)疑某門語言課程已經(jīng)過時無用的現(xiàn)象。甚至很多教師也在爭論講授何種編程語言。筆者看來掌握編程技術(shù)(而不僅僅是語言),回歸編程的本質(zhì)問題更加重要,無謂地追趕時髦不可取。作為編程語言課程的后續(xù),數(shù)據(jù)結(jié)構(gòu)教學(xué)的重要目標(biāo)就是幫助學(xué)生理解編程的本質(zhì)、鍛煉編程技術(shù)以及學(xué)習(xí)提高編程技術(shù)的方法。

2) 培養(yǎng)圍繞復(fù)用的軟件開發(fā)方式。

隨著軟件規(guī)模的日益增大,軟件開發(fā)模式逐漸從“從無到有”的模式過渡到“從有到有”的模式,即復(fù)用現(xiàn)有的豐富的軟件資產(chǎn),開發(fā)新的應(yīng)用系統(tǒng)。事實上,復(fù)用的思想已經(jīng)被廣泛的用于軟件開發(fā)實踐之中,從各種各樣的程序庫、軟件開發(fā)包、軟件構(gòu)件、Web服務(wù)等各種可復(fù)用資產(chǎn)已經(jīng)簡化了軟件開發(fā)的難度、提高了軟件開發(fā)的效率也極大地改變了軟件開發(fā)的模式。數(shù)據(jù)結(jié)構(gòu)學(xué)科本身就是對軟件復(fù)用思想的一種實踐,它通過總結(jié)大量軟件系統(tǒng)中反復(fù)出現(xiàn)的數(shù)據(jù)結(jié)構(gòu)(如表、樹、圖、集合等),定義和實現(xiàn)處理這些數(shù)據(jù)結(jié)構(gòu)的基本操作,最終達(dá)到能夠在不同項目開發(fā)中反復(fù)應(yīng)用的目的。這些基本數(shù)據(jù)結(jié)構(gòu)和算法已經(jīng)被實現(xiàn)為可復(fù)用的產(chǎn)品隨著程序設(shè)計語言,如C++ STL、C# collections, Java collections等,并得到了廣泛的使用。因此,數(shù)據(jù)結(jié)構(gòu)教學(xué)的另一個重要目標(biāo)就是引導(dǎo)學(xué)生習(xí)慣圍繞復(fù)用的軟件開發(fā)方式,能夠使用和定制已有的數(shù)據(jù)結(jié)構(gòu)和算法庫。

其他傳統(tǒng)的數(shù)據(jù)結(jié)構(gòu)教學(xué)目標(biāo),如培養(yǎng)學(xué)生面向?qū)嶋H問題進行算法設(shè)計和分析的能力,培養(yǎng)學(xué)生計算機學(xué)科的基本理論素養(yǎng)和思維方式等也非常重要。但普通本科院校學(xué)生對理論內(nèi)容的接受能力以及將理論和現(xiàn)實就業(yè)需求相聯(lián)系的能力相對較弱且教學(xué)時間有限[3],筆者認(rèn)為重點突破本節(jié)給出的兩個更具體、更可達(dá)的教學(xué)目標(biāo),并在實現(xiàn)這種具體教學(xué)目標(biāo)的過程中潛移默化地培育學(xué)生的計算思維和理論素質(zhì),將會取得更佳的效果。

2建構(gòu)式數(shù)據(jù)結(jié)構(gòu)教學(xué)

教學(xué)理論研究以及教學(xué)實踐反饋均表明,學(xué)生主動學(xué)習(xí)的效果遠(yuǎn)較被動地接受老師灌輸?shù)男Ч玫亩?。因此,為實現(xiàn)上述教學(xué)目標(biāo),在建構(gòu)式教育理論的指導(dǎo)下,筆者探索并采用了一系列建構(gòu)式教學(xué)措施,激發(fā)學(xué)生的主動性和興趣,取得了較好效果。

建構(gòu)主義認(rèn)為,學(xué)習(xí)并非學(xué)習(xí)者對教師所授知識的被動接受,而是學(xué)習(xí)者以自身已有知識和經(jīng)驗為基礎(chǔ)的主動建構(gòu)過程[4]。知識不僅是通過教師傳授而得到,更是學(xué)習(xí)者在一定的情境中,利用必要的學(xué)習(xí)資料,通過同化新知識、順化自身知識結(jié)構(gòu)的方式而獲得。建構(gòu)主義提倡在教師指導(dǎo)下的、以學(xué)習(xí)者為中心的學(xué)習(xí),也就是說,既強調(diào)學(xué)習(xí)者的認(rèn)知主體作用,又不忽視教師的指導(dǎo)作用,教師是意義建構(gòu)的幫助者、促進者,而不僅僅是知識的傳授者與灌輸者。學(xué)生是信息加工的主體、是意義的主動建構(gòu)者,而不僅僅是外部刺激的被動接受者和被灌輸?shù)膶ο?。下面從理論教學(xué)和實踐教學(xué)兩個方面介紹我們采用的一些教學(xué)措施。

2.1理論教學(xué)措施

課堂教學(xué)是數(shù)據(jù)結(jié)構(gòu)教學(xué)活動的主要部分,充分利用課堂教學(xué)時間,激發(fā)學(xué)生學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的興趣和信心,幫助學(xué)生建立學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的環(huán)節(jié)非常重要。我們采用了如下措施:

1) 組織小型討論。

好的開始是成功的一半,好的課堂教學(xué)須在上課之初就抓住學(xué)生的注意力,讓學(xué)生帶著輕松、愉快的心情聽課。我的做法是在課堂的前5分鐘,提出一個學(xué)生感興趣的話題,組織若干個有3~5位同學(xué)參與的小型討論。到一個學(xué)期結(jié)束時,每位同學(xué)都有至少一次的發(fā)言機會。討論的主題可以靈活設(shè)置,如時事、技術(shù)、社會熱點等。有時,課堂中間學(xué)生比較疲憊、注意力下降的時候,也可以穿插一點討論,改善課堂環(huán)境。大多數(shù)學(xué)生非常喜歡這種討論活動,積極參與其中,成為課堂的一部分,從被動上課轉(zhuǎn)變?yōu)橄矚g上課。

2) 重建理論知識所針對的問題。

國內(nèi)的經(jīng)典數(shù)據(jù)結(jié)構(gòu)教材側(cè)重嚴(yán)謹(jǐn)?shù)睦碚?,較少討論各種概念、算法出現(xiàn)的背景以及探討的問題是否仍然具有現(xiàn)實價值。而回答這些問題能夠幫助學(xué)生重建理論知識所針對的問題原型,重現(xiàn)解決方案的提出、發(fā)展乃至最終成熟的整個過程,更有助于培養(yǎng)學(xué)生解決實際問題的能力,養(yǎng)成批判性、創(chuàng)新性思考的習(xí)慣。眾所周知,關(guān)于樹的存儲方法很多,有雙親表示法,孩子表示法和二叉鏈表表示法[5],其中以樹的二叉鏈表表示法使用最廣,但其他存儲方法也有其適合的應(yīng)用。例如,在利用樹表示各個集合,求集合中的等價類時,雙親表示法更為合適。每一個集合都用樹的雙親表示法存儲時,并設(shè)樹的根結(jié)點的值為集合名,集合中的每個成員都對應(yīng)一個結(jié)點,這樣很容易找到一個元素所屬的子集(順著雙親指針找樹的根結(jié)點)。

3) 組織“我來講”活動。

數(shù)據(jù)結(jié)構(gòu)涉及很多抽象的概念和算法,初學(xué)者很難理解。而教師則對理論內(nèi)容比較精熟,常常傾向于從理論的角度逐步遞進、展開講解,這就增加了學(xué)生的學(xué)習(xí)難度。教師和學(xué)生在教學(xué)語言上的鴻溝是影響教學(xué)效果的一個重要障礙。教師當(dāng)然可將抽象的理論概念與生活中更形象的概念進行類比,幫助學(xué)生理解,也可以將復(fù)雜的算法過程用多媒體動畫模擬出來,直觀地展示給學(xué)生,幫助學(xué)生掌握。但一方面,根據(jù)建構(gòu)主義理論,教師和學(xué)生的知識背景不同,由教師設(shè)計概念類比語境和算法模擬動畫實際上仍然是基于教師的知識結(jié)構(gòu)對知識點進行的同化和順化,而不是對學(xué)生知識體系的直接建構(gòu)。另一方面,教師的經(jīng)驗和智慧有其局限性,未必總能夠找到最適合的類比語境和動畫模擬。為此,筆者采用了充分發(fā)揮學(xué)生智慧的方法,組織“我來講”活動,要求學(xué)生通過設(shè)計算法的動畫模擬,創(chuàng)建概念的類比語境等方式進行學(xué)習(xí),并隨機選擇學(xué)生走上講臺對抽象理論概念和復(fù)雜算法進行說明。這樣不但能夠調(diào)動學(xué)生思考問題,還能幫助那些無法完成自我知識體系建構(gòu)的同學(xué)從學(xué)生的視角去理解同一個問題。例如,對于n維數(shù)組是元素為n-1維數(shù)組構(gòu)成的線性表這一遞歸的類型定義,可采用符號推理的方式,培養(yǎng)學(xué)生的理論素養(yǎng),而同時可鼓勵學(xué)生根據(jù)自己的理解將抽象理論具體化,建立幫助理解和記憶的現(xiàn)實語境。

2.2實踐教學(xué)措施

數(shù)據(jù)結(jié)構(gòu)是幫助具有基本編程語言基礎(chǔ)的學(xué)生錘煉編程技術(shù)的關(guān)鍵課程。它揭示了程序設(shè)計的基本面,即如何處理相互之間存在一種或多種數(shù)據(jù)關(guān)系的數(shù)據(jù)元素所構(gòu)成的集合、如何設(shè)計算法并分析算法的優(yōu)劣。若沒有相應(yīng)的配套實驗指導(dǎo)學(xué)生如何將理論應(yīng)用于實際問題,只是泛泛而談、紙上談兵,學(xué)生容易迷失在數(shù)據(jù)結(jié)構(gòu)的一連串復(fù)雜概念和算法之中,而不知道學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的意義何在。為實現(xiàn)教學(xué)目標(biāo),筆者鎖定實驗內(nèi)容設(shè)置和實驗考核等兩個關(guān)鍵環(huán)節(jié),實踐了如下措施,取得了較好效果。

2.2.1實驗內(nèi)容設(shè)置

實驗內(nèi)容設(shè)置是進行實踐教學(xué)的最重要部分。從覆蓋知識點的角度看,實驗內(nèi)容須面向數(shù)據(jù)結(jié)構(gòu)教學(xué)目標(biāo),即實驗內(nèi)容須能夠鍛煉學(xué)生的編程技巧,如算法設(shè)計、調(diào)試、測試以及調(diào)優(yōu)等能力,還能夠讓學(xué)生體會到圍繞復(fù)用開展軟件開發(fā)的威力以及思路。從覆蓋教育對象的角度來看,實驗內(nèi)容須面向大多數(shù)同學(xué)并充分考慮優(yōu)秀同學(xué),即實驗內(nèi)容須劃分不同的層次,讓大多數(shù)學(xué)生能夠很容易入手,并讓有能力、有余力的學(xué)生能夠不斷地深入,直至形成綜合型課程設(shè)計。

基于以上考慮,并借鑒同行經(jīng)驗,筆者開展三個層次的實驗教學(xué)活動,一是要求所有學(xué)生都完成的實驗內(nèi)容,要求學(xué)生采用不同的數(shù)據(jù)結(jié)構(gòu)實現(xiàn)同一個問題并進行對比分析,例如,分別使用靜態(tài)數(shù)組和動態(tài)分配的連續(xù)內(nèi)存區(qū)實現(xiàn)順序表,使用整型、字符型數(shù)組或者鏈表實現(xiàn)長整數(shù)的乘法,使用帶頭結(jié)點或不帶頭結(jié)點的循環(huán)鏈表模擬約瑟夫環(huán)等;二是組織程序設(shè)計競賽,讓部分學(xué)有余力的同學(xué)能夠在算法設(shè)計、程序?qū)崿F(xiàn)和調(diào)試、優(yōu)化等方面得到鍛煉和提高;三是設(shè)計綜合型課程設(shè)計鍛煉學(xué)生解決問題的綜合能力,并通過適當(dāng)分組,培養(yǎng)學(xué)生團隊協(xié)作精神和能力,鍛煉學(xué)生解決問題的綜合能力的目標(biāo),最終達(dá)到以點帶面全面提高學(xué)生能力的目的。

2.2.2實驗考核手段

考核手段在教學(xué)環(huán)節(jié)中至關(guān)重要。考核手段是學(xué)生學(xué)習(xí)和鍛煉自身能力的風(fēng)向標(biāo)。為保證每位同學(xué)都能積極完成實驗并有所收獲,避免抄襲和敷衍的現(xiàn)象,筆者采取了綜合型的考核手段。其一,提交實驗成果,即程序及其運行結(jié)果;其二,記錄實驗過程、分析實驗結(jié)果以及總結(jié)實驗得失的實驗報告,對實驗報告進行選優(yōu)講評,培養(yǎng)學(xué)生撰寫科學(xué)實驗報告的能力;其三,每位同學(xué)必須面向教師講解自己編寫的程序,包括主要思路和細(xì)節(jié)性語法,優(yōu)秀的同學(xué)可走上講臺宣講自己的實驗方案和程序設(shè)計技巧。這就基本杜絕了學(xué)生相互之間抄襲程序和實驗報告的現(xiàn)象,使得學(xué)生真正能夠思考問題,并盡力動手完成實驗。綜合上述三種手段的綜合型考核方法既能夠達(dá)到督促大部分同學(xué)完成實驗、鍛煉動手能力目的,又能夠達(dá)到培養(yǎng)優(yōu)秀同學(xué)的目的。特別地,優(yōu)秀同學(xué)宣講活動能夠使學(xué)生觀摩到如何從學(xué)生的視角從無到有的解決問題的過程,這能夠培養(yǎng)學(xué)生解決實際問題的信心并激發(fā)其學(xué)習(xí)積極性。

3應(yīng)用中遇到的問題

建構(gòu)式教學(xué)模式在應(yīng)用和推廣過程中遇到的主要問題來自三個方面。其一,目前學(xué)生的課業(yè)負(fù)擔(dān)較重,習(xí)慣于被動“填鴨”而不習(xí)慣于主動“求索”,這是推動和開展建構(gòu)式教學(xué)模式的主要障礙。其二,建構(gòu)式教學(xué)活動,需要師生的密切交流,但現(xiàn)有師資不足難以滿足實際需求。一個可能的解決方法是綜合多門課程和多個老師,建構(gòu)整體的知識框架和學(xué)習(xí)體系,避免課程教學(xué)中的重復(fù)勞動,提高師資的利用率。另一個可能的解決方法是利用互聯(lián)網(wǎng)技術(shù),建立在線教學(xué)園地。其三,建構(gòu)式教學(xué)模式仍然處于探索階段,各學(xué)科缺乏建構(gòu)式教學(xué)素材。從筆者在實踐教學(xué)的體驗來看,應(yīng)盡量從學(xué)生的學(xué)習(xí)背景和能力成長規(guī)律出發(fā)而不僅僅是從學(xué)科背景出發(fā),為學(xué)生建構(gòu)知識體系設(shè)計更平滑的路線。

4結(jié)語

筆者提出將“培養(yǎng)超越具體程序設(shè)計語言技巧的編程技術(shù)”和“培養(yǎng)圍繞復(fù)用的軟件開發(fā)方式”作為普通本科院校的數(shù)據(jù)結(jié)構(gòu)教學(xué)目標(biāo),在建構(gòu)式教育理論的指導(dǎo)下,設(shè)計并實踐了一系列建構(gòu)式教學(xué)措施,分析了應(yīng)用建構(gòu)式教學(xué)模式所遇到的一些問題。

未來將開展兩個方面的工作。一是通過問卷調(diào)查、統(tǒng)計分析等手段定量地分析建構(gòu)式教學(xué)方法的實際效果;二是創(chuàng)造和積累建構(gòu)式教學(xué)素材,如研究數(shù)據(jù)結(jié)構(gòu)課程設(shè)計過程中不同類型學(xué)生的知識建構(gòu)路線,挖掘并推廣其中優(yōu)秀的知識建構(gòu)方法。

參考文獻

[1] 教育部高等學(xué)校計算機科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會. 高等學(xué)校計算機科學(xué)與技術(shù)專業(yè)發(fā)展戰(zhàn)略研究報告暨專業(yè)規(guī)范(試行)[M]. 北京:高等教育出版社,2006:8-101.

[2] 蔡敏,鄭尚志,梁寶華.“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)改革之我見[J]. 計算機教育,2009(4):50-51.

[3] 揭安全,李云清,楊慶紅,等. 項目教學(xué)模式指導(dǎo)的“數(shù)據(jù)結(jié)構(gòu)與算法”教學(xué)改革[J]. 計算機教育,2008(22):21-23.

篇5

關(guān)鍵詞:能力培養(yǎng);網(wǎng)絡(luò)編程技術(shù);教學(xué)方法;教學(xué)改革

網(wǎng)絡(luò)編程技術(shù)作為“計算機網(wǎng)絡(luò)”的后續(xù)課程,在計算機類專業(yè)課程體系中占有十分重要的位置,是理論與實踐相結(jié)合的關(guān)鍵課程。本課程要求學(xué)生在理解計算機網(wǎng)絡(luò)、操作系統(tǒng)等基本理論的基礎(chǔ)上,掌握客戶/服務(wù)器模型,掌握TCP/IP協(xié)議簇中鏈路層、網(wǎng)絡(luò)層、運輸層等網(wǎng)絡(luò)應(yīng)用程序的設(shè)計思想和編程模型,運用高級語言進行開發(fā),同時能夠利用相關(guān)網(wǎng)絡(luò)知識解釋程序運行中的現(xiàn)象,解決實際問題。

目前,高校本科生的選修課程學(xué)時普遍被壓縮,如何在有限的學(xué)時內(nèi),讓學(xué)生最大限度地了解網(wǎng)絡(luò)編程技術(shù),增加課程信息量,提高學(xué)生學(xué)習(xí)興趣,培養(yǎng)學(xué)生的問題求解能力是非常值得思考的問題。本文結(jié)合筆者多年的教學(xué)經(jīng)驗,總結(jié)了一些有效的教學(xué)方法。

1課程項目在教學(xué)過程中的驅(qū)動作用

傳統(tǒng)的教學(xué)模式以講授法為主,只是針對程序設(shè)計語言的語法進行講解,內(nèi)容枯燥無味,教師注重講授,學(xué)生被動接受,學(xué)習(xí)積極性不高,效果也不好。

網(wǎng)絡(luò)編程技術(shù)是一門與實際應(yīng)用結(jié)合緊密的課程,課程項目可以在教學(xué)過程中產(chǎn)生積極的驅(qū)動作用。教師在教學(xué)過程中逐步將所教內(nèi)容對應(yīng)于項目中,既調(diào)動了學(xué)生學(xué)習(xí)的積極性,又使學(xué)生能夠系統(tǒng)地學(xué)習(xí)所需要的知識[1]。具體做法是:

1) 在課程學(xué)習(xí)之初,教師就向?qū)W生布置若干與網(wǎng)絡(luò)編程相關(guān)的課程項目,要求學(xué)生學(xué)習(xí)完本課程之后能設(shè)計出對應(yīng)的軟件。學(xué)生根據(jù)自己的興趣,以小組為單位選擇其中一個作為本課程考核的項目,提交項目申請書。

2) 在項目的實施過程中,教師將項目進度簡化為申請―設(shè)計―實現(xiàn)三個基本步驟,每個步驟要求學(xué)生根據(jù)階段進展寫出相關(guān)文檔――《課程項目申請書》、《課程項目設(shè)計文檔》和《課程項目結(jié)題報告》。學(xué)生在動手實踐過程中鍛煉了對較大問題的模塊劃分、編碼、分工協(xié)作、科技文檔寫作等技能。

3) 在教學(xué)過程中,教師全程指導(dǎo)、策劃,負(fù)責(zé)各個模塊之間協(xié)調(diào)進展,同時負(fù)責(zé)解惑答疑,及時修正存在的問題,在涉及到課程項目實施細(xì)節(jié)處及時與教學(xué)知識點聯(lián)系起來,由此達(dá)到將案例教學(xué)與項目驅(qū)動教學(xué)相結(jié)合的目的。

在項目開發(fā)的每個階段,各開發(fā)小組完成相應(yīng)模塊后,以討論課形式展示自己的作品。肯定成績,找出不足,學(xué)生能夠在積極融洽的環(huán)境中相互學(xué)習(xí)、取長補短,不斷完善自己的作品;而對于一些創(chuàng)意新穎、主題突出、有獨創(chuàng)性的作品,則及時給予表揚和鼓勵,這樣可以不斷加強學(xué)生的信心,讓學(xué)生能長期保持飽滿熱情。

2以問題為線索的教學(xué)內(nèi)容設(shè)計

網(wǎng)絡(luò)編程課程涉及的知識面很廣,從TCP/IP四層體系結(jié)構(gòu)來看,每個層次都存在多種編程方法,如直接網(wǎng)卡編程技術(shù)、基于Packet Driver的網(wǎng)絡(luò)編程方法、基于NDIS的網(wǎng)絡(luò)編程方法、WinPcap編程、WinSock編程、基于WWW應(yīng)用的網(wǎng)絡(luò)編程、Web Service編程等等。如果將每種方法都面面俱到,不一定會起到好的教學(xué)效果,一方面,每種編程方法使用的開發(fā)環(huán)境不同、函數(shù)庫不同,使得學(xué)生短時間難以掌握;另一方面,網(wǎng)絡(luò)編程的核心在于程序設(shè)計思路和傳輸過程中關(guān)鍵問題的解決,在課時有限的情況下過于關(guān)注函數(shù)使用方法,無法透徹地將這些核心思想灌輸給學(xué)生。

我們在教學(xué)內(nèi)容設(shè)計時,本著“授之以漁”的目標(biāo),從網(wǎng)絡(luò)程序設(shè)計中提煉出編程中涉及到的若干關(guān)鍵問題,并圍繞這些關(guān)鍵問題重新組織教學(xué)內(nèi)容,幫助學(xué)生更清晰地把握知識點。

2.1從應(yīng)用出發(fā)選擇授課內(nèi)容

首先,將現(xiàn)有的諸多網(wǎng)絡(luò)編程方法按照其操控的數(shù)據(jù)內(nèi)容在TCP/IP體系結(jié)構(gòu)中找到相應(yīng)位置,如圖1所示。在此基礎(chǔ)上,結(jié)合學(xué)生的實際工作需求,授課內(nèi)容選擇了可操控鏈路層、網(wǎng)際層、運輸層三個層次上的常用編程方法:WinSock編程和WinPcap編程。

2.2從問題出發(fā)組織授課內(nèi)容

考慮到兩臺主機間互聯(lián)通信主要涉及到以下若干關(guān)鍵問題。1)會聚:解決對等的應(yīng)用程序以何種順序、什么時間進行交互的方式。2)接口:解決應(yīng)用程序如何使用操作系統(tǒng)的TCP/IP協(xié)議棧功能進行網(wǎng)絡(luò)操作。3)異步:解決套接字在非阻塞模式下如何確定可讀/可寫的時機問題。4)測試:解決如何進行網(wǎng)絡(luò)應(yīng)用程序的調(diào)試問題。5)傳送:在數(shù)據(jù)傳輸過程中,我們可以為應(yīng)用程序選擇不同的底層傳輸服務(wù),在課程中將涉及到數(shù)據(jù)流(對應(yīng)于流式套接字)、數(shù)據(jù)報(對應(yīng)于數(shù)據(jù)報套接字)、協(xié)議分組(對應(yīng)于原始套接字)和數(shù)據(jù)幀(對應(yīng)于WinPcap)等4種方法實現(xiàn)數(shù)據(jù)傳輸。每種方法都有其特點,學(xué)生要在明確其適用場合的基礎(chǔ)上學(xué)會基本的通訊功能和處理細(xì)節(jié)。

因此,網(wǎng)絡(luò)編程的授課內(nèi)容被組織為網(wǎng)絡(luò)通訊過程中的5大問題:會聚、接口、調(diào)試、傳送和異步,如圖2所示,教師針對每個問題分專題進行講解,使課堂內(nèi)容更加清晰。

2.3從效果出發(fā)設(shè)計教學(xué)過程

在課程規(guī)劃上,強調(diào)基本概念的理解與實踐相融合,網(wǎng)絡(luò)編程作為應(yīng)用型課程,其理論基礎(chǔ)部分已在計算機網(wǎng)絡(luò)、網(wǎng)絡(luò)協(xié)議分析課程中學(xué)習(xí)過,但課程偏重理論介紹,學(xué)生難以與實際相結(jié)合,因此,網(wǎng)絡(luò)編程課首先要幫助學(xué)生完成理論到實踐的銜接。

上課時采用案例式教學(xué),每講到一種編程模型,將常用的網(wǎng)絡(luò)掃描、網(wǎng)絡(luò)游戲、文件下載等實例的分析與實現(xiàn)以案例的形式出現(xiàn)在課堂中,既形象地將理論與實踐結(jié)合起來,又提高了學(xué)生的學(xué)習(xí)興趣。

從教學(xué)效果上看,案例式教學(xué)啟發(fā)了學(xué)生的興趣,豐富了學(xué)生的知識結(jié)構(gòu),鑒于課堂上的少量案例仍然不能涵蓋大量的實際應(yīng)用,為了避免學(xué)生在學(xué)習(xí)過程中過于注重細(xì)節(jié),造成“只見樹木不見森林”的問題,在教學(xué)方法上,教師注重由點及面的教學(xué)思路,在每一講結(jié)束后進一步啟發(fā)學(xué)生思維,跳出簡單的程序編寫細(xì)節(jié),舉一反三。如教師在介紹數(shù)據(jù)填充時,從最簡單的字符型數(shù)據(jù),啟發(fā)學(xué)生考慮稍復(fù)雜的攜帶固定含義字段的數(shù)據(jù)(如四字節(jié)的ICMP的時間戳字段),再考慮更復(fù)雜的結(jié)構(gòu)體數(shù)據(jù),更進一步思考如何設(shè)計一個新的協(xié)議。通過這種方法,使得課堂教學(xué)內(nèi)容與實際的關(guān)聯(lián)性更加密切,引導(dǎo)學(xué)生自主學(xué)習(xí)。

3專題性與綜合性相結(jié)合的實踐教學(xué)設(shè)計

網(wǎng)絡(luò)編程技術(shù)課程的實踐性很強,學(xué)生只聽不練很難達(dá)到學(xué)習(xí)該課程的目的[2],因此在理論教學(xué)的同時還要加強上機實踐教學(xué),將上機實踐環(huán)節(jié)貫穿于課程教學(xué)的全過程。在實驗內(nèi)容選擇上,教師要充分考慮實驗題和理論教學(xué)的銜接,以及實驗題目的綜合可操作性、趣味性和難度,為此,將實踐教學(xué)部分分為專題實驗和綜合實驗兩部分。

3.1專題性實踐教學(xué)設(shè)計

專題實驗的目的在于對課堂講授理論的驗證和運用,為此,結(jié)合教學(xué)內(nèi)容,將專題性實踐教學(xué)設(shè)計為6個必做實驗,如表1所示。

6個實驗圍繞一個回射程序展開,基于流式套接字實現(xiàn)的回射客戶端和服務(wù)器是基礎(chǔ),在此基礎(chǔ)上,后續(xù)實驗稍加改動就可以完成,修改內(nèi)容側(cè)重于程序的可靠性、并發(fā)性和功能性。修改的內(nèi)容與課堂講述的重點內(nèi)容一致,更有針對性地鍛煉學(xué)生編程能力。

在程序運行過程中,模擬正常交互、服務(wù)器關(guān)閉、客戶端異常退出、服務(wù)器主機崩潰、大量客戶端請求等情況,結(jié)合嗅探器和netstat命令監(jiān)視程序運行過程,要求學(xué)生結(jié)合網(wǎng)絡(luò)理論來解釋和解決編程實現(xiàn)過程中的實際問題。從實踐教學(xué)效果來看,學(xué)生在分析通信流量和主機網(wǎng)絡(luò)狀態(tài)的過程中,既鍛煉了網(wǎng)絡(luò)測量方法的應(yīng)用和網(wǎng)絡(luò)應(yīng)用程序調(diào)試的技巧,又有效地將計算機網(wǎng)絡(luò)相關(guān)理論應(yīng)用于實際問題的處理和分析,同時也直觀地感受到各種方法開發(fā)出的網(wǎng)絡(luò)應(yīng)用程序在實際交互過程中的優(yōu)勢和劣勢。

由此,通過一個實例在各種網(wǎng)絡(luò)環(huán)境下的實現(xiàn),幫助學(xué)生理解不同類型通訊方式在實現(xiàn)中的差別,并進一步明確編程方法的選擇策略。實驗內(nèi)容前后銜接,遞進安排,工作量適中,達(dá)到了理論與實際相結(jié)合的目的,充分發(fā)揮了學(xué)生的主觀能動性,培養(yǎng)了學(xué)生分析問題、解決問題的能力。

3.2綜合性實踐教學(xué)設(shè)計

課程項目作為實踐教學(xué)的綜合設(shè)計環(huán)節(jié),目的在于模擬真實項目開發(fā)過程,培養(yǎng)學(xué)生團隊意識,鍛煉學(xué)生分析問題、解決問題的能力。

結(jié)合網(wǎng)絡(luò)編程技術(shù)的教學(xué)要求,設(shè)計6個綜合類教學(xué)項目,分別是簡單聊天程序、多線程網(wǎng)絡(luò)文件傳輸、基于C/S的密碼驗證程序、traceroute的設(shè)計與實現(xiàn)、半開端口掃描器的設(shè)計與實現(xiàn)和ARP欺騙。

在教學(xué)項目實施過程中,以學(xué)生為主體,教師負(fù)責(zé)組織協(xié)調(diào)和必要輔導(dǎo)的工作,學(xué)生以小組為單位,共同圍繞某個項目進行分析和研究,查閱、自學(xué)相關(guān)的文獻資料,確定技術(shù)路線、實施方案和小組分工,最后以小組為單位進行答辯。

綜合實驗環(huán)節(jié)模擬實際的軟件開發(fā)過程,提高學(xué)生的興趣,也培養(yǎng)了學(xué)生的探索創(chuàng)新能力和團隊協(xié)作精神。

4綜合課程考核方法

傳統(tǒng)基礎(chǔ)理論課的考核方法通常采用卷面筆試考核,這種考核方法強調(diào)的是學(xué)生對知識點的理解和綜合問題的分析能力,但是對于實踐類課程而言,它更強調(diào)學(xué)以致用,因此,一味要求學(xué)生對知識點的死記硬背無疑起不到好的效果,考核應(yīng)貫穿學(xué)生的整個學(xué)習(xí)過程,比如課程項目實施進度、小組分工協(xié)作情況、疑難問題的解決等。如果能夠?qū)φ麄€過程的若干關(guān)鍵環(huán)節(jié)進行衡量,那么,網(wǎng)絡(luò)編程技術(shù)的考核也就完成了。

綜合考慮以上因素,本課程成績評定沒有采用卷面筆試形式,而是采用教師評定與學(xué)生打分相結(jié)合、課程項目成績與平時成績相結(jié)合的方法。綜合成績=課程項目成績(50%)+平時成績(30%,包括實驗成績、考勤情況等)+學(xué)生評定成績(20%)。課程項目成績考核學(xué)生對整個課程內(nèi)容的掌握和運用,平時成績主要針對學(xué)生上課出勤率和每個專題實驗的完成情況,學(xué)生評定是對小組內(nèi)成員工作情況的肯定,采用無記名方式提交,在一定程度上遏制了個別同學(xué)復(fù)制別人勞動成果的現(xiàn)象,同時也提高了學(xué)生的學(xué)習(xí)動力。

5結(jié)語

以上是我們在該課程實際教學(xué)中實施的一些具體做法。課程項目促進了學(xué)生加強網(wǎng)絡(luò)編程學(xué)習(xí)的動力,它能夠在培養(yǎng)學(xué)生的學(xué)習(xí)能力和實踐能力的同時,加強項目維護、分工協(xié)作等多方面技能的培養(yǎng),更真實地展現(xiàn)實際工作的需求和實施過程。同時,有效的教學(xué)內(nèi)容設(shè)計、專題性與綜合性相結(jié)合的實踐教學(xué)環(huán)節(jié)和綜合課程考核方法在教與學(xué)的各個環(huán)節(jié)都起到了有效的促進作用。實踐證明,通過上述教學(xué)方法和手段,大多數(shù)學(xué)生的學(xué)習(xí)興趣明顯增強,實踐動手能力得到很大提高。

參考文獻:

篇6

關(guān)鍵詞:高級語言;表達(dá)式;算符優(yōu)先;堆棧

中圖分類號:TP301文獻標(biāo)識碼:A文章編號:1009-3044(2007)03-10798-02

1 引言

程序設(shè)計語言隨軟件技術(shù)的發(fā)展而快速發(fā)展,是表達(dá)軟件的工具,是人機通信的媒介。程序設(shè)計語言就是一臺抽象機器,程序員利用這個抽象機器的各種功能(語言機制)編制出繪聲繪色的軟件。程序設(shè)計語言從極少數(shù)計算機專家知道的機器語言到數(shù)以萬計的高級程序設(shè)計員,經(jīng)歷了從復(fù)雜到簡單的設(shè)計過程。表達(dá)式計算是程序設(shè)計語言的基本知識,是編譯系統(tǒng)的基本問題。然而在高級程序設(shè)計語言中,只要給出表達(dá)式,高級語言環(huán)境就會根據(jù)預(yù)設(shè)的語言機制計算出表達(dá)式的結(jié)果,編程人員并不了解表達(dá)式的計算過程。本文通過算符優(yōu)先分析和堆棧的方法,給出了算術(shù)表達(dá)式的計算過程,有助于高級語言初學(xué)者和計算機編程人員熟悉計算機內(nèi)部表達(dá)式計算的處理過程,更好地學(xué)習(xí)和掌握高級語言的編程技術(shù)。

2 表達(dá)式計算

2.1 算符優(yōu)先分析

算符優(yōu)先分析是定義算符之間的某種優(yōu)先關(guān)系,這種關(guān)系可以為表示以下三種:

a<ba的優(yōu)先性低于b

a=ba的優(yōu)先性等于b

a>ba的優(yōu)先性高于b

其中a和b代表一種算符,<、=和>不同于數(shù)學(xué)里的大于、等于和小于,同時a<b并不代表b>a, a=b并不代表b=a。

2.2 表達(dá)式表示

在機器內(nèi)部,任何一個表達(dá)式都是由操作數(shù)、運算符和分界符組成,分界符表示一個表達(dá)式的結(jié)束。假設(shè)在此討論的算符只含加、減、乘、除四種算術(shù)運算符和左、右圓括號。如一個算術(shù)表達(dá)式A+(B-C/D)*E,這種算術(shù)表達(dá)式中的運算符一般總是出現(xiàn)在兩個操作數(shù)之間稱中綴表達(dá)式。在計算機的編譯系統(tǒng)中,在處理中綴表達(dá)式之前,總是先將它變換成后綴表達(dá)式,即表達(dá)式中的運算符出現(xiàn)在操作數(shù)之后,且不含括號。把一個中綴表達(dá)式變換成相應(yīng)的后綴表達(dá)式首先考慮運算規(guī)則。算術(shù)運算的規(guī)則是:(1)先乘除后加減;(2)先括號內(nèi)后括號外;(3)同級別時先左后右。則上面中綴表達(dá)式可寫成ABCD/-E*+,由此可知后綴表達(dá)式的兩個特點:(1)后綴表達(dá)式與中綴表達(dá)式的操作數(shù)先后次序相同,只是運算符的先后次序有所變化。后綴表達(dá)式的運算符次序就是其執(zhí)行次序;(2)后綴表達(dá)式?jīng)]有括號(如表1)。

表1 后綴表達(dá)式的處理過程

2.3 算符優(yōu)先關(guān)系

由后綴表達(dá)式特點(1)知,后綴表達(dá)式與中綴表達(dá)式的操作數(shù)排列次序相同,只是運算符改變了次序。編譯系統(tǒng)從左到右依次掃描中綴表達(dá)式,每讀到一個操作數(shù)即將它作為后綴表達(dá)式的一部分輸出。系統(tǒng)設(shè)置一個存放運算符的棧,初始時棧頂置一分界符#,并將其也看作運算符。每讀到一個運算符,就將其優(yōu)先級與棧頂位置運算符優(yōu)先級進行比較,以決定是把所讀的運算符進棧還是將棧頂位置的運算符作為后綴表達(dá)式的一部分輸出。表2給出了包括加、減、乘、除四種算術(shù)運算符和左、右圓括號和分界符的算術(shù)運算符間的優(yōu)先級關(guān)系表。表中θ1代表棧頂運算符,θ2代表當(dāng)前掃描讀到的運算符。

表2 運算符優(yōu)先級關(guān)系

表2是四則運算三條規(guī)則的變形。對規(guī)則(1),當(dāng)θ1為+或-,θ2為*或/時,θ1的優(yōu)先級低于θ2的優(yōu)先級(先乘除后加減);對規(guī)則(2),θ1當(dāng)為+、-、*或/,θ2為(時,θ1的優(yōu)先級低于θ2的優(yōu)先級(先括號內(nèi)后括號外);當(dāng)θ1為+、-、*或/,θ2為)時,θ1的優(yōu)先級高于θ2的優(yōu)先級(先求出括號內(nèi)的值);對規(guī)則(3),當(dāng)θ1的運算符和θ2的運算符同優(yōu)先級別時,令θ1的優(yōu)先級高(同級別時先左后右)。由于后綴表達(dá)式無括號,當(dāng)θ1為(,θ2為)時,用符號”=”表示去掉該對括號。當(dāng)θ1為#時,θ2也為#時,表示整個表達(dá)式處理完畢。表2中空格處表示不允許出現(xiàn)這種情況,一旦出現(xiàn),即為中綴表達(dá)式語法出錯。

2.4 表達(dá)式計算

中綴表達(dá)式變換成相應(yīng)的后綴表達(dá)式后,根據(jù)后綴表達(dá)式計算表達(dá)式的值方法為:設(shè)置一個足夠大的堆棧,從前向后依次掃描后綴表達(dá)式,每讀到一個操作數(shù),就將其壓入堆棧;每讀到一個運算符,就從棧頂取出兩個操作數(shù)施以該運算符所代表的操作,并把計算結(jié)果作為一個新的操作數(shù)壓入堆棧,一直到后綴表達(dá)式讀完。最后在棧頂位置的操作數(shù)就是該算術(shù)表達(dá)式的計算結(jié)果。

3 算法實現(xiàn)

#include

char newstr[20]; int p=0;

char proceed(char x1,char x2) /*算符比較*/

{char result1;

char Midstring[2];

result1='

if(((x1=='+'||x1=='-')&&strstr("+-)#",Midstring)!=-1)

||((x1=='*'||x1=='/')&&strstr("+-*/)#",Midstring)!=-1)

||(x1==')'&&strstr("+-*/)#",Midstring)!=-1))

result1='>';

else if((x1=='(' && x2==')')||(x1=='#' && x2=='#'))

result1='=';

else if((x1=='(' && x2=='#')||(x1==')' && x2=='(')||(x1=='#' && x2==')'))

result1=' ';

return(result1);}

int strstr(char str1[],char str2[])

{int i,j,k,m,n;

char tempStr1,tempStr2;

m=strlen(str1);

n=strlen(str2);

for(i=0;i

{k=i;

for(j=0;j

{tempStr1=str1[k];

tempStr2=str2[j];

if(tempStr1==tempStr2)

continue;

else break;}

if(j>=n) return(1);}

return(-1);}

/*中綴表達(dá)式變換后綴表達(dá)式*/

intprotfix(char str[])

{char stack[20];

char x1,x2,x;

int j=0,k=0;

stack[0]='#';

x2=str[j];

x1=stack[0];

while(1)

{if(x2!='+'&&x2!='-'&&x2!='*'&&x2!='/'&&x2!='('&&x2!=')'&&x2!='#')

{newstr[p++]=x2;

j++;x2=str[j];}

else

if(proceed(x1,x2)=='

{stack[++k]=x2;

x1=stack[k];

j++; x2=str[j];

}else if(proceed(x1,x2)=='>')

{ x=stack[k--];

newstr[p++]=x;

x1=stack[k];}

else if(proceed(x1,x2)=='='&&x1=='('&&x2==')')

{k--;x1=stack[k];

j++;x2=str[j]; }

Else

if(proceed(x1,x2)=='='&&x1=='#'&&x2=='#')

return(1);

else if(proceed(x1,x2)= =' ')

break;}

return(0);}

double count(char str[])/*計算表達(dá)式的值*/

{double x1,x2,x; int a,i=0;

while(str[i]!='\0')

{if(isdigit(str[i]))

push(str[i]-48);

else

Switch(str[i])

{case '+': x1=pop();x2=pop();

x=x1+x2;push(x);break;

case '-': x1=pop();x2=pop();

x=x1-x2;push(x);break;

case '*': x1=pop();x2=pop();

x=x1*x2;push(x);break;

case '/': x1=pop();x2=pop();

x=x1/x2; push(x); break; }

i++;}}

return(x);}

4 結(jié)束語

表達(dá)式計算作為程序設(shè)計語言的基礎(chǔ),是高級程序設(shè)計語言學(xué)習(xí)者和程序員必備的基礎(chǔ)知識,本文通過算符優(yōu)先分析和堆棧的方法,給出了算術(shù)表達(dá)式的計算過程,同時給出了算法描述,有助于高級語言初學(xué)者和計算機編程人員熟悉計算機內(nèi)部表達(dá)式計算的處理過程,更好地學(xué)習(xí)和掌握高級語言的編程技術(shù)。

參考文獻:

[1] 陳火旺. 編譯原理(第三版)[M]. 國防工業(yè)出版社,2000.

[2] 朱占立. 數(shù)據(jù)結(jié)構(gòu)(第二版)[M]. 西安:西安交通大學(xué)出版社,2000.

篇7

關(guān)鍵詞:大學(xué)物理;Matlab軟件;可視化教學(xué)

理工科課程普遍具有抽象、難理解的特點。為解決這一學(xué)習(xí)難點,國內(nèi)外高校在教學(xué)中嘗試采用數(shù)值計算軟件作為輔助教學(xué)工具。[1,2]學(xué)習(xí)物理必須學(xué)習(xí)其概念和定理,而這些概念、定理是用數(shù)學(xué)語言描述出來的,因此學(xué)生在學(xué)習(xí)物理的時候常常感到抽象、枯燥甚至產(chǎn)生了厭學(xué)情緒。21世紀(jì),計算機技術(shù)已廣泛普及,在“大學(xué)物理”教學(xué)中,利用計算機仿真技術(shù),可把物理學(xué)中闡述概念、定理的抽象公式以圖形、圖像及動畫的形式具體生動地展現(xiàn)在學(xué)生面前,實現(xiàn)抽象公式的可視化,從而提高學(xué)生學(xué)習(xí)物理的興趣。根據(jù)廣東海洋大學(xué)(以下簡稱“我校”)的實際情況,以Matlab作為平臺,在“大學(xué)物理”課程的教學(xué)中,進行了可視化教學(xué)方法的探索。

Matlab是Mathworks公司推出的一套高效率的數(shù)值計算和可視化軟件,是在國際科學(xué)界應(yīng)用和影響最廣泛的三大計算機語言之一,編程簡單、易學(xué)易用,是一種“演算紙”式的高級語言。和C、C++語言相比,[2]即使對于非計算機專業(yè)沒有編程能力的一年級學(xué)生,也很容易掌握并在今后的專業(yè)學(xué)習(xí)中靈活運用,為未來從事科研工作打下良好的基礎(chǔ)。經(jīng)過幾年的教學(xué)積累,針對每個章節(jié)的重要知識點應(yīng)用Matlab系統(tǒng)地開發(fā)了程序庫,把抽象的物理現(xiàn)象、規(guī)律進行可視化。

一、二維圖形的應(yīng)用

許多物理規(guī)律可抽象為形如y=f(x)的一元顯示函數(shù)表示,若該函數(shù)較為復(fù)雜,可借助二維圖形直觀形象地表示x、y之間的映射關(guān)系。編程方法如下:[3]

使用“:”運算符,在自變量x的定義域內(nèi)以一定的步距采樣,得到自變量向量;運用“.” 運算符,計算因變量在每個采樣點上相應(yīng)的函數(shù)值,得到因變量向量;根據(jù)自變量x、因變量y繪圖。

運行上述程序結(jié)果如圖1所示。從結(jié)果中可看出:輻射出射度最大值對應(yīng)的波長λm=9.4μm,λmT=2.9×10-3m?K。學(xué)生可以嘗試任意改變溫度,從而畫出不同溫度下的黑體輻射曲線,得出維恩位移定律。

二、動畫在模擬動態(tài)過程中的應(yīng)用

某些物理現(xiàn)象不僅是空間變量的函數(shù),同時也是時間變量的函數(shù),例如波。波的概念對于學(xué)生較難理解,如果用Matlab模擬波的運動過程,一方面使學(xué)生對波有了形象直觀的認(rèn)識,另一方面學(xué)生通過讀程序代碼,對波函數(shù)的理解會更加深刻。

例2:設(shè)一平面簡諧橫波其圓頻率ω=2rad/s,波速υ=0.5m/s,位于原點的質(zhì)點為波源,其初相位φ0=-0.5π,振幅A=1,沿x軸正向傳播,利用動畫編程技術(shù)顯示該橫波的運動過程。

上述橫波的波函數(shù)為y(x,t)=cos(ωt-ωx/υ+φ0)=cos(2t-4x-0.5π),現(xiàn)模擬在x軸0~5m范圍內(nèi)以0.1m為間距的若干個質(zhì)點,用黑色小圓點表示,y軸表示各質(zhì)點相對其平衡位置的位移,時間在0~100s范圍內(nèi)每隔0.01s產(chǎn)生一幀新的波形圖。

采用句柄圖形的方式編程,擦除屬性EraserMode為xor方式畫線,并返回所畫圖形句柄,然后在for循環(huán)中,計算任一采樣時刻t對應(yīng)的x、y數(shù)組,并使用set函數(shù)改變圖形的xdata,ydata屬性。通過對句柄操作,可以很快抹去舊波形,產(chǎn)生相關(guān)的新波形,從而看到波形隨時間變化的效果。這種動畫技術(shù)的優(yōu)點是,每計算一幀畫面,即播出,畫面實時變化,占用內(nèi)存空間小。模擬上述橫波的動畫程序如下:

由該動畫程序不僅可直觀地觀察到每個質(zhì)點的振動和振動相位的傳播過程,還可定量地觀察波的各個參數(shù)的物理意義。通過截屏得到2s、5s的波形圖如圖2和圖3所示。

三、矢量圖在繪制矢量場中的應(yīng)用

運用矢量圖可以畫出矢量場在空間的分布,如帶電體在周圍空間產(chǎn)生的靜電場,恒定電流在周圍空間激發(fā)的磁場等。

例3:帶電量為q=2×10-6C的電偶極子,正負(fù)點電荷的距離為1m,以兩點電荷連線的中心為坐標(biāo)原點,兩點電荷的連線為x軸,連線的中垂線為y軸,畫出該坐標(biāo)平面內(nèi)的場強分布和等勢線。

對于點(x,y),其電勢

根據(jù),可算出該點的電場強度。編程方法是首先在矩形平面區(qū)域內(nèi)采樣形成網(wǎng)格點數(shù)據(jù),然后計算每一網(wǎng)格點的電勢,并利用梯度函數(shù)計算場強,最后用等值線和矢量函數(shù)繪圖,程序如下:

程序執(zhí)行結(jié)果如圖4所示,從圖中可直接看出各點電場強度的方向,由等勢線的疏密程度可知電場強度的大小。

四、圖像函數(shù)在繪制光強分布中的應(yīng)用

利用Matlab中的圖像函數(shù),可把波動光學(xué)中的干涉、衍射現(xiàn)象以圖像的方式展現(xiàn)在學(xué)生面前,從而加深對理論的理解。

程序執(zhí)行結(jié)果如圖5所示。通過把該程序的仿真結(jié)果和實物實驗的結(jié)果進行對比,使學(xué)生深切體驗到:利用計算機仿真技術(shù),許多實驗已不再受實驗條件的約束,只要該實驗過程可以用數(shù)學(xué)語言描述,就可以利用Matlab編程進行計算機仿真實驗,同樣得到正確的實驗結(jié)果。

五、結(jié)束語

在“大學(xué)物理”教學(xué)中,通過引入Matlab進行可視化教學(xué),豐富了教學(xué)手段,加深了學(xué)生對所學(xué)內(nèi)容的理解,激發(fā)了學(xué)生的學(xué)習(xí)興趣,開拓了學(xué)生如何使用計算機進行探究式學(xué)習(xí)和科學(xué)創(chuàng)新的思維方法,從而使學(xué)生變被動學(xué)習(xí)為主動探索,取得了良好的教學(xué)效果。除此之外,學(xué)生在利用Matlab學(xué)好物理課程本身的同時,還提高了軟件設(shè)計能力,為今后的學(xué)習(xí)和工作奠定了良好的基礎(chǔ)。

參考文獻:

[1]陳懷琛.MATLAB及其在理工課程中的應(yīng)用指南[M].西安:西安電子科技大學(xué)出版社,2000.

篇8

關(guān)鍵詞:網(wǎng)絡(luò)編程;開放式教學(xué)

中圖分類號:G622.3

文獻標(biāo)識碼:A

文章編號:1672-3198(2009)08-0181-02

1 開放式教學(xué)概述

所謂“開放”,包括教學(xué)內(nèi)容、學(xué)生活動和學(xué)生與教學(xué)內(nèi)容之間相互作用等幾個方面的開放。開放式教學(xué)的目標(biāo)應(yīng)是:充分尊重學(xué)生的主體地位,通過網(wǎng)絡(luò)編程課程的教學(xué)活動,在獲取編程實踐理論知識的同時,讓學(xué)生主動學(xué)習(xí)自行獲取網(wǎng)絡(luò)編程知識的方法,進而獲得終身受用的學(xué)習(xí)能力和創(chuàng)造能力。而在開放式教學(xué)中,可以讓學(xué)生能夠按各自不同的目的、不同的選擇、不同的能力、不同的興趣選擇不同的教學(xué)并得到發(fā)展,這個過程體現(xiàn)了教學(xué)目標(biāo)的多元整合性,使學(xué)生可以全面發(fā)展。

2 網(wǎng)絡(luò)編程課程開放式教學(xué)的思路

“網(wǎng)絡(luò)編程”主要是在我校計算機相關(guān)專業(yè)的高年級學(xué)生來進行開設(shè)的,教學(xué)內(nèi)容涉及并主要包括網(wǎng)絡(luò)編程所必須的基本網(wǎng)絡(luò)通信原理、ASP、PHP、JSP等動態(tài)網(wǎng)頁編程語言基礎(chǔ)等,該課程幾乎將計算機專業(yè)所學(xué)習(xí)的所有課程都有機的結(jié)合起來,并進行應(yīng)用,這對于中職學(xué)校的學(xué)生,具有很大的挑戰(zhàn)性,更是需要教師的有效地引導(dǎo)學(xué)生去掌握并準(zhǔn)備大量的專業(yè)知識。這個階段的學(xué)生由于也是剛剛接觸到網(wǎng)絡(luò)編程知識,也具有很強的可塑性,我校老師在這里充分的引入了開放式教學(xué)的思想,讓學(xué)生選擇自己喜愛并愿意學(xué)習(xí)的網(wǎng)絡(luò)編程技術(shù),為以后的職業(yè)發(fā)展做好充分準(zhǔn)備。

筆者在教學(xué)實踐中發(fā)現(xiàn),在“網(wǎng)絡(luò)編程”課程的教學(xué)實踐中一般存在如下的幾個難點:(1)課程涉及面很寬。要涉及到網(wǎng)絡(luò)通信、數(shù)據(jù)庫、程序設(shè)計等多方面的知識,需要學(xué)生牢固掌握之前所學(xué)習(xí)過的知識;(2)網(wǎng)絡(luò)技術(shù)日新月異,技術(shù)更新和淘汰都很快,而課程也要涉及到很多新的技術(shù),教師很難進行分別的詳細(xì)講授;(3)而課程綜合實驗更是需要學(xué)生在課下做大量的準(zhǔn)備工作,在課上積極配合,協(xié)作,并積極向老師提出問題,并及時解決。

針對該課程的這些特點,我校在教學(xué)實踐中各位專業(yè)教師精心設(shè)計和選擇了教學(xué)內(nèi)容,并引導(dǎo)學(xué)生去接觸并自主學(xué)習(xí)新的網(wǎng)絡(luò)設(shè)計技術(shù)。在學(xué)生自主學(xué)習(xí)和實踐的過程中,專業(yè)教師積極引導(dǎo),不局限于課上的知識,為學(xué)生開放大量的資料和工具,讓學(xué)生自主的進行選擇,然后再通過課內(nèi)外的綜合實驗來鍛煉學(xué)生們的學(xué)習(xí)能力,從而取得了不錯的教學(xué)效果。

3 網(wǎng)絡(luò)編程開放式課堂教學(xué)內(nèi)容選擇

“網(wǎng)絡(luò)編程”課程涉及到許多方面的教學(xué)內(nèi)容,其主要包括:

(1)網(wǎng)絡(luò)編程基礎(chǔ),需要學(xué)生了解和掌握C/s和B/s基本模型;網(wǎng)絡(luò)應(yīng)用基礎(chǔ)和數(shù)據(jù)庫系統(tǒng)原理;HTML/XML語言以及網(wǎng)頁設(shè)計基礎(chǔ)。對于HTML和XML兩種語言,更是要了解其相互間的主要差異,對于目前的網(wǎng)絡(luò)編程領(lǐng)域,更是需要了解各種主要的網(wǎng)絡(luò)編程技術(shù)的優(yōu)缺點,以及主要應(yīng)用范圍。

由于目前網(wǎng)絡(luò)編程環(huán)境比較多,并且并不統(tǒng)一,給學(xué)生的學(xué)習(xí)上帶來了麻煩,但是也給學(xué)生進行開放式學(xué)習(xí)提供了重要機會,而教師更是要在這個環(huán)節(jié)上下功夫,讓學(xué)生充分了解各個環(huán)境,選擇適合學(xué)生自身特點的語言環(huán)境和發(fā)展方向,這都需要專業(yè)教師的細(xì)心引導(dǎo)和充分設(shè)計。

(2)ASP,掌握ASP的編程的技術(shù)和方法,掌握基于ASP的數(shù)據(jù)庫應(yīng)用編程技術(shù),熟悉VBScript和JavaScript等腳本語言。

(3)PHP,掌握PHP編程語言的基本語法、函數(shù)、類和對象,基于PHP的數(shù)據(jù)庫操作技術(shù),基于PHP的網(wǎng)絡(luò)應(yīng)用實現(xiàn)技術(shù)。

(4)JsP,掌握J(rèn)sP的主要技術(shù)及跨平臺的特點,了解JSP將網(wǎng)頁邏輯與網(wǎng)頁設(shè)計和顯示分離,支持可重用的基于組件的設(shè)計,使得基于Web的應(yīng)用程序的開發(fā)變得迅速和容易。

在課程的教學(xué)中,是不可能對以上的各個技術(shù)都進行詳細(xì)教授的,因此我們首先重點介紹了網(wǎng)絡(luò)編程基礎(chǔ),然后針對ASP、PHP、JsP的特點進行了開放式的簡單的講授,再引導(dǎo)學(xué)生根據(jù)自己的喜好來進行深入的自學(xué)和實踐。

4 網(wǎng)絡(luò)編程開放式課程綜合實驗設(shè)計

本課程在講授有關(guān)網(wǎng)絡(luò)編程的基本原理和基本技術(shù)的基礎(chǔ)上,設(shè)計出一個有效的綜合實驗,并通過綜合試驗的設(shè)計,使學(xué)生熟練掌握有關(guān)網(wǎng)絡(luò)程序設(shè)計的基本方。通過學(xué)生開放式的學(xué)習(xí)自己感興趣的環(huán)境,以不同的方式來編寫出符合實驗要求的網(wǎng)絡(luò)程序。這不僅鍛煉了學(xué)生的學(xué)習(xí)能力,還發(fā)展了學(xué)生的興趣。

在課程綜合實驗的設(shè)計中,我們綜合考慮教學(xué)活動的要求,為考察學(xué)生對開放式教學(xué)內(nèi)容的掌握和自主學(xué)習(xí)能力的目的,我們設(shè)計了一個綜合實驗,要求同學(xué)們自由分組協(xié)同完成。要求學(xué)生在Windows平臺上,選擇JSP、ASP或者PHP等動態(tài)網(wǎng)頁語言,設(shè)計并實現(xiàn)一個網(wǎng)絡(luò)聊天室系統(tǒng)。網(wǎng)絡(luò)聊天程序?qū)崿F(xiàn)的功能有用戶管理,包括用戶注冊、身份驗證和注銷;聊天室管理,包括建立、刪除和加入用戶等;文字通信,包括群聊和私聊;用戶聊天記錄的保存,以后能夠按照日期或好友查看歷史記錄。設(shè)計的這個課程綜合實驗也考察到了學(xué)生對頁面設(shè)計、數(shù)據(jù)庫等方面的相關(guān)知識。

在綜合實驗的過程中,開放不意味著完全的放開,我們還要根據(jù)中職學(xué)生的特點,教師需要保持介入學(xué)生的自學(xué)活動,并給予充分的輔導(dǎo)。目前現(xiàn)在常用的動態(tài)網(wǎng)頁語言有ASP、JSP、PHP等幾種,而與每種語言搭配的數(shù)據(jù)庫系統(tǒng)也往往是不同點,這些動態(tài)網(wǎng)頁語言也具有不同的特點,并且每一種都有一定的應(yīng)用范圍,如何指導(dǎo)學(xué)生做出選擇,也是專業(yè)教師的一項重要任務(wù)。

5 網(wǎng)絡(luò)編程開放式教學(xué)考核

合理評定開放式課程的成績是督促學(xué)生掌握知識的手段,但不是教學(xué)的最終目的。在開放式的教學(xué)中,學(xué)生能夠分組完成綜合實驗就體現(xiàn)出了綜合能力,所以我們在該課程中采取全面考核和綜合評定的辦法。通過上機考核和設(shè)計文檔等多方面的進行考核,并并根據(jù)學(xué)生的設(shè)計能力、動手能力、創(chuàng)新能力和綜合總結(jié)能力進行綜合評定,使課程設(shè)計的成績能全面反映每一個學(xué)生的實際能力。在考核中我們對每個組都進行檢查,并要求同學(xué)們演示并介紹他們自己的作品,并回答老師提出的若干技術(shù)問題。

最后綜合同學(xué)們提交的文檔和最終的程序結(jié)果,教師來評定出分?jǐn)?shù),并作出總結(jié),提出在實驗的過程中,各個學(xué)生的優(yōu)缺點,是否符合標(biāo)準(zhǔn)化編程思想,在哪些方面還可以進一步改進。并讓學(xué)生把編程中面對的問題,以及如何解決的思路進行介紹,供其他同學(xué)分享,充分的體現(xiàn)出開放是教學(xué)的開放、參與、共享的精神。鼓勵同學(xué)們在編程技術(shù)、界面設(shè)計等各個方面進行大膽創(chuàng)新和實踐。

6 結(jié)論

篇9

身 高: 176 體 重: 60 最高學(xué)歷: 本科

職 稱: 畢業(yè)學(xué)校: 廣東教育學(xué)院

畢業(yè)時間: 2011-06-07 特長概括:溝通、協(xié)調(diào)、演講

戶 籍: 廣東惠州市

現(xiàn)所在地: 廣東惠州市

自我評價

具備日本語的聽、說、讀寫能力,并取得相關(guān)證書,普通話、粵語標(biāo)準(zhǔn);能熟練使用計算機、系統(tǒng)維護、硬件維護、能熟練使用DOS、WINDOWS系統(tǒng),并熟練排除計算機軟硬故障;熟悉網(wǎng)絡(luò)應(yīng)用。自學(xué)能力強 。適應(yīng)力強,反應(yīng)快、積極、靈活,愛創(chuàng)新!提高自己,適應(yīng)工作的需要。在學(xué)習(xí)中,我注重理論與實踐的結(jié)合,己具備了相當(dāng)?shù)膶嵺`操作能力 。具有很強的事業(yè)心和責(zé)任感使我能夠面對任何困難和挑戰(zhàn),所以我希望找一份與自身知識結(jié)構(gòu)相關(guān)的工作,如,文員,助理可以有更大的空間來證明自己,發(fā)展自己!

求職意向

工作崗位: 計算機硬件、信息技術(shù)專員、售前/售后技術(shù)支持工程師,營銷-技術(shù)服務(wù)及客服售后/客服主管(非技術(shù)),教師小學(xué)教育(英語),教師中等教育(外語)

職位性質(zhì): 全職 行業(yè)類別: 商業(yè)貿(mào)易/物流倉儲/經(jīng)紀(jì),教育/培訓(xùn)

工作地區(qū): 廣東省深圳市龍崗區(qū) 到崗時間: 隨時 月薪要求: 2500~3500元

其他要求:

教育

學(xué)歷 學(xué)校名稱 專業(yè) 時間范圍 專業(yè)描述

不限 廣東教育學(xué)院 外語類英語 2008年11月-0年0月

培訓(xùn)

2008年9月-2012年10月 培訓(xùn)課程:中學(xué)英語教學(xué)技能

培訓(xùn)機構(gòu): 廣東教育學(xué)院 培訓(xùn)地點: 廣東教育大廈

獲得證書:

培訓(xùn)描述: 培訓(xùn)機構(gòu): 英特爾未來教育 培訓(xùn)地點: 廣東教育大廈

獲得證書: 結(jié)業(yè)證書

培訓(xùn)描述:

語言 外語語種 掌握程度 國家英語測試4級

工作經(jīng)驗

2007年7月-2007年9月 :增城市繡花廠

公司性質(zhì): 民營企業(yè) 所屬行業(yè): 其他行業(yè)

所在部門: 擔(dān)任職務(wù): 助理

工作描述: 作為繡花廠的一名助理,其日常工作主要是負(fù)責(zé)貨物的進出,有時候幫助老板處理一下文件,

離職原因: 返校

技能專長

主修課程:

《程序設(shè)計》、C++等計算機課程,掌握模擬電路、數(shù)字電路、計算機應(yīng)用基礎(chǔ)、計算機網(wǎng)絡(luò)

多媒體技術(shù)應(yīng)用、VB編程技術(shù)

網(wǎng)頁編程及設(shè)計、現(xiàn)代教育技術(shù)理論

數(shù)據(jù)庫設(shè)計及應(yīng)用

1、扎實的計算機操作能力,熟悉PC軟/硬件、安監(jiān)系統(tǒng)、公司電話系統(tǒng)及網(wǎng)絡(luò)的安裝及維護,能充分利用現(xiàn)有資源為公司創(chuàng)造應(yīng)有的效益;

2、統(tǒng)籌規(guī)劃公司的辦公耗材,節(jié)省成本;

3、工作踏實、仔細(xì)認(rèn)真。

職場風(fēng)采

個人特點:

學(xué)習(xí)方面:專業(yè)礎(chǔ)扎實,計算機操作及網(wǎng)絡(luò)管理能力完善;

生活方面:能吃苦耐勞,有較強的適應(yīng)能力;

篇10

關(guān)鍵詞 數(shù)學(xué)算法;計算機編程方式;優(yōu)化

中圖分類號 TP3 文獻標(biāo)識碼 A 文章編號 1674-6708(2017)189-0073-02

當(dāng)前,我們主要是通過計算機編程的途徑對軟件進行開發(fā),對計算機編程來說,數(shù)學(xué)算法是其中最基本也是最關(guān)鍵的影響因素,只有將數(shù)學(xué)算法合理適當(dāng)?shù)貞?yīng)用于計算機的相關(guān)編程之中,才能實現(xiàn)計算機編程的高效率運行,才會提高計算機軟件開發(fā)的成功率。計算機編程要運用到的數(shù)學(xué)知識主要包括離散數(shù)學(xué)和微積分等運算,對這些數(shù)學(xué)算法進行深入研究,并且將它們運用到計算機編程方式的改進優(yōu)化中,可以提高計算機編程方式的實用性和有效性。

1 計算機編程方式的基本概況

1.1 數(shù)學(xué)算法的簡介

算法作為數(shù)學(xué)研究中的最基礎(chǔ)和最關(guān)鍵的部分,對計算機編程的研究也起著至關(guān)重要的作用。如今信息科技在迅速發(fā)展創(chuàng)新,數(shù)學(xué)算法對計算機編程的影響日益加深,數(shù)學(xué)算法逐漸成為計算機編程技術(shù)人員應(yīng)該具備的最基本素養(yǎng)。大部分高校的計算機專業(yè)課程主要引導(dǎo)學(xué)生建立數(shù)學(xué)算法的基本思想,培養(yǎng)和提高他們進行數(shù)學(xué)算法的能力和水平,要求學(xué)生了解和掌握各類數(shù)學(xué)算法學(xué)習(xí)實驗報告的撰寫方式。學(xué)生們也可以通過觀察、模仿、深入研究以及實際操作等方式來進一步深入了解數(shù)學(xué)算法的精髓和內(nèi)涵,提高自身的推導(dǎo)計算的水平,增強自己獨立解決問題和矛盾的能力,進而確保自己的計算機編程專業(yè)課程的順利學(xué)習(xí)。

1.2 計算機編程的簡介

計算機編程以計算機語言作為根本,通過人們對計算機語言的研究和翻譯工作,能夠完成多種類型不一的計算機功能。從根上來說,計算機誕生的目的是為了能夠運用大量的數(shù)學(xué)計算,進而為人們解決復(fù)雜困難的高級大量數(shù)據(jù)運算,為人們提供最精確的計算結(jié)果。對計算機進行創(chuàng)新改造和升級,不僅能夠大幅度提升計算機的運算效率和準(zhǔn)確度,而且能增強計算機編程應(yīng)用的實用性。因此,我們需要加大對計算機編程方式改進優(yōu)化工作的重視程度,在保證計算機運算結(jié)果精確無誤的基礎(chǔ)上,使計算機運算效率不斷得到提高。

1.3 數(shù)學(xué)模型是算法與計算機聯(lián)系的橋梁

將繁多復(fù)雜的現(xiàn)實問題簡單化并抽象為適當(dāng)?shù)臄?shù)學(xué)結(jié)構(gòu),便是數(shù)學(xué)模型的構(gòu)建過程。采用實際調(diào)查、收集整理數(shù)據(jù)資料等方法,對研究問題的內(nèi)在特點和實際規(guī)律進行深入的分析,掌握問題的關(guān)鍵部分和主要矛盾,建立出與實際問題相聯(lián)系的數(shù)量之間的關(guān)系,再應(yīng)用數(shù)學(xué)思維方式和理論知識進行問題的探討和研究。

數(shù)學(xué)計算的選擇在計算機編程方式的優(yōu)化過程中有著非常深刻的影響,這些影響主要包括:計算機本身的運行效率、內(nèi)存容量大小、計算機的質(zhì)量高低等等。由于運作效率和自身質(zhì)量的不同,計算機的編程效率也是不一樣的,因此我們應(yīng)該根據(jù)實際問題類型的不同而選取恰當(dāng)合適的數(shù)學(xué)算法。在實際的操作流程中,應(yīng)用簡易直接、改造優(yōu)良的數(shù)學(xué)算法,這能大大減少計算機執(zhí)行任務(wù)的時間,能大幅度提高計算機的工作運行速度和質(zhì)量。

要想進一步提升計算機的運行效率,可以參考以下兩個方面的內(nèi)容進行數(shù)學(xué)算法的選取。其中一方面是根據(jù)時間的復(fù)雜性進行合理選擇。今天的社會和經(jīng)濟在高速發(fā)展,人們普遍追求的是高效率和高質(zhì)量,適當(dāng)?shù)臄?shù)學(xué)算法能夠讓計算機在最短的時間內(nèi)編譯出最多類的程序。還有一個方面便是考慮空間的復(fù)雜性?,F(xiàn)代社會的發(fā)展在不斷追求節(jié)能降耗,即使用盡可能少的資源,獲得最大的效益。只有把這兩方面內(nèi)容進行相互結(jié)合,才能選擇出最適當(dāng)合理的數(shù)學(xué)算法。構(gòu)建理想的數(shù)學(xué)模型,將合理的算法與計算機編程相聯(lián)系,實現(xiàn)計算機編程的設(shè)計開發(fā)。

2 優(yōu)化計算機編程方式的措施

2.1 對數(shù)據(jù)結(jié)構(gòu)進行合理設(shè)計

數(shù)據(jù)結(jié)構(gòu)是否存在合理性對數(shù)學(xué)算法性能的高低起著十分關(guān)鍵的作用,合理的數(shù)據(jù)結(jié)構(gòu)能夠讓數(shù)學(xué)算法對變量進行訪問的速度得到提高,降低變量占用的內(nèi)存空間容量,進一步提高數(shù)學(xué)算法的效率和水平。比如說,若是在稀疏矩陣中含有很多的元素,則需要參考縮矩陣的儲存空間,假設(shè)直接通過二維數(shù)組的途徑了儲備矩陣,則可能造成大量存儲空間的浪費。因此這時應(yīng)該選取三元組進行稀疏矩陣的儲存工作,這可以最大限度地降低稀疏矩陣的占用空間。采用聯(lián)合體的方法對共享變量進行深入加工,讓多個變量能夠共存于同一段內(nèi)存空間之中,這大大降低了數(shù)學(xué)算法的空間復(fù)雜度,從而大大提升了數(shù)學(xué)算法的

效率。

2.2 通過并行計算減少算法執(zhí)行時間

通過并行計算來實現(xiàn)算法執(zhí)行時間的減少有兩種不同的方法。其中一種方法是對單機上的多核心進行并行,另一種方法是多機間的并行。現(xiàn)階段,計算機的硬件設(shè)備優(yōu)化改良的速度很快,目前計算機中大部分都為雙核心或者是四核心;而且,計算機軟件也在不斷得到發(fā)展創(chuàng)新,使得分布式系統(tǒng)受到了廣泛的關(guān)注。但是,大部分的算法缺乏對多核心計算機以及分布式系統(tǒng)的優(yōu)化改良,依舊使用的是串行的執(zhí)行方法。在對數(shù)學(xué)算法研究分析的基礎(chǔ)上,我們能把算法分成兩個部分,一個是可并行部分,另一個是不可并行部分,分別運用這兩個不同的部分實現(xiàn)計算機不同核心的分配工作,可以得出最后的相應(yīng)結(jié)果匯總。在運用分布式系統(tǒng)展開并行計算的過程中,相關(guān)技術(shù)人員必須制作出科學(xué)合理的分配方案,計劃好算法的運算量,考慮到所需的網(wǎng)絡(luò)支出開銷。

2.3 提高學(xué)生學(xué)習(xí)算法設(shè)計的興趣

算法設(shè)計專業(yè)課程要求學(xué)生必須掌握一定的概率論、線性代數(shù)等專業(yè)知識,具備一定的數(shù)據(jù)結(jié)構(gòu)分析能力。這便需要授課教師提高自身的教學(xué)質(zhì)量和水平,運用各種不同的多樣化的授課教學(xué)方法,將專業(yè)知識理論與實踐操作實現(xiàn)完美的融合,更好地引導(dǎo)學(xué)生進行算法設(shè)計的學(xué)習(xí)。教師在正式授課之前,需要明確好教學(xué)目的,對學(xué)生提出相應(yīng)的學(xué)習(xí)要求,提高學(xué)生的學(xué)習(xí)主動性;在進行授課的過程中,應(yīng)用多媒體技術(shù)或者其他高科技的手段進行專業(yè)知識的講解,破除傳統(tǒng)陳舊的教學(xué)觀念,將新型科技與現(xiàn)場教學(xué)相互結(jié)合,提升學(xué)生學(xué)習(xí)的興趣;在授課結(jié)束之后,要時刻關(guān)注學(xué)生的學(xué)習(xí)動態(tài),認(rèn)真督促學(xué)生完成相關(guān)的算法設(shè)計的練習(xí)和任務(wù),從而進一步提升學(xué)生學(xué)習(xí)的獨立自覺性。

3 結(jié)論

總的來說,計算機的出現(xiàn)跟數(shù)學(xué)算法之間的聯(lián)系十分密切,如今計算機在不斷得到改進和創(chuàng)新,數(shù)學(xué)算法也在持續(xù)進步。計算機編程方式的改進和優(yōu)化離不開數(shù)學(xué)算法,相關(guān)專業(yè)技術(shù)人員一直在探究二者之間的聯(lián)系。

在對計算機編程方式進行分析研究的過程中,我們要根據(jù)實際的情況進行相應(yīng)的優(yōu)化改進,要努力設(shè)計出合理的結(jié)構(gòu)數(shù)據(jù)、利用并行計算降低計算機執(zhí)行命令的時間、提高學(xué)生學(xué)習(xí)計算機算法設(shè)計的興趣和能力。只有采取一系列合理有效的計算機編程方式改進的措施,才能實現(xiàn)計算機編程方式的革新,讓計算機編程擁有更高效的性能,才能減少計算機編程方式在技術(shù)性方面產(chǎn)生的問題,從而進一步推動我國計算機編程方式的進步,促進信息技術(shù)行業(yè)的良好發(fā)展。

⒖嘉南