有關(guān)計(jì)算機(jī)畢業(yè)論文
有關(guān)計(jì)算機(jī)畢業(yè)論文
雖然計(jì)算機(jī)的計(jì)算能力隨著硬件技術(shù)的發(fā)展一再提高,但科學(xué)的進(jìn)步使人們對(duì)它的需求和期望也在不斷增加。網(wǎng)絡(luò)技術(shù)的普及和飛速發(fā)展為高性能計(jì)算帶來(lái)了新的機(jī)遇,以網(wǎng)絡(luò)為基礎(chǔ)的集群并行計(jì)算機(jī)系統(tǒng)以其較高的性?xún)r(jià)比而引起了人們的廣泛重視。下面是學(xué)習(xí)啦小編為大家推薦的有關(guān)計(jì)算機(jī)畢業(yè)論文,供大家參考。
有關(guān)計(jì)算機(jī)畢業(yè)論文范文一:計(jì)算機(jī)工程能力教學(xué)體會(huì)
1現(xiàn)狀分析
培養(yǎng)高質(zhì)量的軟件開(kāi)發(fā)人才一直是社會(huì)和行業(yè)關(guān)注的焦點(diǎn)。早在11年前,對(duì)于工程教育的迫切性就被人提出來(lái)[1]。工程教育本身也作為一個(gè)系統(tǒng)問(wèn)題被討論[2]?,F(xiàn)在從國(guó)家層面在戰(zhàn)略上建立了軟件學(xué)院進(jìn)行專(zhuān)門(mén)培養(yǎng),各個(gè)高校也不斷推出新的課程、新的措施方案。在這一領(lǐng)域雖然比過(guò)去似乎已經(jīng)有了翻天覆地的變化,但來(lái)自企業(yè)的呼吁似乎一直反映出諸多不盡如人意。更多的思路希望將企業(yè)的力量直接引入到教學(xué),比如實(shí)訓(xùn)基地等[3];而國(guó)家層面也非常關(guān)注實(shí)訓(xùn)[4]。但實(shí)際效果可能變得流于表面,因?yàn)槠髽I(yè)往往難以將核心的工作拿給學(xué)生做,而其訓(xùn)練的項(xiàng)目也并未從更全面系統(tǒng)的角度去設(shè)計(jì),其鍛煉效果就有限了。在軟件開(kāi)發(fā)這一領(lǐng)域,由于其具有變化迅速,新技術(shù)不斷涌現(xiàn)的特點(diǎn),導(dǎo)致不少在教育內(nèi)容上選擇了追逐新技術(shù)、新語(yǔ)言、新平臺(tái),以能用會(huì)用這些流行主流技術(shù)為目標(biāo)。典型的代表就是北大青鳥(niǎo),有些二本的學(xué)生在畢業(yè)前專(zhuān)門(mén)花錢(qián)去青鳥(niǎo)學(xué)習(xí),似乎可以看到這種教育的優(yōu)勢(shì)。但另一個(gè)矛盾的情況是,往往那些關(guān)注員工后勁的公司卻不愿意招聘青鳥(niǎo)的學(xué)生。如果將目光投向國(guó)外的頂級(jí)大學(xué),例如斯坦福,其教學(xué)上并沒(méi)有去“依賴(lài)”校企合作,以及很熱門(mén)的“實(shí)訓(xùn)”。其核心課程依然是過(guò)去的傳統(tǒng)經(jīng)典課程。以一個(gè)研究生為例,一學(xué)期能修2門(mén)課是正常,3門(mén)就很優(yōu)秀。它并沒(méi)有追逐所謂的新技術(shù)。但無(wú)人質(zhì)疑其學(xué)生的工程能力、科研能力和創(chuàng)造能力。
2什么是計(jì)算機(jī)工程能力的核心
什么才是我們軟件開(kāi)發(fā)教育的核心知識(shí)架構(gòu),怎樣才能培養(yǎng)學(xué)生可持續(xù)發(fā)展的核心競(jìng)爭(zhēng)力?我們調(diào)查過(guò)一些非常高水準(zhǔn)的軟件開(kāi)發(fā)者,發(fā)現(xiàn)他們往往在底層軟件上持之以恒地進(jìn)行長(zhǎng)時(shí)間深刻的鍛煉,然后在未接觸的新領(lǐng)域才能非常迅速地掌握核心。例如,一個(gè)非計(jì)算機(jī)專(zhuān)業(yè)的系統(tǒng)分析員曾經(jīng)“只”在DOS這種原始的操作系統(tǒng)下玩了10年,甚至自己寫(xiě)過(guò)一個(gè)漢化的DOS。他只有書(shū)本上的一點(diǎn)點(diǎn)網(wǎng)絡(luò)知識(shí)時(shí),就用一兩天時(shí)間解決了一個(gè)學(xué)通信的研究生1個(gè)月都不能解決的網(wǎng)絡(luò)故障。這是一個(gè)典型的例子,他并沒(méi)有“實(shí)際的”網(wǎng)絡(luò)經(jīng)驗(yàn),什么使得他如此輕松地進(jìn)入了新的領(lǐng)域呢?而另一個(gè)曾就職于vmware、google等頂級(jí)公司的程序員,在Unix下只用C語(yǔ)言做了10年系統(tǒng)級(jí)編程。當(dāng)用Java,C++甚至是javascript時(shí),其學(xué)習(xí)時(shí)間只是1天,很快就比做了幾年專(zhuān)門(mén)java編程的程序員還精通。如何才是軟件開(kāi)發(fā)人員的本質(zhì)力量?什么才能讓他們?cè)谧兓f(wàn)千的新技術(shù)面前屹立不倒,乘風(fēng)破浪?
2.1計(jì)算機(jī)工程能力
我們認(rèn)為計(jì)算機(jī)工程能力包含兩方面的內(nèi)容:(1)核心知識(shí)架構(gòu);(2)計(jì)算機(jī)的思維方式。什么是核心知識(shí)架構(gòu)呢?是反應(yīng)該領(lǐng)域最基本規(guī)律和支撐技術(shù)的知識(shí)。簡(jiǎn)單地說(shuō)就是傳統(tǒng)的操作系統(tǒng)、編譯、數(shù)據(jù)庫(kù)。操作系統(tǒng)將硬件、軟件、高級(jí)語(yǔ)言和匯編融匯在一起,它幾乎包括了軟件工程中所有重要的因素。舉一個(gè)簡(jiǎn)單的例子,似乎只有面向?qū)ο筮@種“高級(jí)東西”才有的虛函數(shù)運(yùn)用,其實(shí)在Linux中就有相應(yīng)的虛文件系統(tǒng)。操作系統(tǒng)是最為復(fù)雜的計(jì)算機(jī)工程之一。編譯融匯了大量的算法,而且能讓大家真正看“穿”語(yǔ)言的外表,深入到其內(nèi)里,體現(xiàn)了最根本的計(jì)算機(jī)技術(shù)。其優(yōu)化技術(shù),也深刻地和硬件交融在一起,很好體現(xiàn)了底層風(fēng)范。數(shù)據(jù)庫(kù),不僅是運(yùn)用算法最多的地方,甚至是超越操作系統(tǒng)的一個(gè)復(fù)雜的系統(tǒng),從緩存技術(shù)到i/o優(yōu)化,到索引,再到事務(wù)處理,無(wú)一不是反映計(jì)算機(jī)最深刻規(guī)律。大家可以發(fā)現(xiàn),所謂核心知識(shí)架構(gòu),都具有兩個(gè)特點(diǎn),反映本質(zhì)規(guī)律,體現(xiàn)軟硬融匯交織。也只有這樣,才能建立下面談到的“計(jì)算機(jī)思維方式”。
2.2核心知識(shí)架構(gòu)
為什么我們沒(méi)包括一些新興的語(yǔ)言和技術(shù)呢?似乎它們很“實(shí)用”。而且已經(jīng)出現(xiàn)的問(wèn)題是,按照傳統(tǒng)科目和方式學(xué)習(xí)后,學(xué)生在企業(yè)什么都不會(huì)。這也正是大家關(guān)注工程教育的初衷。為什么不強(qiáng)調(diào)這些新興實(shí)用技術(shù)的教育還在強(qiáng)調(diào)“古老”的“基礎(chǔ)”。計(jì)算機(jī)領(lǐng)域一個(gè)顯著的特點(diǎn)是,表面上知識(shí)更新非???,新技術(shù)、語(yǔ)言層出不窮。這很容易導(dǎo)致當(dāng)我們發(fā)現(xiàn)學(xué)生能力欠缺時(shí),將問(wèn)題歸罪于新技術(shù)的學(xué)習(xí)不得力,知識(shí)結(jié)構(gòu)老化。但其實(shí)目前的問(wèn)題可以從另外一個(gè)角度考慮,是否是基礎(chǔ)教育不得力?分析國(guó)外著名大學(xué),如斯坦福、伯克利的課程,我們發(fā)現(xiàn)兩個(gè)特點(diǎn):(1)關(guān)鍵的基礎(chǔ)課程,如操作系統(tǒng)、編譯原理、數(shù)據(jù)庫(kù),始終是其最重要的課程,并沒(méi)有過(guò)分追逐各種“新潮”技術(shù)。(2)學(xué)生一學(xué)期能修的課程非常有限,一般為3門(mén)課。而國(guó)內(nèi)卻呈現(xiàn)相反的狀況,比如編譯原理被降到了選修課的角色,新潮課程層出不窮,一個(gè)學(xué)生二年級(jí)一學(xué)期要修13門(mén)課。在這種走馬觀花的狀況下,計(jì)算機(jī)這種具有強(qiáng)烈“手藝”色彩和工程實(shí)踐的學(xué)科,被完全紙上談兵化。而一些可憐的實(shí)驗(yàn)內(nèi)容,還被學(xué)生的復(fù)制拷貝所湮沒(méi)。我們認(rèn)為,恰恰是這種情況,使得基礎(chǔ)核心知識(shí)教育沒(méi)有工程化,沒(méi)有充分動(dòng)手,導(dǎo)致了基礎(chǔ)知識(shí)教育某種程度上的巨大失敗。從以下鮮明的對(duì)比可以窺見(jiàn)問(wèn)題的端倪:國(guó)內(nèi)學(xué)生反映操作系統(tǒng)課程是文科課程(只需要背條款考試即可);而相對(duì)地,國(guó)外著名高校操作系統(tǒng)課程要求學(xué)生實(shí)現(xiàn)“小”操作系統(tǒng)。國(guó)內(nèi)數(shù)據(jù)庫(kù)只講其應(yīng)用(如大量講解sql等運(yùn)用,sql即使非計(jì)算機(jī)專(zhuān)業(yè)人士也很容易學(xué)習(xí),這也是它被發(fā)明的初衷)。斯坦福的數(shù)據(jù)庫(kù)課程中有一門(mén)需要實(shí)現(xiàn)一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)。在筆者走訪(fǎng)的計(jì)算機(jī)工程上優(yōu)秀的人才,發(fā)現(xiàn)其共同的特點(diǎn)就是在諸如操作系統(tǒng)或數(shù)據(jù)庫(kù)上都有很深入的學(xué)習(xí)經(jīng)歷,比如前面提及的自己構(gòu)建過(guò)漢化DOS系統(tǒng),或者在Unix下,做內(nèi)核以及驅(qū)動(dòng)很多年等。而當(dāng)他們接觸新技術(shù)時(shí),之前深刻的經(jīng)驗(yàn)和淬煉的思維就讓他們?nèi)缁⑻硪?,快人一等。更有甚者,?guó)外真正的最頂級(jí)專(zhuān)家,都是在這些領(lǐng)域有無(wú)與倫比水平的專(zhuān)家,從delphi的締造者,轉(zhuǎn)戰(zhàn)到微軟并入主.net平臺(tái)的開(kāi)發(fā),也可看到雄厚的底層知識(shí)和能力的巨大作用。所以“老”知識(shí)并不是障礙,而是通向天堂的階梯。究其原因,就涉及到工程能力的第2個(gè)方面,計(jì)算機(jī)思維方式。
2.3計(jì)算機(jī)思維方式
對(duì)非專(zhuān)業(yè)人士它是很抽象的概念,而對(duì)真正專(zhuān)業(yè)人士,這又是一個(gè)非常鮮活的概念。這里限于篇幅,我們只舉一個(gè)簡(jiǎn)單的例子。面對(duì)在C++中外部代碼如何直接修改私有變量的問(wèn)題,計(jì)算機(jī)的思維方式就是:對(duì)象也是放在內(nèi)存中,只要能拿到對(duì)象的地址,并知道對(duì)象的布局,那么就可修改。而沒(méi)有建立這種思維的人,就完全被高級(jí)語(yǔ)言的語(yǔ)法所左右,無(wú)從下手。一句話(huà),無(wú)法看到本質(zhì),沒(méi)有從下而上的底層思維。核心知識(shí)課程的有效深入教學(xué)和計(jì)算機(jī)思維方式建立有何直接關(guān)系呢?我們認(rèn)為核心知識(shí)因?yàn)槠浞磻?yīng)了計(jì)算機(jī)本質(zhì)規(guī)律,而且從底層建立起來(lái),所以對(duì)其深入掌握運(yùn)用后,它從開(kāi)始的逼迫到最后的陶冶,最終潛移默化地讓受眾建立起“計(jì)算機(jī)思維方式”。而這正是計(jì)算機(jī)工程師安身立命之本,就如同音樂(lè)家有其獨(dú)特的音樂(lè)思維方式一樣。為什么諸如java之類(lèi)的課程于建立計(jì)算機(jī)基本思維不太合適呢?因?yàn)樗邔?,無(wú)法讓學(xué)生看到最下面。而唯有徹底、深刻和系統(tǒng)的底層淬煉,才能真正建立起“計(jì)算機(jī)思維方式”。
3如何打造強(qiáng)大的計(jì)算機(jī)工程能力
大家一方面指責(zé)基礎(chǔ)課程的“空洞”、“無(wú)用”、“陳舊”;另一方面在不斷開(kāi)設(shè)的海量新課和技術(shù)中壓得學(xué)生更加遠(yuǎn)離編程,遠(yuǎn)離實(shí)踐。即使能培養(yǎng)出熟悉某種語(yǔ)言的學(xué)生,也無(wú)法看到他們和培訓(xùn)學(xué)校有何不同。實(shí)訓(xùn)也似乎沒(méi)有根本解決問(wèn)題,我們?cè)趯?shí)踐中發(fā)現(xiàn),往往是那些自己醉心于編程的學(xué)生最后有著卓越的表現(xiàn)。讓基礎(chǔ)知識(shí)能支撐和指導(dǎo)實(shí)踐,而非僅僅“符號(hào)”,并引導(dǎo)學(xué)生進(jìn)行高效的實(shí)踐。
3.1“3塊連一線(xiàn)”,4門(mén)基礎(chǔ)課程整合打造核心知識(shí)架構(gòu)我們將4門(mén)基本課程進(jìn)行貫通式整合,著力塑造學(xué)生的“計(jì)算機(jī)思維”。下層的是3門(mén)基礎(chǔ)課(在上一小節(jié)探討了其在工程能力訓(xùn)練上不可替代的重要地位),對(duì)軟件開(kāi)發(fā)環(huán)境產(chǎn)生支撐。而軟件開(kāi)發(fā)環(huán)境又通過(guò)精心的設(shè)計(jì)和工程實(shí)踐,從應(yīng)用角度將3門(mén)課程所學(xué)的知識(shí)串聯(lián)起來(lái)。從而將基礎(chǔ)知識(shí)和工程開(kāi)發(fā)更有機(jī)整合在一起。首先,闡述為什么將以上課程整合在一起的理由。要回答這個(gè)問(wèn)題,必須先回答什么東西支撐了優(yōu)秀程序員。在我們的調(diào)查人員中,無(wú)一例外地都具有很深厚的底層軟件開(kāi)發(fā)背景。有長(zhǎng)期從DOS的Hack入手的;有長(zhǎng)期從事Unix內(nèi)核編程的;有從Windows的driver起步的;有以反匯編逆向?yàn)楦摹iL(zhǎng)期在最底層的經(jīng)歷,使他們建立了最真實(shí)和能觸摸的系統(tǒng)觀,能以計(jì)算機(jī)的方式思考。所以面臨新技術(shù)時(shí),他們能透過(guò)新形式很快把握其精髓,深刻地把握其實(shí)質(zhì)。“太陽(yáng)下面沒(méi)有真正的新事物”,例如號(hào)稱(chēng)21世紀(jì)最新的重要的軟件技術(shù)AOP(AspectOrientedProgramming,AOP),其實(shí)在20世紀(jì)60年代就出現(xiàn)在了匯編一級(jí)的軟件技術(shù)中,它本質(zhì)就是鉤子技術(shù)的系統(tǒng)化。在底層的軟件世界,我們不僅能夠用到那些所謂的最新的技術(shù),而且能看到其本質(zhì)(我們可能就是用機(jī)器碼自己構(gòu)建出來(lái)的,而不被新技術(shù)的華麗外衣障目)。這些使得具有底層經(jīng)驗(yàn)的開(kāi)發(fā)者,更有創(chuàng)造力,更能創(chuàng)造,也更能洞察迷亂后的本質(zhì),庖丁解牛,解決那些異常復(fù)雜的工程問(wèn)題。舉一個(gè)筆者遇到的真實(shí)例子,一個(gè)具有深刻底層經(jīng)驗(yàn)的程序員(一直只有C語(yǔ)言和操作系統(tǒng)編程經(jīng)驗(yàn))和一個(gè)只有深刻Java經(jīng)驗(yàn)的程序員,在同時(shí)學(xué)習(xí)Javascript的閉包概念時(shí),后者一個(gè)禮拜都還有些似是而非。前者很快就能自如運(yùn)用,且最后指點(diǎn)了后者1個(gè)小時(shí),后者頓時(shí)豁然開(kāi)朗。這是典型的“新”與“老”,上層和底層經(jīng)驗(yàn)在面對(duì)新事物時(shí)的對(duì)比。既然底層軟件賦予我們?nèi)绱藦?qiáng)大的能力,那么哪些是底層軟件呢?大家公認(rèn),操作系統(tǒng)、編譯和數(shù)據(jù)庫(kù)由來(lái)就是計(jì)算機(jī)工程自身的根基。所以,我們必須將這3門(mén)課涉及的知識(shí)好好淬煉。而如何將3門(mén)課的知識(shí)和我們?nèi)粘5能浖_(kāi)發(fā)聯(lián)系起來(lái)呢?如何用它們指導(dǎo)平時(shí)程序的開(kāi)發(fā)呢(我們大多數(shù)是開(kāi)發(fā)用戶(hù)級(jí)軟件,不會(huì)開(kāi)發(fā)內(nèi)核軟件,因此許多人認(rèn)為幾乎整個(gè)在內(nèi)核中的操作系統(tǒng)對(duì)用戶(hù)級(jí)軟件開(kāi)發(fā)無(wú)從指導(dǎo))?另一門(mén)課,《軟件開(kāi)發(fā)環(huán)境》解決了這一問(wèn)題。它有一條主線(xiàn),通過(guò)反匯編將C語(yǔ)言和匯編串聯(lián)起來(lái),讓系統(tǒng)級(jí)的知識(shí)從高級(jí)語(yǔ)言的面紗下展現(xiàn)出來(lái)。同時(shí)用逆向工程這把庖丁之刃,將編譯、鏈接、面向?qū)ο蟮溶浖_(kāi)發(fā)中的重要知識(shí)塊剖剔,讓底層與上層貫通一氣。而逆向的技術(shù)技巧,本身也是非常高級(jí)的軟件開(kāi)發(fā)技術(shù)。因此,我們用“3塊連一線(xiàn)”來(lái)總結(jié)4門(mén)課的關(guān)系是最好不過(guò)了。為什么不納入語(yǔ)言課程,比如C/C++語(yǔ)言?從我們的工程經(jīng)驗(yàn)來(lái)看,語(yǔ)言只是計(jì)算機(jī)原理和思想的載體,是表述方式而已。為了表述形式而專(zhuān)門(mén)花大力氣是不值得的。比如,國(guó)外的著名大學(xué)很多都不開(kāi)設(shè)語(yǔ)言課,在其他課程作業(yè)中必須用C語(yǔ)言編程,學(xué)生們就在那里鍛煉了。真正的語(yǔ)言的力量并非來(lái)自語(yǔ)言本身,而是底層知識(shí)為支撐的項(xiàng)目鍛煉。我們的思路是以構(gòu)建式完成大量的完整系統(tǒng)的編寫(xiě),這樣就很好鍛煉了軟件開(kāi)發(fā)和工程能力。同時(shí),“軟件開(kāi)發(fā)環(huán)境”本身從逆向?qū)用嬉矊?duì)語(yǔ)言有了深刻的剖析,這是純粹的語(yǔ)言課難以完成的。另外,從大綱安排上,我們?cè)诖笠痪蜁?huì)讓學(xué)生用C語(yǔ)言來(lái)初步接觸程序編寫(xiě),這時(shí)并不適合放入太高級(jí)主題。而在教學(xué)中,語(yǔ)言的力量已經(jīng)滲透到一個(gè)個(gè)工程構(gòu)建中,隨風(fēng)潛入夜了。為什么不納入算法課程?從某種程度上,“程序就是算法與數(shù)據(jù)結(jié)構(gòu)嗎”?我們認(rèn)為在系統(tǒng)中運(yùn)用算法,算法才具有生命力。而編譯、操作系統(tǒng)、數(shù)據(jù)庫(kù)以及我們專(zhuān)門(mén)設(shè)立的一些課程設(shè)計(jì)將全面運(yùn)用各種算法和數(shù)據(jù)結(jié)構(gòu)。在實(shí)戰(zhàn)中運(yùn)用并學(xué)習(xí)提升才是王道。這也正是構(gòu)建式學(xué)習(xí)的精髓所在,這也正是探索式學(xué)習(xí)培養(yǎng)學(xué)生的創(chuàng)造能力的精髓所在。算法課已經(jīng)為我們準(zhǔn)備了元件,就看你怎么去組裝甚至改造。
3.2以構(gòu)建主義的思路,深度實(shí)踐的風(fēng)格改革課程
前面我們論述了底層知識(shí)架構(gòu)的重要性,那么怎么來(lái)將它們實(shí)際地建立在學(xué)生的工程實(shí)踐中呢?簡(jiǎn)單地說(shuō)就是“構(gòu)建一個(gè)具體而微的系統(tǒng)”。講操作系統(tǒng)就構(gòu)建一個(gè)小操作系統(tǒng),講編譯原理就構(gòu)建一個(gè)小編譯器。同時(shí),設(shè)計(jì)一些跨度較大的課程設(shè)計(jì)覆蓋這些課程的一些重點(diǎn)內(nèi)容。構(gòu)建完整系統(tǒng)本身就可真實(shí)淬煉工程能力,而這些內(nèi)容的復(fù)雜性、難度以及運(yùn)用知識(shí)點(diǎn)的廣度,本身就超越了簡(jiǎn)單的企業(yè)實(shí)訓(xùn)項(xiàng)目,在培養(yǎng)人才方面具有系統(tǒng)性、完整性、挑戰(zhàn)性獨(dú)特優(yōu)點(diǎn)。我們需要的是運(yùn)用團(tuán)隊(duì)的思路和現(xiàn)代軟件工程的手段,將其開(kāi)發(fā)過(guò)程管理發(fā)起來(lái),從而熟悉企業(yè)級(jí)開(kāi)發(fā)的工具鏈,將軟件工程學(xué)到的知識(shí)貫通到實(shí)作中。這也回答了“和以前相似的強(qiáng)調(diào)基礎(chǔ)課程教育,什么特點(diǎn)使得我們的做法能獲得強(qiáng)大的工程能力?”這一問(wèn)題。以前更多注重理論知識(shí)的學(xué)習(xí),而現(xiàn)在的做法是回歸計(jì)算機(jī)工程的自身科學(xué)規(guī)律———實(shí)踐為王。
3.3改革考核評(píng)價(jià)標(biāo)準(zhǔn),充分強(qiáng)調(diào)動(dòng)手實(shí)踐
以前我們一直是卷面考試,實(shí)驗(yàn)分?jǐn)?shù)只是象征性的點(diǎn)綴。這本身違反了計(jì)算機(jī)工程的特點(diǎn)。只有改變?cè)u(píng)價(jià)考核標(biāo)準(zhǔn),才能真正驅(qū)動(dòng)學(xué)生充分鍛煉工程。在課程軟件開(kāi)發(fā)環(huán)境中,我們采取了平時(shí)的考試結(jié)合期末考試的方式,而兩者均為軟件編寫(xiě)。期末考試在實(shí)驗(yàn)室上機(jī)編撰指定題目。不強(qiáng)調(diào)對(duì)一些函數(shù)名等死知識(shí)點(diǎn)的記憶,可以用在線(xiàn)幫助。這本身也符合軟件開(kāi)發(fā)的規(guī)律。
4結(jié)束語(yǔ)
我們?cè)谟?jì)算機(jī)工程教育上試圖做一些回歸本質(zhì)的工作,也取得了一些效果。比如在軟件開(kāi)發(fā)環(huán)境中,學(xué)生普遍認(rèn)為:“似乎將3年學(xué)的程序課全學(xué)習(xí)了,收獲很大”。更有同學(xué),在外企公司的面試中,直接運(yùn)用了課堂上的知識(shí),這在傳統(tǒng)的教學(xué)環(huán)節(jié)中是難以獲取的。但整個(gè)工作尚在起步階段,所以仍有很多工作需要做,許多環(huán)節(jié)需要優(yōu)化。我們希望在以后的工作中更深入探索工程教育的規(guī)律和本質(zhì)。
有關(guān)計(jì)算機(jī)畢業(yè)論文范文二:計(jì)算機(jī)道路勘測(cè)計(jì)算分析
1計(jì)算水平測(cè)量的地面高程數(shù)據(jù)
在工程勘測(cè)以及工程設(shè)計(jì)中,水平測(cè)量是一個(gè)重要環(huán)節(jié)。這里介紹一下利用EXCEL電子表格來(lái)水平測(cè)量計(jì)算地面高程的方法。
1.1建立計(jì)算模板的步驟
(1)打開(kāi)EXCEL電子表格應(yīng)用程序,設(shè)置頁(yè)面,可設(shè)紙張為A4紙;(2)打開(kāi)工具菜單,在選項(xiàng)欄內(nèi)設(shè)置自動(dòng)設(shè)置小數(shù)點(diǎn)位數(shù)為3位小數(shù);(3)選中工作表A欄,打開(kāi)格式菜單,選中“單元格”,在單元格菜單中選中“數(shù)字”欄,自定義單元格格式為“K0+000”;(4)選中B、C、D、E、F欄,打開(kāi)格式菜單,在單元格中設(shè)置自定義單元格式為“0.000”;(5)在E2單元格內(nèi)輸入“=F2+B2+C2”,在F3單元格內(nèi)輸入“=E2-C3-D3”,選中E2并復(fù)制E2至整個(gè)E欄,同樣,選中F3并復(fù)制F3至F3以下的F欄單元格。(6)打開(kāi)Sheet2工作表,在A1單元格內(nèi)輸入“=Sheet!A1”,在B1單元格內(nèi)輸入“=Sheet1!F1”,選中A1與B1單元格,拖動(dòng)復(fù)制小柄至整個(gè)A、B欄,生成的Sheet2。最后,選擇文件菜單,將整個(gè)工作薄另存為模板格式,這樣,整個(gè)模板已全部建成,以后使用時(shí)只需“新建”文件,調(diào)出模板使用即可。使用時(shí)只需輸入后視、中間點(diǎn)及前視的數(shù)據(jù),系統(tǒng)自動(dòng)按照已經(jīng)建立的公式關(guān)系進(jìn)行新數(shù)據(jù)的計(jì)算,并自動(dòng)更新計(jì)算結(jié)果,十分方便快捷。
1.2實(shí)際使用該電子模板的注意事項(xiàng)
*刪除字符應(yīng)用Del鍵或用清除快捷鍵,不可用刪除單元格而下或右單元格替代的命令;*Sheet2可以單獨(dú)存為帶空格格式的文本文件,以備其他應(yīng)用程序之需。
2標(biāo)準(zhǔn)土石方數(shù)量表的計(jì)算
土石方數(shù)量表的計(jì)算與編制是路基工程中的重要內(nèi)容,由于土方計(jì)算比較繁雜,本樁利用、調(diào)配及借方、棄方必須保持一定的平衡關(guān)系,在逐樁計(jì)算及調(diào)配時(shí)如果有一處錯(cuò)誤,最后在匯總時(shí)也不能平衡,一般的手工計(jì)算在計(jì)算時(shí)即十分煩瑣,出現(xiàn)錯(cuò)誤檢查時(shí)更是必須從頭逐一核對(duì),既煩瑣而又易于出錯(cuò)。而利用計(jì)算機(jī)進(jìn)行聯(lián)動(dòng)計(jì)算,則既可以提高計(jì)算準(zhǔn)確性,又可以十分方便于核對(duì)檢查,大大節(jié)約了人力和工作時(shí)間。
2.1考慮在扣除路面路槽之后填挖面積的分析與計(jì)算
在建立EXCEL土石方計(jì)算表的模板前,首先需要得到填方與挖方的面積計(jì)算數(shù)據(jù),這可以從一些公路設(shè)計(jì)系統(tǒng)中的橫斷面計(jì)算中得到,在得到原始填挖面積的計(jì)算數(shù)據(jù)后,即可進(jìn)行扣路槽后填挖面積的變換,具體的計(jì)算公式如圖1所示。單純應(yīng)用公式“扣路槽后挖方面積=原始挖方面積+挖方扣路槽面積”與“扣路槽后填方面積=原始填方面積-填方扣路槽面積”,則扣路槽后的面積填方數(shù)值有可能出現(xiàn)負(fù)值,因此,必須進(jìn)行對(duì)此負(fù)值的處理,即就是將該值轉(zhuǎn)移為挖方值的步驟。上圖中所列公式內(nèi)容中,H列與I列即應(yīng)用了邏輯函數(shù)“if”語(yǔ)句處理這一過(guò)程,此公式可總結(jié)為:挖方面積=IF(Gi>0,Fi,Fi-Gi)(說(shuō)明:若Gi>0,則填方值為Fi,若Gi<0,則填方值為Fi-Gi);填方面積=IF(Gi<0,0,Gi)(說(shuō)明:若Gi<0,則填方值為0,若Gi>0,則填方值為Gi)。這樣便對(duì)F、G列單純的加減結(jié)果進(jìn)行了修正,得到最終扣路槽后的“挖方面積”與“填方面積”。
2.2本樁利用的分析計(jì)算
本樁利用在編制程序時(shí)應(yīng)注意幾種填挖土石類(lèi)型的分配關(guān)系,并考慮挖方分類(lèi)的總量與填方利用時(shí)的關(guān)系。總結(jié)程序公式如表1。表1中還可以再加上其他土石類(lèi)別,并可以自由定制哪一類(lèi)為優(yōu)先利用,在此限于篇幅,不再贅述。
2.3遠(yuǎn)運(yùn)利用調(diào)配的分析
在得到填缺及挖余的計(jì)算結(jié)果后,即可以著手進(jìn)行土方的調(diào)配。調(diào)配時(shí)可充分利用電子表格中下方狀態(tài)欄內(nèi)的SUM求和功能,在選中需要調(diào)配的一部分挖余數(shù)據(jù)或者選中需要被調(diào)入的填缺一部分?jǐn)?shù)據(jù)后,下方狀態(tài)欄內(nèi)可以即時(shí)顯示所選中的數(shù)據(jù)的求和結(jié)果,這樣我們可以對(duì)需要調(diào)配的挖余及填缺量進(jìn)行即時(shí)的計(jì)算與對(duì)比,從而確定調(diào)配的位置、方向及數(shù)量?;竟胶头椒?lèi)似于以上各節(jié)所述,在此從略。在調(diào)配結(jié)束后,可以繼續(xù)利用該軟件的繪圖功能,繪出連接線(xiàn),示意調(diào)配方向。值得一提的是,可以在表格打印區(qū)外建立公式:挖方欄+借方欄=填方欄+棄方欄(可以任意對(duì)各欄數(shù)據(jù)乘或除某一松實(shí)系數(shù),從而使天然方與壓石方得到換算,使其可以相加),此公式可以在每一行都建立,從而對(duì)每行隨時(shí)都進(jìn)行了閉合驗(yàn)算,隨時(shí)糾正可能的失誤。