第一篇:校園航天探測(cè)器的設(shè)計(jì)與實(shí)現(xiàn)論文
1.研究背景和意義
美國(guó)“信使號(hào)”水星探測(cè)飛船于 2004 年 8 月 3 日在佛羅里達(dá)州卡納維拉爾角的肯尼迪航天中心由“德?tīng)査?2”型火箭送入太空,明亮的火焰照亮了當(dāng)時(shí)灑滿月光的夜空輝映在大西洋上?!靶攀固?hào)”開(kāi)始了計(jì)劃中的耗時(shí) 6 年半、飛行 79 億公里的探測(cè)遠(yuǎn)征。2015 年 04月 30 日,北京時(shí)間(即 5 月 1 日)“信使號(hào)”探測(cè)器通過(guò)硬著陸以3.9km/s 撞擊水星表面的方式,結(jié)束其探測(cè)使命,在水星北極附近留下一個(gè)直徑為 16 米的撞擊坑,新的探測(cè)器將于 2024 年抵達(dá),屆時(shí)我們才能看到這個(gè)撞擊坑的圖像。
以此為契機(jī),作者特研發(fā)了快樂(lè)者 1 號(hào)校園航天探測(cè)器,旨在通過(guò)制作、發(fā)射校園航天探測(cè)器,使青少年既能?chē)L試到探測(cè)器在天空飛行過(guò)程中執(zhí)行“探測(cè)任務(wù)”的樂(lè)趣,又能學(xué)到一些航天科技知識(shí),對(duì)培養(yǎng)青少年從小養(yǎng)成“動(dòng)腦想、動(dòng)手做”的良好習(xí)慣以及激發(fā)其航天科技創(chuàng)新熱情,乃至為國(guó)家培養(yǎng)未來(lái)航天人才具有舉足輕重的作用。
2.基本原理
快樂(lè)者 1 號(hào)校園航天探測(cè)器搭乘自制校園航天火箭,在野外發(fā)射場(chǎng)點(diǎn)火升空后,攝像頭以及傳感器在空中開(kāi)展“觀天、看地”的預(yù)定科學(xué)探測(cè)任務(wù)以及追蹤火箭的飛行姿態(tài),并將實(shí)時(shí)畫(huà)面、照片通過(guò)發(fā)射天線傳回到地面接收機(jī)。
3.試驗(yàn)情況
這一項(xiàng)目研究規(guī)劃從 2014 年開(kāi)始,先后對(duì)準(zhǔn)備搭載快樂(lè)者 1號(hào)校園航天探測(cè)器的自制火箭運(yùn)載能力以及穩(wěn)定性進(jìn)行了 3 次野外發(fā)射試驗(yàn)。最近一次發(fā)射快樂(lè)者 1 號(hào)探測(cè)器的時(shí)間是 2015 年 5月 1 日,之所以選擇這一天是因?yàn)檫@一天(北京時(shí)間)是美國(guó)“信使號(hào)”壯麗撞擊水星的時(shí)間??鞓?lè)者 1 號(hào)發(fā)射升空飛行一段時(shí)間后,類(lèi)似“信使號(hào)”以硬著陸方式撞擊地面,撞擊地面后儀器殘骸散落一地。因經(jīng)費(fèi)、時(shí)間等客觀因素存在,快樂(lè)者 1 號(hào)當(dāng)前基于青少年航天科技教育而研發(fā),屬于民間航天技術(shù)的低空飛行探測(cè)器,有別于國(guó)家級(jí)層面太空飛行器,因此作者首次引入“校園航天”概念,并獲得了首個(gè)這一領(lǐng)域的專(zhuān)利。
4.創(chuàng)新點(diǎn)
(1)其特征主要是將攝像機(jī)收集數(shù)據(jù)通過(guò)發(fā)射天線,采用2.4GHz 無(wú)線射頻技術(shù)發(fā)送照片、視頻及音頻訊號(hào)至地面接收機(jī)。
(2)接收機(jī)可以在地面時(shí)實(shí)觀察空中探測(cè)的數(shù)據(jù),并將所探測(cè)器的數(shù)據(jù)進(jìn)行存儲(chǔ),倘若探測(cè)器在落地過(guò)程中意外墜毀,存儲(chǔ)在探測(cè)器中數(shù)據(jù)可能丟失,但地面接收機(jī)已存儲(chǔ)了數(shù)據(jù),可有效防止數(shù)據(jù)丟失。
(3)根據(jù)國(guó)家知識(shí)產(chǎn)權(quán)局?jǐn)?shù)據(jù)檢索,作者所引入“校園航天”概念,目前有且只有 1 個(gè)“校園航天”領(lǐng)域的專(zhuān)利,即文章所表述的“探測(cè)器(快樂(lè)者 1 號(hào)校園航天探測(cè)器)”.5.進(jìn)一步完善設(shè)想
第二篇:航天物資信息網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
龍?jiān)雌诳W(wǎng) http://.cn
航天物資信息網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 作者:李娟
來(lái)源:《現(xiàn)代電子技術(shù)》2012年第15期
摘要:介紹了“航天物質(zhì)信息網(wǎng)絡(luò)管理系統(tǒng)”開(kāi)發(fā)的目的、意義,重點(diǎn)總結(jié)了系統(tǒng)的設(shè)計(jì)結(jié)構(gòu)及原理、功能設(shè)計(jì)、開(kāi)發(fā)過(guò)程、應(yīng)用效果及與時(shí)俱進(jìn)需改進(jìn)的方向、要求。該系統(tǒng)融會(huì)計(jì)統(tǒng)計(jì)、計(jì)劃采購(gòu)、庫(kù)房管理于一體,實(shí)現(xiàn)了基層物資會(huì)計(jì)與物資統(tǒng)計(jì)的電算化管理,減少繁瑣手工操作,大大提高了物資信息管理水平。
關(guān)鍵詞:航天物質(zhì);信息管理系統(tǒng);局域網(wǎng)管理;電算化管理
第三篇:信息化校園的設(shè)計(jì)與實(shí)現(xiàn)
信息化校園的設(shè)計(jì)與實(shí)現(xiàn)
信息、材料、能源作為人類(lèi)社會(huì)的三大資源,它的利用雖然伴隨 人類(lèi)社會(huì)的發(fā)展,古已有之,但遠(yuǎn)非充分。人們從三千年前以“驛馬”或烽火臺(tái)“傳遞信息到今天以千兆比特的量,以光的速度交換信息,從而迎來(lái)了以數(shù)字化。網(wǎng)絡(luò)化為主要特征的信息化時(shí)代。
就當(dāng)今世界規(guī)模的發(fā)展趨勢(shì)而言,信息技術(shù)已經(jīng)不僅僅是信息產(chǎn)業(yè)本身的問(wèn)題,必將導(dǎo)致人類(lèi)社會(huì)。文化。思想。經(jīng)濟(jì)等各方面的變革,必將為人文科學(xué)和社會(huì)科學(xué)注入全新的內(nèi)涵,給整個(gè)人類(lèi)社會(huì)帶來(lái)一次全新的沖擊。而大學(xué)校園是社會(huì)的晴雨表,正面臨著前所未有的巨變。大學(xué)的基本特征是在“融通古今,學(xué)貫中西”的教授指導(dǎo)下,一批最有活力的青年學(xué)子從事著“繼承發(fā)展,研究開(kāi)拓和教學(xué)相長(zhǎng)”的創(chuàng)新活動(dòng)。因而正在日益成為社會(huì)知識(shí)和科技發(fā)展的中樞。
于是,伴隨著新的千年的來(lái)臨,一股強(qiáng)音,信息化的強(qiáng)音,震響在時(shí)代的上空,激蕩于古老而青春的大學(xué)校園。一切對(duì)時(shí)代變革保持敏銳感知的人們,一切洞悉科教興國(guó)之深遠(yuǎn)意義的人們,都在關(guān)注并思考這樣一個(gè)迫切的問(wèn)題:大學(xué)校園,何去何從?
在信息化浪潮一次又一次沖擊我們所處的校園的時(shí)候,當(dāng)我們所處的大學(xué)校園在一次又一次的沖擊下,卻激發(fā)出更強(qiáng)活力的時(shí)候,我們才發(fā)現(xiàn):計(jì)算機(jī)最早在大學(xué)校園里普及,網(wǎng)絡(luò)最為廣泛地在大學(xué)校園里得到運(yùn)用,校園人也最先。最迅速地學(xué)會(huì)在信息化浪潮中生存成長(zhǎng)。那些古老的。沿襲數(shù)百年的教育和學(xué)習(xí)模式終于一點(diǎn)點(diǎn)被潮流吞沒(méi),日新月異的信息技術(shù)正在改變校園的原有面貌。
今天,我們猛然發(fā)現(xiàn),大學(xué)校園已經(jīng)駛?cè)肓诵畔⒒目燔?chē)道,信息化下的大學(xué)校園革命已經(jīng)走上了發(fā)展之路。
那么,什么是信息化校園,未來(lái)的信息化校園與我們今天的生活環(huán)境有多大的不同,校園的信息化主要體現(xiàn)在哪些方面呢?
一、什么是信息化校園
所謂信息化校園,就是一個(gè)網(wǎng)絡(luò)化。數(shù)字化。智能化有機(jī)結(jié)合的新型教育。學(xué)習(xí)和研究的校園平臺(tái),這個(gè)平臺(tái)以高度發(fā)達(dá)的計(jì)算機(jī)網(wǎng)絡(luò)為其核心技術(shù)支撐,以信息和知識(shí)資源的充分共享為其手段,以培養(yǎng)善于獲取。加工。處理和利用信息與知識(shí)的學(xué)生為其主要目標(biāo),以校園成為整個(gè)社會(huì)知識(shí)。信息的基本創(chuàng)新與傳播中樞為其主要社會(huì)效應(yīng)。
二、校園信息化的主要體現(xiàn)
1、社區(qū)建設(shè)方面
我們根據(jù)社區(qū)的特征可知,校園也是一個(gè)小社區(qū),它有自己共同生活的人群;有一定的地獄界限;有一套制度規(guī)范;有自己的生活服務(wù)設(shè)施;有屬于自己的文化??但隨著信息時(shí)代的到來(lái),虛擬現(xiàn)實(shí)必將出現(xiàn),傳統(tǒng)的校園社區(qū)被賦予了新的內(nèi)涵,虛擬身份。虛擬共同體。虛擬社區(qū)將完全改變我們真實(shí)的生活。
2、學(xué)習(xí)方面
學(xué)習(xí),是校園的一個(gè)永恒的主題。如何才能更好地利用信息化校園的條件,提高我們的學(xué)習(xí)效果和效率,正是信息化校園擔(dān)負(fù)的責(zé)任。首先,信息化對(duì)當(dāng)代學(xué)子學(xué)習(xí)的影響是學(xué)習(xí)環(huán)境和手段的改變。其次,信息技術(shù)的廣泛運(yùn)用帶動(dòng)了知識(shí)體系的革命。
3、教育方面
信息技術(shù)對(duì)教育的強(qiáng)大沖擊,給我們帶來(lái)了一個(gè)“遠(yuǎn)程教育”的新概念。隨著寬帶的增加,那些給教育添加趣味和娛樂(lè)的新形式,如傳送聲音。圖象片段。彩色照片都將成為可能。這樣的結(jié)果是向電子化教育更進(jìn)了一步。學(xué)生呆在寢室就可以上課,不必再跑得很遠(yuǎn);教授也不必為課堂上有人打瞌睡而感到羞辱,也免得更壞的學(xué)生帶著刀槍?zhuān)酒愤M(jìn)課堂。
4、人文方面
在信息化浪潮的沖刷下,整個(gè)世界都有常新的感覺(jué)。于是,昨天已經(jīng)古老。當(dāng)信息化校園取代了傳統(tǒng)校園之時(shí),所有的莘莘學(xué)子都在網(wǎng)上邂逅,面對(duì)冰冷的芯片,誰(shuí)還能看見(jiàn)一張張熱情的面孔,那一顆顆曾經(jīng)激蕩而年輕的心。
三、深刻剖析信息化下的教育模式
年輕一代的想象力和創(chuàng)造力是一種非??少F的財(cái)富,而他們比任何人更加關(guān)注教育的發(fā)展,對(duì)教育的利弊有著更深刻的體會(huì),因此對(duì)未來(lái)教育的發(fā)展趨勢(shì)有著最豐富的想象。當(dāng)然,對(duì)那些尚未完全實(shí)現(xiàn)的領(lǐng)域,還不可能有一個(gè)完全準(zhǔn)確的描述。基于現(xiàn)代信息技術(shù)的發(fā)展,在信息化強(qiáng)烈沖擊的這場(chǎng)遲早會(huì)來(lái)到的校園革命里,讓我們把更多的目光投向教育,用我們并不成熟的想法來(lái)闡述一下自己的觀點(diǎn),也無(wú)可厚非。
1、網(wǎng)絡(luò)化與數(shù)字化
在以往的學(xué)校,不同專(zhuān)業(yè)之間老死不相往來(lái)的情況大量存在,這顯然不能適應(yīng)現(xiàn)代科學(xué)技術(shù)發(fā)展的要求。而今,越來(lái)越多的交叉學(xué)科,邊緣學(xué)科都要涉及多門(mén)學(xué)科的知識(shí),不同學(xué)科之間相互借鑒,相互滲透的現(xiàn)象越來(lái)越普遍。這都需要實(shí)現(xiàn)校園的各種軟件和硬件設(shè)備為全體師生共享,并同時(shí)要求有科學(xué)的管理來(lái)維持秩序。
基于大學(xué)角色轉(zhuǎn)變的要求,實(shí)現(xiàn)學(xué)科知識(shí)的網(wǎng)絡(luò)化和智能化,需要在現(xiàn)有的基礎(chǔ)上發(fā)展網(wǎng)絡(luò)化校園。使教學(xué)。公益等各種活動(dòng)都以網(wǎng)絡(luò)為基礎(chǔ),這樣可以充分調(diào)動(dòng),發(fā)揮學(xué)生的學(xué)習(xí)及應(yīng)用能力,使大學(xué)校園與社會(huì)生活迅速而有效的接軌。
2、教室大沖浪
利用計(jì)算機(jī)技術(shù)。網(wǎng)絡(luò)技術(shù)。多媒體技術(shù)進(jìn)行教學(xué)活動(dòng),將多個(gè)多媒體計(jì)算機(jī)連接起來(lái)以實(shí)現(xiàn)多媒體通信和共享多媒體數(shù)據(jù)的計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)。將多媒體網(wǎng)絡(luò)用于教學(xué)中。可以把文字。圖象。動(dòng)畫(huà)。聲音以及各種教學(xué)軟件引入教學(xué)實(shí)踐中,從而以先進(jìn)的手段改變傳統(tǒng)的教學(xué)模式。
3、資源的無(wú)限化
高校是知識(shí)和人才密集的地方,是對(duì)時(shí)代特征最為敏感的地方,所以信息活動(dòng)的網(wǎng)絡(luò)化是高校師生的最大需求。于是,高校應(yīng)該成立一個(gè)信息資源中心,集成本校各類(lèi)信息資源,并通過(guò)將用戶與本校資源連接起來(lái)。幫助用戶搜尋和利用整個(gè)信息資源,使其信息服務(wù)社會(huì)化的一種體制。同時(shí),中心可面向社會(huì),走向產(chǎn)業(yè)化,把整個(gè)高校的教學(xué),科研及各項(xiàng)管理工作帶向更高層次。
如何解決社會(huì)對(duì)教育的需求和目前教育機(jī)構(gòu)設(shè)置,師資等方面的供需矛盾,使有限的教育資源得到合理利用和共享將成為今后教育界的一個(gè)重要問(wèn)題,但愿隨著信息化校園革命的到來(lái),這些問(wèn)題都會(huì)迎刃而解。
變革的潮水一輪輪洗刷著的地球,給世界帶來(lái)一場(chǎng)場(chǎng)令人驚異的變幻,此中,我們的校園也走過(guò)一番番滄海桑田。這是一個(gè)一切神話都將成為可能的時(shí)代,一切的既有都在經(jīng)受?chē)?yán)峻考驗(yàn)的時(shí)代。以至有人說(shuō),信息化的滔滔洪流終將淹沒(méi)我們的校園,未來(lái)的日子我們?cè)跀?shù)字化的網(wǎng)絡(luò)里彼此相連。
無(wú)論今后怎樣,我們都在文化的滋養(yǎng)下成長(zhǎng)與生活。找尋我們生活的意義,但我們同時(shí)也是文化的建設(shè)者與創(chuàng)造者,我們不會(huì)被技術(shù)奴役,我們會(huì)在技術(shù)營(yíng)造的五彩斑斕里活出生命的真諦。
二十一世紀(jì)是科學(xué)技術(shù)競(jìng)爭(zhēng)和民族素質(zhì)競(jìng)爭(zhēng)的時(shí)代,其實(shí)質(zhì)是人才、教育的競(jìng)爭(zhēng)。教育的歷史告訴我們,教育的每次重大變革和發(fā)展都離不開(kāi)科學(xué)技術(shù),科學(xué)技術(shù)是第一生產(chǎn)力,也是教育發(fā)展的重要?jiǎng)恿Α_M(jìn)入九十年代以來(lái),多媒體和計(jì)算機(jī)網(wǎng)絡(luò)逐漸被引入教學(xué)過(guò)程,成為現(xiàn)代教育的技術(shù)基礎(chǔ)。實(shí)施以校園網(wǎng)為基礎(chǔ)的教育信息化工程,研究現(xiàn)代信息技術(shù)對(duì)教育思想、教育管理、教育內(nèi)容、教育方法、教育手段和教育過(guò)程的作用和影響,探索建構(gòu)現(xiàn)代教育技術(shù)環(huán)境下的新型教學(xué)模式,已成為新時(shí)期教育所面臨的新課題。
四、利用校園網(wǎng)建構(gòu)的智能環(huán)境把學(xué)校建成一個(gè)生動(dòng)活潑的,充滿生機(jī)的學(xué)習(xí)環(huán)境和場(chǎng)所
1、改革課堂教學(xué)模式,使學(xué)生的學(xué)習(xí)活動(dòng)成為一種自主愉快、探索創(chuàng) 造的過(guò)程 教學(xué)模式是課程設(shè)計(jì)、教材建設(shè)、指導(dǎo)課堂和其它教學(xué)環(huán)境中教學(xué)活動(dòng)的一種計(jì)劃或范式。
專(zhuān)家指出,圍繞著課堂教學(xué)多年來(lái)開(kāi)展了不少教學(xué)改革試驗(yàn),但是,多數(shù)還停留在單一的和淺表層,究其原因,是教學(xué)模式基本沒(méi)有改變。
近年來(lái),我們通過(guò)計(jì)算機(jī)與學(xué)科教學(xué)整合的實(shí)驗(yàn),積極探索基于計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的“雙主”教學(xué)模式。
①、傳統(tǒng)的以教師為中心的模式中,教師是整個(gè)教學(xué)活動(dòng)的主宰,學(xué)生處于被動(dòng)接受老師灌輸知識(shí)的地位,教學(xué)的出發(fā)點(diǎn)和歸宿是千方百計(jì)讓學(xué)生掌握各種應(yīng)試技巧。學(xué)習(xí)的基本過(guò)程是感知、理解、鞏固和運(yùn)用,教師在講臺(tái)上講述、示范、演示,學(xué)生相應(yīng)地吸收、記憶、存儲(chǔ),課堂上圈劃重點(diǎn),課后反復(fù)抄寫(xiě)、背誦。這種教學(xué)模式,雖然有利于系統(tǒng)的科學(xué)知識(shí)的傳授,有利于對(duì)學(xué)生進(jìn)行嚴(yán)格的訓(xùn)練和提高識(shí)記知識(shí)的效率。但它的致命缺陷在于,嚴(yán)重地抑制了學(xué)生的個(gè)性發(fā)展,束縛了學(xué)生創(chuàng)新思維和實(shí)踐能力的培養(yǎng)。
②、以學(xué)生為中心的模式,較之以教師為中心的模式是一大進(jìn)步,它 有利于兒童天性的發(fā)展,使每個(gè)學(xué)生都可能找到適合自己學(xué)習(xí)個(gè)性的學(xué)習(xí)方法和學(xué)習(xí)內(nèi)容。這種模式的問(wèn)題在于,它很難有效調(diào)動(dòng)其實(shí)很難以調(diào)動(dòng)的兒童的自覺(jué)性,操作不到位則容易流于放任。
③、依據(jù)何克抗、李克東等專(zhuān)家的研究,“雙主模式”介于以教師為中心和以學(xué)生為中心的教學(xué)模式之間,它既要發(fā)揮教師的主導(dǎo)作用,又要充分體現(xiàn)學(xué)生的認(rèn)知主體作用,既要把兩者的長(zhǎng)處吸收過(guò)來(lái),又把兩者的消極因素加以避免。這就是在基本保留“傳遞--接受“式教學(xué)活動(dòng)進(jìn)程的條件下,利用計(jì)算機(jī)作為教育過(guò)程的基本環(huán)境,在建構(gòu)主義理論指導(dǎo)下通過(guò)人機(jī)交互讓學(xué)生更多地去主動(dòng)思考、探索、發(fā)現(xiàn),從而形成一種新的教學(xué)活動(dòng)進(jìn)程的穩(wěn)定結(jié)構(gòu)形式。
④、“雙主模式”的可操作性的依據(jù)是,學(xué)生學(xué)習(xí)的主體性構(gòu)成了教育學(xué)理論的基石,教育實(shí)踐的主干職能、規(guī)范和具體操作方法,只能?chē)@主體并由主體來(lái)進(jìn)行。a、“雙主模式” 提倡民主的教學(xué)氛圍,鼓勵(lì)學(xué)生大膽的質(zhì)疑,培養(yǎng)學(xué)生的批判能力,有利于發(fā)揮認(rèn)知主體的主動(dòng)性,為具有創(chuàng)新意識(shí)和創(chuàng)造能力人材的成長(zhǎng)提供了良好的土壤。b、“雙主模式”是面向全體的教育,面向全體,是教學(xué)的基本原則。c、“雙主模式”把學(xué)生看作是寶貴的教育資源,把學(xué)生的差異性也作為可供開(kāi)發(fā)的資源。d、“雙主模式”重視每個(gè)學(xué)生具有的發(fā)展和創(chuàng)造潛能,俗話說(shuō),跳一跳就可以把果子摘下來(lái)。e、“雙主模式”引導(dǎo)學(xué)生參與學(xué)習(xí)的全過(guò)程,給學(xué)生主動(dòng)權(quán),讓學(xué)生唱主角,多給學(xué)生提供講和練的機(jī)會(huì),培養(yǎng)學(xué)生自我表現(xiàn)的能力。f、“雙主模式”注重教給學(xué)生學(xué)習(xí)方法,教會(huì)學(xué)生思考,教會(huì)學(xué)生討論,教會(huì)學(xué)生總結(jié),培養(yǎng)學(xué)生自得能力。
⑤、“雙主模式”的實(shí)踐特征是,a、從教育技術(shù)學(xué)上看,是以“教”為中心的教學(xué)設(shè)計(jì)理論與以“學(xué)”為中心教學(xué)設(shè)計(jì)理論的結(jié)合。b、從整個(gè)進(jìn)程看,教師有時(shí)處于中心地位,學(xué)生有時(shí)處于傳遞接受學(xué)習(xí)狀態(tài)。但更多的是學(xué)生在教師指導(dǎo)和同學(xué)幫助下通過(guò)與同學(xué)協(xié)商協(xié)作、與計(jì)算機(jī)交互主動(dòng)獲得知識(shí)。c、從教學(xué)內(nèi)容看,應(yīng)用這種模式,對(duì)知識(shí)系統(tǒng)性強(qiáng)的學(xué)習(xí)應(yīng)強(qiáng)調(diào)教師的主導(dǎo)地位、指導(dǎo)、設(shè)計(jì)作用;新舊知識(shí)之間相互關(guān)聯(lián)、技能轉(zhuǎn)化性的宜充分發(fā)揮學(xué)生主動(dòng)參與;知識(shí)發(fā)散性,技能熟化、擴(kuò)展性的宜以學(xué)生為主體。d、教師的主導(dǎo)作用,須依賴(lài)與熟練地應(yīng)用計(jì)算機(jī)和多媒體技術(shù),為學(xué)生不斷創(chuàng)設(shè)符合教學(xué)內(nèi)容要求的問(wèn)題情景,提供新舊知識(shí)之間聯(lián)系的線索,以及能引發(fā)學(xué)生思考和討論的問(wèn)題。
五、教育信息化全面推動(dòng)了學(xué)校教育教學(xué)的整體改革步伐
教育信息化工程的實(shí)施,為我校深化教育教學(xué)整體改革注入了活力,實(shí)驗(yàn)研究成果逐步在學(xué)校教學(xué)的各個(gè)層面上推廣開(kāi)來(lái)。特別是體現(xiàn)在信息技術(shù)能力方面的學(xué)生素質(zhì)培養(yǎng)和體現(xiàn)在教科研成果方面的教師隊(duì)伍建設(shè)。
全校1600名1到6年級(jí)學(xué)生,全部安排了上機(jī)和網(wǎng)絡(luò)操作實(shí)踐課,學(xué)生普遍會(huì)使用校園網(wǎng),會(huì)利用網(wǎng)上資源,具有了初步的信息技術(shù)能力。實(shí)驗(yàn)班和興趣組的學(xué)生,每周上機(jī)時(shí)間3到8課時(shí),他們分別會(huì)用計(jì)算機(jī)做畫(huà)、制作賀卡、編輯電子小報(bào),會(huì)做個(gè)人、班隊(duì)主頁(yè),會(huì)收發(fā)電子郵件,會(huì)使用國(guó)際互連網(wǎng),具有和同齡人相比較強(qiáng)的信息技術(shù)能力。各年級(jí)學(xué)生中出現(xiàn)了一批計(jì)算機(jī)和網(wǎng)絡(luò)的“高手“,他們成為教師教學(xué)中的幫手,在參加市區(qū)有關(guān)競(jìng)賽中,捧回各類(lèi)獎(jiǎng)項(xiàng)。這些學(xué)生也是學(xué)?!斑h(yuǎn)程協(xié)作學(xué)習(xí)“項(xiàng)目的骨干力量。
實(shí)驗(yàn)開(kāi)題以來(lái),我校先后承辦了深珠港澳地區(qū)教學(xué)觀摩會(huì)、99深圳(南山)現(xiàn)代教育技術(shù)研討會(huì),會(huì)議期間,實(shí)驗(yàn)教師提供的協(xié)商學(xué)習(xí)和個(gè)別化學(xué)習(xí)課例,受到與會(huì)的專(zhuān)家、教師的高度評(píng)價(jià)。
兩年多來(lái),學(xué)校先后為香港教育署、計(jì)算機(jī)學(xué)會(huì)和50多所學(xué)校官員和上千名教師提供了研究課。接待了來(lái)自全國(guó)18個(gè)省市的教育行政部門(mén)的領(lǐng)導(dǎo)和幾百所學(xué)校的校長(zhǎng)、教師。
有10多名教師的課例在全國(guó)教學(xué)比賽和省市級(jí)教學(xué)比賽中獲獎(jiǎng)。王光榮、徐陽(yáng)杰獲“第4屆全國(guó)小學(xué)計(jì)算機(jī)輔助教學(xué)觀摩比賽”二等獎(jiǎng);謝錦獲“小學(xué)數(shù)學(xué)引探教學(xué)比賽”一等獎(jiǎng);陳艷霞獲“異步教學(xué)”課例一等獎(jiǎng);董金宏、唐筱勇課例入選“首屆信息技術(shù)和語(yǔ)文教學(xué)研討會(huì)”成果;王光榮、陳明祺獲“廣東省教學(xué)創(chuàng)新課比賽”一等獎(jiǎng)。實(shí)驗(yàn)教師徐陽(yáng)杰成功地為首屆“維美杯”全國(guó)計(jì)算機(jī)輔助教學(xué)大賽提供了觀摩課等。
2000年初,南頭小學(xué)在全國(guó)中小學(xué)現(xiàn)代教育技術(shù)實(shí)驗(yàn)學(xué)校評(píng)估檢查中,代表廣東省實(shí)驗(yàn)學(xué)校作了工作匯報(bào),受到專(zhuān)家和教育部領(lǐng)導(dǎo)的肯定。學(xué)校領(lǐng)導(dǎo)先后全國(guó)電化教育年會(huì)、教育部首批中小學(xué)骨干校長(zhǎng)培訓(xùn)班、全國(guó)中小學(xué)整體改革專(zhuān)業(yè)委員會(huì)向近千名代表介紹南頭小學(xué)開(kāi)展實(shí)驗(yàn)情況。
《南頭小學(xué)校園網(wǎng)系統(tǒng)建設(shè)報(bào)告》被收入中央電教館、教育部信息管理中心編著的《校園網(wǎng)》一書(shū),校園信息網(wǎng)絡(luò)系統(tǒng)作為成功范例向全國(guó)介紹。
全國(guó)哲學(xué)社會(huì)科學(xué)95規(guī)劃國(guó)家重點(diǎn)課題,“面向21世紀(jì)中國(guó)基礎(chǔ)教育課程改革研究”的子課題“中小學(xué)電子教材的建設(shè)與實(shí)驗(yàn)研究”的組成部分,“小學(xué)開(kāi)放性電子教材建設(shè)的研究”課題,由南頭小學(xué)承擔(dān),日前通過(guò)專(zhuān)家鑒定,順利結(jié)題。
有20多篇論文和研究成果分別在《中國(guó)教育報(bào)》、《電化教育研究》、《中小學(xué)電腦報(bào)》、《計(jì)算機(jī)世界》、《廣東電教》、《陜西電教》、《教師報(bào)》、《中小學(xué)德育》、《師道》、《深圳教育研究》等雜志報(bào)刊發(fā)表。收集實(shí)驗(yàn)教師60多篇論文的專(zhuān)集由和平出版社、華東師大出版社出版。
40多篇論文先后獲得教育部、中國(guó)電化教育學(xué)會(huì)、中國(guó)教育學(xué)會(huì)中小學(xué)計(jì)算機(jī)研究會(huì)、中國(guó)小學(xué)數(shù)學(xué)研究會(huì)、廣東省教育廳、廣東省教研室、廣東省電教館和深圳市及南山區(qū)教科研論文評(píng)比獎(jiǎng)勵(lì)。
學(xué)校教師開(kāi)發(fā)的軟件獲得教育部電教辦軟件比賽、全國(guó)小語(yǔ)“四結(jié)合”總課題組軟件評(píng)比二等獎(jiǎng),以及廣東省、深圳市和南山區(qū)軟件評(píng)比獎(jiǎng)勵(lì)。
作為南頭小學(xué)軟件專(zhuān)集的《全國(guó)中小學(xué)CAI集錦
(五)》,已由全國(guó)中小學(xué)計(jì)算機(jī)教育研究中心(上海部)審定,正式出版發(fā)行。
中國(guó)教育電視臺(tái)多次專(zhuān)題介紹南頭小學(xué)開(kāi)展實(shí)驗(yàn)情況。通過(guò)教育信息化全面推進(jìn)學(xué)校教育教學(xué)整體改革是一項(xiàng)系統(tǒng)工程,從比較高的尺度上來(lái)看,我們的實(shí)驗(yàn)僅僅是起始階段,文章剛剛寫(xiě)了個(gè)開(kāi)頭。在教學(xué)模式的創(chuàng)建上,在學(xué)生素質(zhì)發(fā)展的測(cè)評(píng)上,在如何使教師隊(duì)伍適應(yīng)實(shí)驗(yàn)的發(fā)展不斷提高整體素質(zhì),解決發(fā)展不平衡方面,應(yīng)該做的事情還很多。從全局來(lái)看,這項(xiàng)實(shí)驗(yàn)也不是一所學(xué)校所能完成的。我們將在今后的實(shí)踐中認(rèn)真學(xué)習(xí)兄弟學(xué)校的先進(jìn)經(jīng)驗(yàn)。在專(zhuān)家的指導(dǎo)幫助下,完成歷史賦予我們的使命。
參考文獻(xiàn):
何克抗 《建構(gòu)主義學(xué)習(xí)環(huán)境下的教學(xué)設(shè)計(jì)》
何克抗 李克東 謝幼如 王本中《“主導(dǎo)-主體“教學(xué)模式的理論基礎(chǔ)》
第四篇:校園導(dǎo)游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
校園導(dǎo)游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
目錄 1.設(shè)計(jì)要求 2.1需求分析 2.2概要設(shè)計(jì)
2.3各個(gè)模塊名稱(chēng)和功能 2.4 系統(tǒng)導(dǎo)游主界面
2.4.1前臺(tái)系統(tǒng)
2.4.2后臺(tái)系統(tǒng)
2.4.3退出系統(tǒng) 3實(shí)驗(yàn)總結(jié) 參考文獻(xiàn) 附件
1.設(shè)計(jì)要求
設(shè)計(jì)一個(gè)校園導(dǎo)游程序,為來(lái)訪的客人提供各種信息查詢(xún)服務(wù)。
2.1需求分析
⑴設(shè)計(jì)學(xué)校的校園平面圖。選取若干個(gè)有代表性的景點(diǎn)抽象成一個(gè)無(wú)向帶權(quán)圖(無(wú)向網(wǎng)),所含景點(diǎn)不少于 30 個(gè)。以圖中頂點(diǎn)表示校內(nèi)各景點(diǎn),邊上的權(quán)值表示兩景點(diǎn)之間的距離。
⑵存放景點(diǎn)代號(hào)、名稱(chēng)、簡(jiǎn)介等信息供用戶查詢(xún)。⑶為來(lái)訪客人提供圖中任意景點(diǎn)相關(guān)信息的查詢(xún)。⑷為來(lái)訪客人提供圖中任意景點(diǎn)之間的問(wèn)路查詢(xún)。
⑸可以為校園平面圖增加或刪除景點(diǎn)或邊,修改邊上的權(quán)值等。
景點(diǎn)距離圖
2.2概要設(shè)計(jì)
校園旅游模型是由景點(diǎn)和景點(diǎn)之間的路徑組成的,所以這完全可以用數(shù)據(jù)結(jié)構(gòu)中的圖來(lái)模擬。用圖的結(jié)點(diǎn)代表景點(diǎn),用圖的邊代表景點(diǎn)之間的路徑。所以首先應(yīng)設(shè)計(jì)一個(gè)圖類(lèi)。結(jié)點(diǎn)值代表景點(diǎn)信息,邊的權(quán)值代表景點(diǎn)間的距離。結(jié)點(diǎn)值及邊的權(quán)值用順序表存儲(chǔ),所以需要設(shè)計(jì)一個(gè)順序表類(lèi)。本系統(tǒng)需要查詢(xún)景點(diǎn)信息和求一個(gè)景點(diǎn)到另一個(gè)景點(diǎn)的最短路徑長(zhǎng)度及路線,為方便操作,所以給每個(gè)景點(diǎn)一個(gè)代碼,用結(jié)構(gòu)體類(lèi)型實(shí)現(xiàn)。計(jì)算路徑長(zhǎng)度和最短路線時(shí)可用迪杰斯特拉(Dijkastra)算法實(shí)現(xiàn)。最后用 switch 選擇語(yǔ)句選擇執(zhí)行瀏覽景點(diǎn)信息或查詢(xún)最短路徑。
1、主界面設(shè)計(jì)
為了實(shí)現(xiàn)校園導(dǎo)游系統(tǒng)各功能的管理,首先設(shè)計(jì)一個(gè)含有多個(gè)菜單項(xiàng)的主控菜單子程序以鏈接系統(tǒng)的各項(xiàng)子功能,方便用戶使用本系統(tǒng)。
2、存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)
本系統(tǒng)采用圖結(jié)構(gòu)類(lèi)型(mgraph)存儲(chǔ)抽象校園圖的信息。其中,各景點(diǎn)間的鄰接關(guān)系用圖鄰接矩陣類(lèi)型(adjmatrix)存儲(chǔ);景點(diǎn)(頂點(diǎn))信息用結(jié)構(gòu)數(shù)組(vexs)存儲(chǔ),其中每個(gè)數(shù)組元素是一個(gè)結(jié)構(gòu)變量,包含景點(diǎn)編號(hào)、景點(diǎn)名稱(chēng)及景點(diǎn)介紹三個(gè)分量;圖的頂點(diǎn)個(gè)數(shù)及邊的條數(shù)由分量 vexnum、arcnum 表示,它們是整型數(shù)據(jù)。
3、系統(tǒng)功能設(shè)計(jì)
本系統(tǒng)除了要完成圖的初始化功能外還設(shè)置了9個(gè)子功能。圖的初始化由 initgraph()函數(shù)實(shí)現(xiàn)。依據(jù)讀入的圖的頂點(diǎn)個(gè)數(shù)和邊的條數(shù),分別初始化圖結(jié)構(gòu)中圖的頂點(diǎn)數(shù)組和圖的鄰接矩陣。9個(gè)子功能的設(shè)計(jì)描述如下。⑴ 景點(diǎn)信息查詢(xún)
景點(diǎn)信息查詢(xún)由函數(shù) seeabout()實(shí)現(xiàn)。該功能根據(jù)用戶輸入的景點(diǎn)編號(hào)輸出該景點(diǎn)的相關(guān)信息。如景點(diǎn)編號(hào)、名稱(chēng)等。⑵ 學(xué)校景點(diǎn)介紹
學(xué)校景點(diǎn)介紹由函數(shù) browsecampus()實(shí)現(xiàn)。當(dāng)用戶選擇該功能,系統(tǒng)即能輸出學(xué)校全部景點(diǎn)的信息:包括景點(diǎn)編號(hào)、景點(diǎn)名稱(chēng)及景點(diǎn)介紹。⑶ 相鄰的景點(diǎn)及其距離
為使游客能夠知道其周?chē)木包c(diǎn)和路徑,方便他們迅速知道其所在位置和周?chē)畔?⑷ 查看瀏覽線路
查看瀏覽線路由函數(shù) shortestpath_dij()實(shí)現(xiàn)。該功能采用迪杰斯特拉(Dijkstra)算 法實(shí)現(xiàn)。當(dāng)用戶選擇該功能,系統(tǒng)能根據(jù)用戶輸入的起始景點(diǎn)編號(hào),求出從該景點(diǎn)到其他景點(diǎn)的最短路徑線路及距離。當(dāng)用戶選擇該功能,系統(tǒng)能根據(jù)用戶輸入的起始景點(diǎn)及目的景點(diǎn)編號(hào),查詢(xún)?nèi)我鈨蓚€(gè)景點(diǎn)之間的最短路徑線路及距離。⑸ 更改圖信息
修改一個(gè)已有景點(diǎn)的相關(guān)信息、刪除一個(gè)景點(diǎn)及其相關(guān)信息、刪除一條路徑、加一條路徑、修改路徑長(zhǎng)度、添加一個(gè)景點(diǎn) ⑹ 數(shù)據(jù)安全防范
設(shè)置密碼,能保證數(shù)據(jù)不會(huì)被隨便更改,由pass()判定密碼是否正確,可由changepw()函數(shù)修改密碼,初始密碼為gdufsx ⑺ 寫(xiě)入文件并保存修改
打開(kāi)該軟件,若沒(méi)有g(shù)raph.txt,則會(huì)由系統(tǒng)初始化生成一個(gè)graph.txt,若已存在該文檔會(huì)由該文檔中的內(nèi)容初始化系統(tǒng)。⑻ 恢復(fù)初始狀態(tài)
若數(shù)據(jù)已經(jīng)顯得很雜亂并很難修理,就可以啟用這個(gè)功能 ⑼ 退出
即退出校園導(dǎo)游系統(tǒng),由 exit(0)函數(shù)實(shí)現(xiàn)
2.3函數(shù)結(jié)構(gòu)
void initgraph(mgraph &G);
//依據(jù)讀入的圖的頂點(diǎn)個(gè)數(shù)和邊的條數(shù),//分別初始化圖結(jié)構(gòu)中圖的頂點(diǎn)向量數(shù)組和圖的鄰接矩陣 void browsecampus(mgraph G);//輸出學(xué)校全部景點(diǎn)的信息 :編號(hào)、名稱(chēng)、介紹
void cgraph(mgraph &G,Password &pw);//構(gòu)造無(wú)向圖和讀寫(xiě)文件graph。txt void writetxt(mgraph &G,Password &pw);//寫(xiě)入文件
int pass(Password pw);
//認(rèn)證密碼的正確與否,正確返回1,錯(cuò)誤返回0
void reception(mgraph &G);
//前臺(tái)服務(wù)函數(shù) void seeabout(mgraph &G);
//景點(diǎn)信息
void shortestpath_dij(mgraph G);//該景點(diǎn)到其他景點(diǎn)的最短路徑線路及距離 void near(mgraph G);
//相鄰的景點(diǎn)及其距離
void changegraph(mgraph &G,Password &pw);
//后臺(tái)函數(shù),并調(diào)用
void changeP(mgraph &G,Password &pw);
//修改一個(gè)已有景點(diǎn)的相關(guān)信息 void deleteP(mgraph &G,Password &pw);
//刪除一個(gè)景點(diǎn)及其相關(guān)信 void deleteL(mgraph &G,Password &pw);
//刪除一條路徑 void addL(mgraph &G,Password &pw);
//添加一條路徑 void changeL(mgraph &G,Password &pw);
//修改路徑長(zhǎng)度
void Add(mgraph &G,Password &pw);
//添加一個(gè)景點(diǎn) void changepw(mgraph &G,Password &pw);//修改密碼 void regraph(mgraph &G,Password &pw);
//恢復(fù)初始狀態(tài)
2.4 2.4校園導(dǎo)游主界面
程序運(yùn)行,后臺(tái)對(duì)圖結(jié)構(gòu)進(jìn)行初始化,運(yùn)行結(jié)果如圖2.4.1。
2.4 主界面 2.4.10前臺(tái)系統(tǒng)
前臺(tái)系統(tǒng)是游客瀏覽查詢(xún)界面。如圖2.4.10
2.4.10 游客瀏覽界面 2.4.11個(gè)別景點(diǎn)的相關(guān)信息查詢(xún)
景點(diǎn)的相關(guān)信息查詢(xún)是通過(guò)seeabout()函數(shù)來(lái)調(diào)用輸出的,在前臺(tái)系統(tǒng)輸入1,輸入任一景點(diǎn)編號(hào)即可知道其信息。運(yùn)行結(jié)果如圖2.4.11
2.4.11 信息查詢(xún) 2.4.12任意兩景點(diǎn)間最短路徑查詢(xún)
根據(jù)用戶的需求,在用戶輸入了起點(diǎn)和終點(diǎn)后計(jì)算出最短路徑是哪一條路徑。例如起點(diǎn)是3.中國(guó)銀行,終點(diǎn)是15.教學(xué)樓A棟。運(yùn)行結(jié)果如圖2.4.12
2.4.12 任意兩景點(diǎn)間最短路徑查詢(xún) 2.4.13輸出所有景點(diǎn)信息
為方便用戶一次性知道所有景點(diǎn)信息,設(shè)置了查詢(xún)所有景點(diǎn)的信息如圖2.4.13
2.4.13 輸出所有景點(diǎn)信息 2.4.14相鄰的景點(diǎn)及其距離
為使游客能夠知道其周?chē)木包c(diǎn)和路徑,方便他們迅速知道其所在位置和周?chē)畔?。如圖2.4.14
2.4.14相鄰的景點(diǎn)及其距離
2.4.20后臺(tái)系統(tǒng)
輸入密碼
為防止他人隨意修改景點(diǎn)信息,需密碼驗(yàn)證身份,初始密碼為gdufsx,進(jìn)入后臺(tái)系統(tǒng)后可修改密碼,如圖2.4.200
2.4.200 輸入密碼
后臺(tái)服務(wù)
后臺(tái)服務(wù)具有以下功能: 修改一個(gè)已有景點(diǎn)的相關(guān)信息;刪除一個(gè)景點(diǎn)及其相關(guān)信息;刪除一條路徑;添加一條路徑;修改路徑長(zhǎng)度;添加一個(gè)景點(diǎn);修改密碼;恢復(fù)初始狀態(tài)。如圖2.4.20。功能如圖2.4.21至2.4.28
2.4.20 后臺(tái)服務(wù)
2.4.21修改一個(gè)已有景點(diǎn)的相關(guān)信息
2.4.22 刪除一個(gè)景點(diǎn)及其相關(guān)信息
2.4.23刪除一條路徑
2.4.24添加一條路徑
2.4.25修改路徑長(zhǎng)度
2.4.26 添加一個(gè)景點(diǎn)
2.4.27修改密碼
2.4.28恢復(fù)初始狀態(tài)
在后臺(tái)系統(tǒng)輸入8,就會(huì)詢(xún)問(wèn)你是否恢復(fù)初始狀態(tài),暗“Y”將會(huì)使之前一切修改的數(shù)據(jù)信息都恢復(fù)原樣,重新初始化。
2.4.28恢復(fù)初始狀態(tài) 2.4.3退出系統(tǒng)
用戶滿足了需求之后,只要在主界面菜單處輸入0便可退出此次校園導(dǎo)游系統(tǒng)。運(yùn)行結(jié)果如圖2.4.9。
退出系統(tǒng)
3總結(jié)
由于設(shè)計(jì)者水平有限,本導(dǎo)游圖系統(tǒng)的功能還比較簡(jiǎn)單,沒(méi)有求出兩景點(diǎn)間的多條可行路徑供游客選擇,無(wú)法在界面中顯示出地圖;由于鄰接矩陣是30*30的,所以無(wú)法在一個(gè)界面中完整簡(jiǎn)潔的顯示出來(lái)。還有個(gè)很好的想法也沒(méi)有實(shí)現(xiàn),就是怎樣求出游完所有景點(diǎn)是的最短路徑和線路,這樣游客就不需要重復(fù)走過(guò)幾個(gè)景點(diǎn)。在這次作業(yè)中,我積累了不少經(jīng)驗(yàn),提高了動(dòng)手能力。在編程序過(guò)程中不要急于求成,如果一下字把所有的功能編出來(lái)了再去編譯,一旦出錯(cuò),就很難找出是哪里錯(cuò)誤了,這就需要一個(gè)一個(gè)的實(shí)現(xiàn)了。這次作業(yè)也讓我增加了對(duì)文件流的理解。
參考文獻(xiàn)
[1]嚴(yán)蔚敏,李冬梅,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版).人民郵電出版社.2011.[2]王珊珊,臧洌,張志航.C++程序設(shè)計(jì)教程 第二版.機(jī)械工業(yè)出版社.2011 附件:
//程序名稱(chēng):校園導(dǎo)游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) //程序員:Joebug //編寫(xiě)時(shí)間:2015年6月
#include
#define N 50 #define M 10
typedef struct Infor{
//景點(diǎn)結(jié)構(gòu)體
char name[20];
//景點(diǎn)名稱(chēng)
char inf[100];
//景點(diǎn)信息
}Infor;
typedef struct{ int adj[N][N];
//各景點(diǎn)間的鄰接關(guān)系用圖鄰接矩陣類(lèi)型
Infor vexs[N];
//景點(diǎn)(頂點(diǎn))信息: int vexnum,arcnum;
//圖的頂點(diǎn)個(gè)數(shù)及邊的條數(shù) }mgraph;
typedef struct{
char p[6];
}Password;
char inform[30][100]={
“信息男宿舍,后面是內(nèi)環(huán),與風(fēng)采園相近,前面是南苑9-12棟!”,“一樓價(jià)格還好,但飯菜比較難吃,二樓較貴,飯菜還行!”,“中國(guó)銀行營(yíng)業(yè)廳,如果要辦理業(yè)務(wù),需很早地去排隊(duì);有ATM機(jī)!”,“二樓有自強(qiáng)社辦公室、校學(xué)生會(huì)辦公室?一樓有健身房!”,“東西較貴但品類(lèi)基本齊全!”,“主要是老師居住。喜祥數(shù)碼港要收費(fèi),云山數(shù)碼港在不換硬件條件下免費(fèi)修!”,“主要接待外來(lái)人員,招待所!”,“一樓有糖水和奶茶供應(yīng),晚上總有很多部門(mén)在此開(kāi)會(huì)。二樓有許多套餐!”,“一樓大眾點(diǎn)菜,品類(lèi)比三飯多。二樓的價(jià)格在8元左右!”,“女生宿舍,北苑三棟樓下有創(chuàng)業(yè)園!”,“組成巡邏隊(duì),協(xié)助學(xué)校保障校園安全。!”,“位于保衛(wèi)處后面,在校生校內(nèi)看病只需支付很少的費(fèi)用!”,“具有防空洞;連接宿舍區(qū)和教學(xué)區(qū)!”,“在隧道口的上方,可以乘坐很多路的公交車(chē)!”,“一樓有中國(guó)銀行ATM。早上和中午前面有校巴。不少活動(dòng)的舉辦地點(diǎn)!”,“是學(xué)習(xí)的主要地方,教室里面設(shè)施較為齊全,有多媒體、空調(diào)、電視等,后面是語(yǔ)心湖和實(shí)驗(yàn)樓!”,“早上會(huì)有學(xué)生在那里練嗓子,以及讀書(shū)!”,“多種會(huì)議比賽的場(chǎng)所!”,“學(xué)校政要的辦公室所在地!”,“各學(xué)院老師的辦公室所在地!”,“拍畢業(yè)照時(shí),校友回來(lái)時(shí)的聚集之地!”,“擺放著很多電腦的地方!”,“位于教學(xué)樓和實(shí)驗(yàn)樓之間,湖水平靜,還有黑天鵝嬉戲于水上!”,“各種活動(dòng)的舉辦場(chǎng)所!”,“主要是藝術(shù)生上課的地方,周六日為雅思考場(chǎng)!”,“重要會(huì)議進(jìn)行的地方,黨課和軍訓(xùn)理論課在這里上,有空調(diào)!”,“圖書(shū)館除了中英文借閱區(qū)與雜志借閱區(qū)外,還有自習(xí)區(qū);前面有大廣場(chǎng),最前面是學(xué)校正門(mén)!”,“內(nèi)有排球場(chǎng)、籃球場(chǎng),外有足球場(chǎng)。還有游泳池、網(wǎng)球場(chǎng)!”,“體育館有多個(gè)觀眾席;中央可用做正規(guī)比賽場(chǎng)所。日常用來(lái)上羽毛球課、跆拳道課!”,“位于圖書(shū)館前面,學(xué)術(shù)報(bào)告廳與藝術(shù)樓中間,雖然不宏偉,但是也是一個(gè)標(biāo)志!”
};char Name[30][20]={
“南苑13棟”,“風(fēng)采園(三飯)”,“中國(guó)銀行”,“學(xué)活&水榭”,“又康超市”,“師苑&數(shù)碼港”,“廣外友苑”,“博雅園(二飯)”,“文采園(一飯)”,“創(chuàng)業(yè)園”,“后勤&保衛(wèi)處”,“校醫(yī)室”,“隧道口”,“廣外公交站”,“教學(xué)樓A棟”,“教學(xué)樓E、F棟”,“鳳凰山坡”,“八角樓”,“校辦公樓”,“院系辦公樓”,“校友林”,“實(shí)驗(yàn)樓”,“語(yǔ)心湖”,“學(xué)術(shù)報(bào)告廳”,“藝術(shù)樓”,“大會(huì)堂”,“圖書(shū)館”,“泳池&操場(chǎng)”,“體育館&場(chǎng)”,“正校門(mén)”};
void initgraph(mgraph &G);
//依據(jù)讀入的圖的頂點(diǎn)個(gè)數(shù)和邊的條數(shù),//分別初始化圖結(jié)構(gòu)中圖的頂點(diǎn)向量數(shù)組和圖的鄰接矩陣 void browse(mgraph G);
//輸出學(xué)校全部景點(diǎn)的信息 :編號(hào)、名稱(chēng)、介紹
void cgraph(mgraph &G,Password &pw);//構(gòu)造無(wú)向圖和讀寫(xiě)文件graph。txt void writetxt(mgraph &G,Password &pw);//寫(xiě)入文件
int pass(Password pw);
//認(rèn)證密碼的正確與否,正確返回1,錯(cuò)誤返回0
void reception(mgraph &G);
//前臺(tái)服務(wù)函數(shù) void seeabout(mgraph &G);
//景點(diǎn)信息
void shortestpath_dij(mgraph G);//該景點(diǎn)到其他景點(diǎn)的最短路徑線路及距離 void browsecampus(mgraph G);//輸出學(xué)校全部景點(diǎn)的信息 :編號(hào)、名稱(chēng)、介紹
void near(mgraph G);
//相鄰的景點(diǎn)及其距離
void changegraph(mgraph &G,Password &pw);
//后臺(tái)函數(shù),并調(diào)用
void changeP(mgraph &G,Password &pw);
//修改一個(gè)已有景點(diǎn)的相關(guān)信息 void deleteP(mgraph &G,Password &pw);
//刪除一個(gè)景點(diǎn)及其相關(guān)信 void deleteL(mgraph &G,Password &pw);
//刪除一條路徑 void addL(mgraph &G,Password &pw);
//添加一條路徑 void changeL(mgraph &G,Password &pw);
//修改路徑長(zhǎng)度
void Add(mgraph &G,Password &pw);
//添加一個(gè)景點(diǎn)
void changepw(mgraph &G,Password &pw);
//修改密碼 void regraph(mgraph &G,Password &pw);
//恢復(fù)初始狀態(tài)
int main(){ mgraph campus;Password pw;strcpy(pw.p,“gdufsx”);
//初始化密碼
initgraph(campus);cgraph(campus,pw);int n,m=1;while(m)
{
system(“cls”);
cout<<“
歡迎使用GDUFS校園導(dǎo)游系統(tǒng)”< cout<<“ **************************************”< cout<<“ (1)前臺(tái)服務(wù)(游客身份登陸)”< cout<<“ (2)后臺(tái)服務(wù)(管理員身份登陸)”< cout<<“ (0)退出”< cout<<“ **************************************”< cout<<“ 請(qǐng)輸入您的選擇(0-2):”; cin>>n; switch(n) { case 1: reception(campus); break; case 2: if(pass(pw)==1) changegraph(campus,pw);//后臺(tái)函數(shù) break; case 0: m=0; cout<<“謝謝您的使用!” < getch(); exit(0); default: cout<<“ 您的輸入有誤,任意鍵繼續(xù)...”; getch(); } } } void initgraph(mgraph &G){ //依據(jù)讀入的圖的頂點(diǎn)個(gè)數(shù)和邊的條數(shù),//分別初始化圖結(jié)構(gòu)中圖的頂點(diǎn)向量數(shù)組和圖的鄰接矩陣 int i,j;for(i=0;i for(j=0;j G.adj[i][j]=9999;for(i=0;i<30;i++){ strcpy(G.vexs[i].name,Name[i]); strcpy(G.vexs[i].inf,inform[i]);} G.vexnum=30;G.arcnum=45; G.adj[0][1]=55; G.adj[1][0]=55; G.adj[0][5]=287; G.adj[5][0]=287;G.adj[1][2]=243; G.adj[2][1]=243;G.adj[2][3]=28; G.adj[3][2]=28;G.adj[3][4]=31; G.adj[4][3]=31;G.adj[4][5]=42; G.adj[5][4]=42;G.adj[4][9]=106; G.adj[9][4]=106; G.adj[5][6]=87; G.adj[6][5]=87;G.adj[5][7]=71; G.adj[7][5]=71;G.adj[7][8]=132; G.adj[8][7]=132;G.adj[7][9]=97; G.adj[9][7]=97;G.adj[7][12]=150; G.adj[12][7]=150;G.adj[8][9]=111; G.adj[9][8]=111;G.adj[8][11]=151; G.adj[11][8]=151;G.adj[8][13]=126; G.adj[13][8]=126;G.adj[9][11]=257; G.adj[11][9]=257;G.adj[10][11]=33; G.adj[11][10]=33;G.adj[10][13]=128; G.adj[13][10]=128;G.adj[10][27]=287; G.adj[27][10]=287;G.adj[12][13]=117; G.adj[13][12]=117;G.adj[12][14]=83; G.adj[14][12]=83;G.adj[12][16]=160; G.adj[16][12]=160;G.adj[13][26]=359; G.adj[26][13]=359;G.adj[14][15]=118; G.adj[15][14]=118;G.adj[14][16]=245; G.adj[16][14]=245;G.adj[15][22]=94; G.adj[22][15]=94;G.adj[15][26]=176; G.adj[26][15]=176;G.adj[16][18]=62; G.adj[18][16]=62;G.adj[17][18]=74; G.adj[18][17]=74;G.adj[17][19]=88; G.adj[19][17]=88;G.adj[17][22]=218; G.adj[22][17]=218;G.adj[19][20]=64; G.adj[20][19]=64;G.adj[20][21]=167; G.adj[21][20]=167;G.adj[21][22]=68; G.adj[22][21]=68;G.adj[21][23]=132; G.adj[23][21]=132;G.adj[23][26]=203; G.adj[26][23]=203;G.adj[23][29]=60; G.adj[29][23]=60;G.adj[24][25]=129; G.adj[25][24]=129;G.adj[24][28]=263; G.adj[28][24]=263;G.adj[24][29]=80; G.adj[29][24]=80;G.adj[25][26]=181; G.adj[26][25]=181;G.adj[25][27]=212; G.adj[27][25]=212;G.adj[25][28]=192; G.adj[28][25]=192;G.adj[26][27]=164; G.adj[27][26]=164;G.adj[27][28]=354; G.adj[28][27]=354;} void cgraph(mgraph &G,Password &pw){ 化 int i,j,dist;char c;ifstream infile(“graph.txt”);if(!infile){ infile.close(); writetxt(G,pw);} else{ infile.close(); ifstream infile(“graph.txt”); //寫(xiě)入文件并初始 infile>>G.vexnum>>G.arcnum; for(i=0;i infile>>G.vexs[i].name; infile>>G.vexs[i].inf; } for(i=0;i for(j=0;j infile>>dist; G.adj[i][j]=dist; } } for(i=0;i<6;i++) infile>>pw.p[i]; infile.close();} } void writetxt(mgraph &G,Password &pw){ //寫(xiě)入文件 int i,j;ofstream outfile(“graph.txt”);outfile< outfile< } for(i=0;i for(j=0;j outfile< } } for(i=0;i<6;i++) outfile< //輸出學(xué)校全部景點(diǎn)的信息 :編號(hào)、名稱(chēng) int j=0,k;for(int i=0;i k=i+1; cout< j++; if(j%3==0)cout< 請(qǐng)輸入密碼:”;for(int i=0;i<6;i++){ ch[i]=getch(); cout.flush(); cout<<“*”; } for(int i=0;i<6;i++){ if(pw.p[i]!=ch[i]) judge=0;} return judge;} void changepw(mgraph &G,Password &pw){ int i,b=1;char ch[6],ch1[6],judge1=1,judge2=1;while(b==1){ cout<<“請(qǐng)輸入原密碼:”< for(i=0;i<6;i++){ ch[i]=getch(); cout.flush(); cout<<“*”; } for(i=0;i<6;i++){ if(pw.p[i]!=ch[i]) judge1=0; } if(judge1){ cout< for(i=0;i<6;i++){ ch[i]=getch(); cout.flush(); cout<<“*”; } cout< for(i=0;i<6;i++){ ch1[i]=getch(); cout.flush(); cout<<“*”; } for(i=0;i<6;i++){ if(ch[i]!=ch1[i])judge2=0; } if(judge2){ for(i=0;i<6;i++){ pw.p[i]=ch[i]; } cout< writetxt(G,pw); } else cout< } else cout<<“密碼錯(cuò)誤!”< cout< cin>>b; cout< } /////////////////////////前臺(tái)///////////////////////////////////////// void reception(mgraph &G){ //前臺(tái)函數(shù) int n,i,j; while(1) { system(“cls”);//清屏 cout<<“*********************歡迎使用前*******************”< cout<<“(1)個(gè)別景點(diǎn)信息查詢(xún)”< cout<<“(2)問(wèn)路查詢(xún)”< cout<<“(3)輸出所有景點(diǎn)信息”< cout<<“(4)相鄰的景點(diǎn)及其距離”< cout<<“(0)返回上一級(jí)菜單”< cout<<“請(qǐng)輸入您的選擇(0-4):”; cin>>n; switch(n) { case 1: seeabout(G); break; case 2: shortestpath_dij(G); break; case 3: browsecampus(G); break; case 4: 系統(tǒng) 臺(tái) near(G); break; case 0: return; break; default: cout<<“您的輸入有誤,任意鍵繼續(xù)...”< getch(); } } } void seeabout(mgraph &G){ //景點(diǎn)信息 int a; int b=1;system(“cls”);browse(G); while(b){ cout<<“請(qǐng)輸入要查找的景點(diǎn)信息”< cin>>a;a--; if(a>=0&&a cout< } else { cout<<“輸入錯(cuò)誤,無(wú)此景點(diǎn)”< } cout<<“返回前臺(tái)系統(tǒng)按0,繼續(xù)查找按1”< cin>>b; while(b!=0&&b!=1){ cout<<“返回前臺(tái)系統(tǒng)按0,繼續(xù)查找按1”< cin>>b; } } } void shortestpath_dij(mgraph G){ //該景點(diǎn)到其他景點(diǎn)的最短路徑線路及距離 int b=1,i,j,vt,v,v0,w,min; bool S[N]; int D[N],Path[N]; int n=G.vexnum; system(“cls”); browse(G); while(b){ cout<<“請(qǐng)輸入要查詢(xún)路徑的兩個(gè)景點(diǎn)的編號(hào)”< cin>>v0;v0--; cin>>vt; vt--; for(v=0;v S[v]=false; D[v]=G.adj[v0][v]; if(D[v]<9999) Path[v]=v0;//v0是v的前趨 else Path[v]=-1;//v無(wú)前趨 } D[v0]=0; S[v0]=true; for(i=1;i min=9999; for(w=0;w if(!S[w]&&D[w] S[v]=true; //將v加入S for(w=0;w if(!S[w]&&(D[v]+G.adj[v][w] D[w]=D[v]+G.adj[v][w]; Path[w]=v; } } cout<<“距離為:”< cout< cout<<“要經(jīng)過(guò)”< int f=Path[vt],e[N]; i=0; while(f!=-1){ e[i]=f; f=Path[f]; i++; } for(v=i-1;v>=0;v--){ cout< } cout< cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)查詢(xún)按1”< cin>>b;} } void browsecampus(mgraph G){ //輸出學(xué)校全部景點(diǎn)的信息 :編號(hào)、名稱(chēng)、介紹 int k;for(int i=0;i k=i+1; cout< } cout<<“按任意鍵返回前臺(tái)系統(tǒng)”< //相鄰的景點(diǎn)及其距離 int b=1,i,j; bool a[50][50];system(“cls”); while(b){ browse(G); for(i=0;i<50;i++) for(j=0;j<50;j++) a[i][j]=false; for(i=0;i for(j=0;j if(G.adj[i][j]!=9999){ if(!a[i][j]){ cout< ”< a[i][j]=true;a[j][i]=true; } } } } cout<<“返回后臺(tái)系統(tǒng)按0”< cin>>b; } } ////////////////////////////后臺(tái)函數(shù)/////////////////////////////////// void changegraph(mgraph &G,Password &pw){ //修改圖信息 int n; while(1) { system(“cls”); cout<<“*********************歡迎使用后臺(tái)系統(tǒng)************************”< cout<<“(1)修改一個(gè)已有景點(diǎn)的相關(guān)信息”< cout<<“(2)刪除一個(gè)景點(diǎn)及其相關(guān)信息”< cout<<“(3)刪除一條路徑”< cout<<“(4)增加一條路徑”< cout<<“(5)修改一條路徑長(zhǎng)度”< cout<<“(6)增加景點(diǎn)”< cout<<“(7)修改密碼”< cout<<“(8)恢復(fù)初始狀態(tài)”< cout<<“(0)返回上一級(jí)菜單”< cout<<“請(qǐng)輸入您的選擇(0-8):”; cin>>n; switch(n) { case 1: changeP(G,pw); break; case 2: deleteP(G,pw); break; case 3: deleteL(G,pw); break; case 4: addL(G,pw); break; case 5: changeL(G,pw); break; case 6: Add(G,pw); break; case 7: changepw(G,pw); break; case 8: regraph(G,pw); break; case 0: return; break; default: cout<<“您的輸入有誤,任意鍵繼續(xù)...”< getch(); } } } void changeP(mgraph &G,Password &pw){ //修改一個(gè)已有景點(diǎn)的相關(guān)信息 int a; int b=1; while(b){ system(“cls”); browse(G); cout<<“請(qǐng)輸入要修改景點(diǎn)信息的編號(hào):”< cin>>a;a--; if(a>=0&&a<=G.vexnum){ cout< cout<<“請(qǐng)輸入該景點(diǎn)的修改后的信息”< cin>>G.vexs[a].inf; cout<<“修改成功??!”< cout<<“是否要保存?保存按1,不保存按2”< int c; cin>>c; if(c==1){ writetxt(G,pw); } else{ cgraph(G,pw); } } else{ cout<<“error!輸入有誤!”< } cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)修改按1”< cin>>b; } } void deleteP(mgraph &G,Password &pw){ //刪除一個(gè)景點(diǎn)及其相關(guān)信息 int b=1,i,j,k; while(b) { system(“cls”); browse(G); cout<<“請(qǐng)輸入要?jiǎng)h除的景點(diǎn)的編號(hào)”< cin>>i;i--; if(i>=0&&i<=G.vexnum){ for(j=i;j G.vexs[j]=G.vexs[j+1]; for(k=0;k G.adj[k][j]=G.adj[k][j+1]; } for(j=i;j for(k=0;k G.adj[j][k]=G.adj[j+1][k]; } G.vexnum--; G.arcnum=0; for(i=0;i for(j=0;j if(G.adj[i][j]!=9999) G.arcnum++; } } G.arcnum=G.arcnum/2; b=0; cout<<“刪除成功!!”< } if(b!=0){ cout<<“輸入有誤!請(qǐng)看清楚!”< } else{ cout<<“是否要保存?保存按1,不保存按2”< int c; cin>>c; if(c==1){ writetxt(G,pw); } else{ cgraph(G,pw); } } cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)刪除按1”< cin>>b; } } void deleteL(mgraph &G,Password &pw){ //刪除一條路徑 int b=1,i,j; bool a[50][50];system(“cls”); while(b){ browse(G); for(i=0;i<50;i++) for(j=0;j<50;j++) a[i][j]=false; for(i=0;i for(j=0;j if(G.adj[i][j]!=9999){ if(!a[i][j]){ cout< ”< a[i][j]=true;a[j][i]=true; } } } } cout<<“請(qǐng)輸入要?jiǎng)h除的路徑連接的兩個(gè)景點(diǎn)編號(hào)”< cin>>i; i--; cin>>j; j--; if(G.adj[i][j]!=9999){ G.adj[i][j]=9999; G.adj[j][i]=9999; b=0; cout<<“刪除成功!”< G.arcnum--; cout<<“是否要保存?保存按1,不保存按2”< int c; cin>>c; if(c==1){ writetxt(G,pw); } else{ cgraph(G,pw); } } if(b!=0){ cout<<“輸入有誤!”< } cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)刪除按1”< cin>>b; } } void addL(mgraph &G,Password &pw){ //添加一條路徑 int b=1,i,j,distance; system(“cls”); browse(G); while(b){ cout<<“請(qǐng)輸入要添加的路徑連接的兩個(gè)景點(diǎn)編號(hào)”< cin>>i; i--; cin>>j; j--; cout<<“請(qǐng)輸入要添加的路徑長(zhǎng)度”< cin>>distance; if(G.adj[i][j]==9999){ G.adj[i][j]=distance; G.adj[j][i]=distance; b=0; cout<<“添加成功!”< G.arcnum++; cout<<“是否要保存?保存按1,不保存按2”< int c; cin>>c; if(c==1){ writetxt(G,pw); } else{ cgraph(G,pw); } } if(b!=0){ cout<<“輸入有誤!”< } cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)添加按1”< cin>>b; } } void changeL(mgraph &G,Password &pw){ //修改路徑長(zhǎng)度 int b=1,i,j,distance;bool a[50][50]; while(b){ system(“cls”); browse(G); for(i=0;i<50;i++) for(j=0;j<50;j++) a[i][j]=false; for(i=0;i for(j=0;j if(G.adj[i][j]!=9999){ if(!a[i][j]){ cout< ”< a[i][j]=true;a[j][i]=true; } } } } cout<<“請(qǐng)輸入要修改的路徑連接的兩個(gè)景點(diǎn)編號(hào)”< cin>>i; i--; cin>>j; j--; if(G.adj[i][j]!=9999){ cout<<“請(qǐng)輸入要修改的路徑長(zhǎng)度”< cin>>distance; G.adj[i][j]=distance; G.adj[j][i]=distance; b=0; cout<<“修改成功!”< cout<<“是否要保存?保存按1,不保存按2”< int c; cin>>c; if(c==1){ writetxt(G,pw); } else{ cgraph(G,pw); } } if(b!=0){ cout<<“無(wú)此路徑!”< } cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)添加按1”< cin>>b; } } void Add(mgraph &G,Password &pw){ //添加一個(gè)景點(diǎn) system(“cls”);int i,b=1;while(b==1){ cout<<“請(qǐng)輸入景點(diǎn)名稱(chēng):”< cin>>G.vexs[G.vexnum].name; cout<<“請(qǐng)輸入景點(diǎn)信息:”< cin>>G.vexs[G.vexnum].inf; for(i=0;i G.adj[G.vexnum][i]=9999; for(i=0;i G.adj[i][G.vexnum]=9999; G.adj[G.vexnum][G.vexnum]=9999; G.vexnum++; cout<<“添加成功!”< cout< cout<<“是否要保存?保存按1,不保存按2”< int c; cin>>c; if(c==1){ writetxt(G,pw); } else{ cgraph(G,pw); } cout<<“返回后臺(tái)系統(tǒng)按0,繼續(xù)添加按1”< cin>>b; } system(“pause”);system(“cls”);} void regraph(mgraph &G,Password &pw){ //恢復(fù)初始狀態(tài) system(“cls”);cout<<“是否要恢復(fù)初始狀態(tài),是按Y,不是按N”< char c; cin>>c; if(c=='Y'){ strcpy(pw.p,“gdufsx”); //初始化密碼 initgraph(G); writetxt(G,pw); } cout<<“已恢復(fù)初始狀態(tài)”;} 公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文 1引言 隨著城市經(jīng)濟(jì)的發(fā)展、規(guī)模的擴(kuò)大以及人口的增長(zhǎng),城市交通問(wèn)題日益突出。降低出行時(shí)間將使所有的公交利用者產(chǎn)生效益,快速的交通、更好的信息及更好的市場(chǎng)可以提高公交的形象,能夠增加公交乘坐者。城市公共交通運(yùn)輸以其覆蓋面廣、經(jīng)濟(jì)、快捷的特點(diǎn),成為絕大多數(shù)出行者的首選方式,也是各地城市政府大力發(fā)展的一種交通方式。本地市民特別是外來(lái)旅游、出差、就醫(yī)等急需了解本地道路情況的人可以利用本系統(tǒng)方便快捷的查詢(xún)出所有符合他們要求的公交路線,對(duì)他們的出行和生活提供幫助。我國(guó)城市公交乘客信息系統(tǒng)的發(fā)展處于一個(gè)落后的水平,廣大乘客可以獲得信息的方式很少,公交信息的完整性和準(zhǔn)確性得不到保證,而且還沒(méi)有專(zhuān)門(mén)的機(jī)構(gòu)負(fù)責(zé)信息的發(fā)布和管理。出于這個(gè)目的,在老師的指導(dǎo)下,我設(shè)計(jì)了這個(gè)城市公交線路查詢(xún)系統(tǒng)。在對(duì)公交乘客出行心理特征進(jìn)行分析的基礎(chǔ)上,考慮乘客選擇公交線路決策的因素,進(jìn)行程序關(guān)鍵部分的框架設(shè)計(jì)。 現(xiàn)階段,人們的出入方式主要還是來(lái)源于城市公交,特別是對(duì)于那些到外地出差、打工,進(jìn)行商業(yè)有關(guān)或其他事情需要在外地進(jìn)行短暫停留的人而言,公交對(duì)他們是必不可少的,但是對(duì)于那個(gè)不屬于自己所熟悉的城市,坐公交也是一個(gè)很大的難題,因此,開(kāi)發(fā)一個(gè)公交查詢(xún)系統(tǒng)就顯得非常的重要。本系統(tǒng)的核心是對(duì)選擇好的車(chē)次進(jìn)行路線的查詢(xún),或者輸入所要查詢(xún)的車(chē)站名,點(diǎn)擊“查詢(xún)”按鈕,查詢(xún)所有含有該站的車(chē)次及相應(yīng)的??空?。此處既可以“精確查詢(xún)”也可以是“模糊查詢(xún)”,“模糊查詢(xún)”主要方便那些對(duì)站名不是很清楚,但知道其中的一部分的乘客,系統(tǒng)可以幫助他們快速的查出。 1.1論文的研究?jī)?nèi)容 公交查詢(xún)系統(tǒng)是一個(gè)取代過(guò)去由人工查詢(xún)的查詢(xún)系統(tǒng)。本論文論述了一個(gè)基于瀏覽器/服務(wù)器(B/Srowser/Server)模式的公交查詢(xún)系統(tǒng)的研究和實(shí)現(xiàn)的過(guò)程.論文從開(kāi)發(fā)平臺(tái)和工具談起,對(duì)ASP.NET服務(wù)器所提供的組件及其屬性和方法做了一般介紹,更重要的是闡述了ASP.NET的數(shù)據(jù)庫(kù)訪問(wèn)組件ADO.NET的使用方法。最后,詳細(xì)介紹了如何創(chuàng)建“公交查詢(xún)系統(tǒng)”的全部過(guò)程。系統(tǒng)的開(kāi)發(fā)工具與環(huán)境 2.1ASP.NET簡(jiǎn)介 ASP.NET是一種建立在通用語(yǔ)言上的程序構(gòu)架,能被用于一臺(tái) Web務(wù)器來(lái)建立強(qiáng)大的應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的開(kāi)發(fā)模式強(qiáng)大的的優(yōu)勢(shì)。AS.PNET建立在.NET Framework的編程類(lèi)之上,它提供了一個(gè)web應(yīng)用程序模型,并且包含使生成web應(yīng)用程序變得簡(jiǎn)單的控件集和結(jié)構(gòu)。ASP.NET包含封裝公共用戶界面元素(如文本框和下拉菜單)的控件集。但這些控件在務(wù)器上運(yùn)行,并以HTML的形式將它們的用戶界面推送到瀏覽器。在服務(wù)器上,這些控件公開(kāi)一個(gè)面向?qū)ο蟮木幊棠P?,為web開(kāi)發(fā)人員提供了面向?qū)ο蟮木幊痰呢S富性。ASP.NET還提供結(jié)構(gòu)服務(wù)(如會(huì)話狀態(tài)管理和進(jìn)程回收),進(jìn)一步減少了開(kāi)發(fā)人員必須編寫(xiě)的代碼量并提高了應(yīng)用程序的可靠性。另外,ASP.NET 使用這些同樣的概念使開(kāi)發(fā)人員能夠以服務(wù)的形式交付軟件。使用ML webservices功能ASP.NET開(kāi)發(fā)人員可以編寫(xiě)自己的業(yè)務(wù)邏輯并使ASP.NETT結(jié)構(gòu)通過(guò)SOAP交付該服務(wù)。Visual Studio.NET是一套完整的開(kāi)發(fā)工具,用于生成應(yīng)用程序、XML Web services、桌面應(yīng)用程序和移動(dòng)應(yīng)用程序。Visual Basic.NET、Visual C++.NET、Visual C#.NET和VisualJ#.NET全都使用相同的集成開(kāi)發(fā)環(huán)境(IDE),該環(huán)境允許它們共享工具并有助于創(chuàng)建混合語(yǔ)言解決方案。另外,這些語(yǔ)言利用了.NET Framework的功能,此框架提供對(duì)簡(jiǎn)化應(yīng)用程序和XML Web services 開(kāi)發(fā)的關(guān)鍵技術(shù)的訪問(wèn)。 2.1.1ASP.NET技術(shù)的優(yōu)點(diǎn) ASP.NET是一種將各種Web元素組合在一起的服務(wù)器技術(shù),是一個(gè)統(tǒng)一的Web開(kāi)發(fā)平臺(tái),它提供了生成一個(gè)完整的Web應(yīng)用程序所必須要的各種服務(wù)。與以前的開(kāi)發(fā)模型相比較,它提供了以下數(shù)個(gè)重要的優(yōu)點(diǎn): (1)增強(qiáng)的性能。ASP.NET是在服務(wù)器上運(yùn)行的編譯好的公共語(yǔ)言運(yùn)行庫(kù)代碼。與被解釋的前輩不同,.NET可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化和盒外緩存服務(wù)。這相當(dāng)于在編寫(xiě)代碼之前便顯著提高了性能。(2)世界級(jí)的工具支持。ASP.NET框架補(bǔ)充了Visual Studio集成開(kāi)發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。WYSIWYG編輯、拖放服務(wù)器控件和自動(dòng)部署只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種 (3)威力和靈活性。由于ASP.NET基于公共語(yǔ)言運(yùn)行庫(kù),因此應(yīng)用程序開(kāi)發(fā)人員可以利用整個(gè)平臺(tái)的威力和靈活性。.NET框架類(lèi)庫(kù)、消息處理和數(shù)據(jù)訪問(wèn)解決方案都可從 Web 無(wú)縫訪問(wèn)。ASP.NETT也與語(yǔ)言無(wú)關(guān),所以可以選擇最適合應(yīng)用程序的語(yǔ)言(如C#),或是跨多種語(yǔ)言分割應(yīng)用程序。另外,公共語(yǔ)言運(yùn)行庫(kù)的交互性保證在遷移到ASP.NET時(shí)保留基于COM的開(kāi)發(fā)中的現(xiàn)有投資。(4)簡(jiǎn)易性。ASP.NET使執(zhí)行常見(jiàn)任務(wù)變得容易,從簡(jiǎn)單的窗體提交和客戶端身份驗(yàn)證到部署的站點(diǎn)配置。 (5)可管理性。ASP.NET采用基于文本的分層配置系統(tǒng),簡(jiǎn)化了將設(shè)置應(yīng)用于服務(wù)器環(huán)境和Web應(yīng)用程序。由于配置信息是以純文本形式存儲(chǔ)的,因此可以在沒(méi)有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)也擴(kuò)展到了ASP.NET框架應(yīng)用程序的部署。只需將必要的文件復(fù)制到服務(wù)器,即可將ASP.NET框架應(yīng)用程序部署到服務(wù)器。不需要重新啟動(dòng)服務(wù)器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)。 (6)可縮放性和可用性。ASP.NET在設(shè)計(jì)時(shí)考慮了可縮放性,增加了專(zhuān)門(mén)用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進(jìn)程受到ASP.NET 運(yùn)行庫(kù)的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(泄漏、死鎖)時(shí),可就地創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請(qǐng)求。2.1.2.NET Framework概述 NET Framework是用于生成、部署和運(yùn)行XML Web services 和應(yīng)用程序的多語(yǔ)言環(huán)境。它由以下幾個(gè)主要部分組成: 公共語(yǔ)言運(yùn)行庫(kù) 運(yùn)行庫(kù)實(shí)際上在組件的運(yùn)行時(shí)和開(kāi)發(fā)時(shí)操作中都起到很大的作用,盡管名 稱(chēng)中沒(méi)有體現(xiàn)這個(gè)意思。在組件運(yùn)行時(shí),運(yùn)行庫(kù)除了負(fù)責(zé)滿足此組件在其他組件上可能具有的依賴(lài)項(xiàng)外,還負(fù)責(zé)管理內(nèi)存分配、啟動(dòng)和停止線程和進(jìn)程,以及強(qiáng)制執(zhí)行安全策略。在開(kāi)發(fā)時(shí),運(yùn)行庫(kù)的作用稍有變化;由于做了大量的自動(dòng)處理工作(如內(nèi)存管理),運(yùn)行庫(kù)使開(kāi)發(fā)人員的操作非常簡(jiǎn)單,尤其是與今天的COM相比。特別是反射等功能顯著減少了開(kāi)發(fā)人員為將業(yè)務(wù)邏輯轉(zhuǎn) 變?yōu)榭芍赜媒M件而必須編寫(xiě)的代碼量。 統(tǒng)一編程類(lèi) 該框架為開(kāi)發(fā)人員提供了統(tǒng)一的、面向?qū)ο蟮摹⒎謱拥暮涂蓴U(kuò)展的類(lèi)庫(kù)集(API)。目前,C++開(kāi)發(fā)人員使用Microsoft基礎(chǔ)類(lèi),而Java開(kāi)發(fā)人員使用Windows 基礎(chǔ)類(lèi)??蚣芙y(tǒng)一了這些完全不同的模型并且為Visual Basic和JScript程序員同樣提供了對(duì)類(lèi)庫(kù)的訪問(wèn)。通過(guò)創(chuàng)建跨所有編程語(yǔ)言的公共 API 集,公共語(yǔ)言運(yùn)行庫(kù)使得跨語(yǔ)言繼承、錯(cuò)誤處理和調(diào)試成為可能。從JScript到C++的所有編程語(yǔ)言具有對(duì)框架的相似訪問(wèn),開(kāi)發(fā)人員可以自由選 擇它們要使用的語(yǔ)言。2.2 ADO.NET概述 ADO.NET并不是ADO的升級(jí)版本,它是全新的面向?qū)ο竽P汀1華DO更適應(yīng)于分布式及Internet等大型應(yīng)用程序環(huán)境,為了多人同時(shí)存取更具擴(kuò)展性,ADO.NET的數(shù)據(jù)存取采用的是離線存取模式,可說(shuō)是專(zhuān)門(mén)為.NET臺(tái)設(shè)計(jì)的數(shù)據(jù)存取結(jié)構(gòu)。它具有簡(jiǎn)單地訪問(wèn)關(guān)系數(shù)據(jù)、可擴(kuò)展性、支持多層應(yīng)用程序、統(tǒng)一XML和關(guān)系數(shù)據(jù)訪問(wèn)的特點(diǎn)。ADO.NET的主要目標(biāo)是提供對(duì)關(guān)系數(shù)據(jù)的簡(jiǎn)單訪問(wèn)功能。坦白的說(shuō),易于使用的類(lèi)描述關(guān)系數(shù)據(jù)庫(kù)中的表、列和行。另外,ADO.NET引入了DataSet類(lèi),它代表來(lái)自封裝在一個(gè)單元中的關(guān)聯(lián)表中的一組數(shù)據(jù),維持他們之間完整的關(guān)系。這是在ADO.NET中的新概念,可以顯著的擴(kuò)展數(shù)據(jù)訪問(wèn)接口的功能。ADO.NET可以擴(kuò)展——它為插件.NET 數(shù)據(jù)提供者(也稱(chēng)為可管理提供者)提供了框架,這些提供者被構(gòu)建,以便從任何數(shù)據(jù)源讀取和寫(xiě)入數(shù)據(jù)。ADO.NET提供了兩種內(nèi)置的.NET數(shù)據(jù)提供者,一種用于OLE DB數(shù)據(jù)源,另一種用于Microsoft SQL Server??梢酝ㄟ^(guò)OLE DB訪問(wèn)數(shù)據(jù)格式(比如Microsoft Access)、第三方數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)另外,Microsoft最近預(yù)演了用于ADO.NET的ODBC.NET數(shù)據(jù)提供者,它允許.NET 訪問(wèn)更多的舊的數(shù)據(jù)格式和第三方數(shù)據(jù)庫(kù)。ADO.NET用于多層應(yīng)用程序。這是當(dāng)今商業(yè)和電子商務(wù)應(yīng)用程序最常見(jiàn)的體系結(jié)構(gòu)。在多層體系結(jié)構(gòu)中,應(yīng)用邏輯的不同部5分1運(yùn)a行s在p多x個(gè)服務(wù)器或進(jìn)程中,每一部分就稱(chēng)為一層。ADO.NET使用開(kāi)放的Internet標(biāo)準(zhǔn)XML格式在層之間通信,允許數(shù)通過(guò)Internet防火來(lái)傳遞,并允許以非Microsoft技術(shù)來(lái)實(shí)現(xiàn)一層或多層。那么在Visual Studio.NET中ADO.NET訪問(wèn)數(shù)據(jù)庫(kù)分為二種。一種是SQL Server 數(shù)據(jù)庫(kù),另一種是其任何類(lèi)型的數(shù)據(jù)庫(kù)。本系統(tǒng)的后臺(tái)數(shù)據(jù)庫(kù)為SQL Server2005,因此是通過(guò)SQLConnection、SqlCommandSqlDataAdapter、DataSet等幾個(gè)主要的數(shù)據(jù)訪問(wèn)對(duì)象來(lái)訪問(wèn)數(shù)據(jù)的.需求分析 3.1系統(tǒng)需求分析 隨著我國(guó)經(jīng)濟(jì)的高速發(fā)展,人們生活水平的提高,越來(lái)越多的人開(kāi)始熱衷于到外地旅游。那么對(duì)于這些外來(lái)旅游者,首先搞清這個(gè)城市的公交路線顯的很重要!我的家鄉(xiāng)沈陽(yáng),作為一個(gè)旅游城市,每年都要吸引大量的游客,為了滿足這些游客熟悉公交路線的需求,特以公交查詢(xún)系統(tǒng)為設(shè)計(jì)課題。本軟件不僅能給游客帶來(lái)方便,也能給廣大市民提供方便。我認(rèn)為這樣的系統(tǒng)應(yīng)該具有很好的實(shí)用性!開(kāi)發(fā)本系統(tǒng)的目標(biāo)就是立足廣大乘客的實(shí)際,著眼于公交業(yè)的未來(lái)發(fā)展,規(guī)范公交管理,提高服務(wù)質(zhì)量,方便乘客查詢(xún),并為此設(shè)計(jì)該系統(tǒng)。人們生活水平的提高,越來(lái)越多人喜歡旅游,但是第一次來(lái)一個(gè)陌生的城市,肯定對(duì)公交路線不熟悉,所以必定需要一個(gè)能查看具體公交線路的公交系統(tǒng)。有些只知道一個(gè)站的某幾個(gè)字或一個(gè)車(chē)次的某幾個(gè)數(shù)字,所以本系統(tǒng)將給出站點(diǎn)的模糊查詢(xún),方便用戶的查詢(xún),有些只知道車(chē)次 或某個(gè)站點(diǎn),本系統(tǒng)也給出了公交線路查詢(xún)、公交站點(diǎn)查詢(xún)、公交換乘查詢(xún),進(jìn)一步方便大家的出行,但也有用戶什么都查不到,想留言問(wèn)問(wèn)人,所以再搞個(gè)留言板很有必要,方便大家交流以及解答各種疑難問(wèn)題!本系統(tǒng)采用結(jié)構(gòu)化設(shè)計(jì)的方法來(lái)實(shí)現(xiàn)系統(tǒng)總體功能,提高系統(tǒng)的各項(xiàng)指標(biāo),即將整個(gè)系統(tǒng)合的劃分成各個(gè)功能模塊,正確地處理模塊之間和模塊內(nèi)部的聯(lián)系以及和數(shù)據(jù)庫(kù)的聯(lián)系,定義各模塊的內(nèi)部結(jié)構(gòu),通過(guò)對(duì)模塊的設(shè)計(jì)和模塊之間關(guān)系的系統(tǒng)來(lái)實(shí)現(xiàn)整個(gè)系統(tǒng)的功能前臺(tái)主要有3個(gè)模塊,線路查詢(xún)、站點(diǎn)查詢(xún)、公交換乘模塊和后臺(tái)管理模塊 功能名稱(chēng):線路查詢(xún) 功能概述:可以獲得要查詢(xún)公交所通過(guò)的各個(gè)站點(diǎn)。 功能名稱(chēng):站點(diǎn)查詢(xún) 功能概述:通過(guò)輸入的指定站點(diǎn)查詢(xún)經(jīng)過(guò)該站點(diǎn)的公交。 功能名稱(chēng):公交換乘查詢(xún) 功能概述:分為公交直達(dá)、公交一次換乘,主要體現(xiàn)那些不可直達(dá)需要轉(zhuǎn)車(chē)的路線的所有換法。(如果用戶輸入的起始點(diǎn)和終點(diǎn),有一條及一條以上的公交線可以直達(dá)的,則為公交直達(dá);如果輸入的起始點(diǎn)和終點(diǎn),沒(méi)有一條公交線可以直接到的,系統(tǒng)將會(huì)給出一次換乘的方案,則為公交一次換乘)功能名稱(chēng):后臺(tái)管理 功能概述:用于管理員登陸,添加、修改、刪除公交線路,修改信息資料、安全密碼,回復(fù)留言板等功能。 本系統(tǒng)提供了的車(chē)次查詢(xún)功能、路5線1查A詢(xún)S功P能X。乘客可以方便的進(jìn)行查詢(xún),以防乘錯(cuò)車(chē)次。當(dāng)然有些功能的智能化不是很強(qiáng),系統(tǒng)有待進(jìn)一步來(lái)完善。 3.2 數(shù)據(jù)庫(kù)需求分析 數(shù)據(jù)庫(kù)在一個(gè)信息管理系統(tǒng)中占有非常重要的地位,數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響。合理的數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)可以提高數(shù)據(jù)存儲(chǔ)的效率,保證數(shù)據(jù)的完整和一致。 數(shù)據(jù)庫(kù)技術(shù)是由傳統(tǒng)的文件系統(tǒng)發(fā)展而來(lái)的,從層次模型、網(wǎng)狀模型發(fā)展到關(guān)系模型。數(shù)據(jù)庫(kù)技術(shù)是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的一個(gè)重要分支,它能指導(dǎo)我們正確地設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng),它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用的發(fā)展。采用數(shù)據(jù)庫(kù)技術(shù)的原理和方法可以有效地設(shè)計(jì)實(shí)用的數(shù)據(jù)庫(kù)系統(tǒng)。一個(gè)完整的數(shù)據(jù)庫(kù)系統(tǒng)包括數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS),數(shù)據(jù)庫(kù)管理員(DBA)、數(shù)據(jù)庫(kù)(DB)、應(yīng)用程序和相應(yīng)的硬件設(shè)施。 目前許多數(shù)據(jù)庫(kù)管理系統(tǒng)都基于關(guān)系模型,關(guān)系模型的主要特點(diǎn)是用表格結(jié)構(gòu)表達(dá)實(shí)體,用鍵表示實(shí)體與實(shí)體之間的聯(lián)系。與層次模型和網(wǎng)狀模型相比,關(guān)系模型比較簡(jiǎn)單,容易為初學(xué)者接受。關(guān)系模型是由若干個(gè)關(guān)系模式組成的集合,關(guān)系模式相當(dāng)于記錄類(lèi)型,它的實(shí)例稱(chēng)為關(guān)系。每個(gè)關(guān)系是一張表格。表格簡(jiǎn)單,用戶易懂,用戶只需用簡(jiǎn)單的查詢(xún)語(yǔ)句就可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)操作,并不涉及到存儲(chǔ)結(jié)構(gòu),訪問(wèn)技術(shù)等細(xì)節(jié)。關(guān)系模型是數(shù)學(xué)化的模型,要用到集合論,離散數(shù)學(xué)等知識(shí)。SQL語(yǔ)言是關(guān)系數(shù)據(jù)庫(kù)的代表性語(yǔ)言,已經(jīng)得到廣泛應(yīng)用。 在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),應(yīng)注意數(shù)據(jù)的安全性,保證數(shù)據(jù)的安全,防止非法用戶訪問(wèn)數(shù)據(jù)庫(kù),以免泄露重要信息,同時(shí)也能51防A止s非法用戶的蓄意破壞,有許多保護(hù)數(shù)據(jù)的方法,如采用用戶標(biāo)識(shí),口令密碼或訪問(wèn)控制等方法。一個(gè)成功的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)應(yīng)具有用戶標(biāo)識(shí),每一個(gè)合法用戶具有一個(gè)用戶名和相應(yīng)的口令,進(jìn)入數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)前必須輸入正確的口令,否則無(wú)法進(jìn)入系統(tǒng),這就保證了只有合法的用戶才能操作數(shù)據(jù)庫(kù)系統(tǒng)。為了保證數(shù)據(jù)的合法語(yǔ)義,必須對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行完整性約束,即防止用戶輸入不合語(yǔ)義的數(shù)據(jù)。 在設(shè)計(jì)應(yīng)用軟件時(shí),應(yīng)嚴(yán)格按照軟件工程學(xué)的方法進(jìn)行設(shè)計(jì),傳統(tǒng)的方法采用瀑布模型,從問(wèn)題定義、可行性分析、需求分析、概念設(shè)計(jì)、總體設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、編碼和軟件測(cè)試、運(yùn)行和維護(hù)等軟件生命周期內(nèi),每一階段均在前一階段的基礎(chǔ)上進(jìn)行設(shè)計(jì),并在每一階段有相應(yīng)的文檔資料。設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng)時(shí)應(yīng)該首先充分了解用戶各個(gè)方面的需求,包括現(xiàn)有的以及將來(lái)可能增加的 需求。數(shù)據(jù)庫(kù)設(shè)計(jì)一般包括如下幾個(gè)步驟:數(shù)據(jù)庫(kù)需要分析,數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì),數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)。 4系統(tǒng)概要設(shè)計(jì) 4.1概述 本階段設(shè)計(jì)的基本目標(biāo)是解決系統(tǒng)如何實(shí)現(xiàn)問(wèn)題,也叫做概要設(shè)計(jì),本階段主要任務(wù)是劃分 出系統(tǒng)的物理元素及設(shè)計(jì)軟件的結(jié)構(gòu),完成軟件定義時(shí)期的任務(wù)之后就應(yīng)該對(duì)系統(tǒng)進(jìn)行總體設(shè) 計(jì),即根據(jù)系統(tǒng)分析產(chǎn)生的分析結(jié)果來(lái)確定這個(gè)系統(tǒng)由哪些系統(tǒng)和模塊組成,這些系統(tǒng)和模塊又如何有機(jī)的結(jié)合在一起,每個(gè)模塊的功能如何實(shí)現(xiàn)。系統(tǒng)設(shè)計(jì)的目標(biāo)是使系統(tǒng)實(shí)現(xiàn)擁有所要求的功能,同時(shí),力爭(zhēng)達(dá)到高效率、高可靠性、可修改性,并且容易掌握和使用。模塊化的依據(jù)是: 把復(fù)雜問(wèn)題分解成許多容易解決的小問(wèn)題。原來(lái)的問(wèn)題也就變得容易解決。模塊化設(shè)計(jì)是把大型軟件按照一定的原則劃分成一個(gè)較小的相對(duì)功能獨(dú)立又相關(guān)聯(lián)的模塊。每個(gè)模塊完成一個(gè)特定的子功能。把這些模塊結(jié)合起來(lái)組成一個(gè)整體。完成指定的功能,滿足問(wèn)題的要求。采用模塊化原理的優(yōu)點(diǎn)在于可以使軟件結(jié)構(gòu)清晰,容易測(cè)試和調(diào)試。從而提高軟件的可靠性,可修改性。有助于軟件開(kāi)發(fā)的組織管理。一個(gè)大型軟件可分別編寫(xiě)不同的模塊。4.2功能模塊劃分 查詢(xún)系統(tǒng)模塊 該模塊實(shí)現(xiàn)公交查詢(xún)功能。可實(shí)現(xiàn)按線路查詢(xún)、站點(diǎn)查詢(xún)和起點(diǎn)—終點(diǎn)查詢(xún)?nèi)N查詢(xún)方式。錄入系統(tǒng)模塊該模塊實(shí)現(xiàn)數(shù)據(jù)的新增、修改、刪除功能。 4.3.1 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì) 在系統(tǒng)設(shè)計(jì)的開(kāi)始,我首先考慮的是如何用數(shù)據(jù)模型來(lái)數(shù)據(jù)庫(kù)的結(jié)構(gòu)與語(yǔ)義,以對(duì)現(xiàn)實(shí)世界進(jìn)行抽象。目前廣泛使用的數(shù)據(jù)模型可分為兩種類(lèi)型,一種是獨(dú)立于計(jì)算機(jī)系統(tǒng)的“概念數(shù)據(jù)模型”,如“實(shí)體聯(lián)系模型”;另一種是直接面向數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)的“結(jié)構(gòu)數(shù)據(jù)模型”。在本系統(tǒng)中我采用“實(shí)體聯(lián)系模型”(ER模型)來(lái)描述數(shù)據(jù)庫(kù)的結(jié)構(gòu)與語(yǔ)義,以對(duì)現(xiàn)實(shí)世界進(jìn)行第一次抽象。ER模型直接從現(xiàn)實(shí)世界抽象出實(shí)體類(lèi)型及實(shí)體間聯(lián)系然后用ER圖來(lái)表示數(shù)據(jù)模型。它有兩個(gè)明顯的優(yōu)點(diǎn):接近于人的思維,容易理解;與計(jì)算機(jī)無(wú)關(guān),用戶容易接受。但它只是數(shù)據(jù)庫(kù)設(shè)計(jì)的第一步。E-R圖是直觀表示概念模型的工具,它有三個(gè)基本成分: (1)矩形框,表示實(shí)體類(lèi)型(考慮問(wèn)題的對(duì)象)。(2)菱形框,表示聯(lián)系類(lèi)型(實(shí)體間的聯(lián)系)。(3)橢圓形框,表示實(shí)體的屬性。實(shí)體和屬性的定義如下: 管理員表(登陸ID,登錄姓名,登錄密碼)站名表(站名編號(hào),站名) 車(chē)輛線路編號(hào)表(車(chē)次,車(chē)線類(lèi)型) 線路表(線路編號(hào),車(chē)次,站名,次序) 車(chē)輛表(車(chē)輛編號(hào),車(chē)次,車(chē)輛類(lèi)型,服務(wù)類(lèi)型,票價(jià),IC 卡類(lèi)型,運(yùn)行區(qū)間) 冬季發(fā)車(chē)時(shí)間表(車(chē)次,編號(hào),首班時(shí)間,末班時(shí)間) 夏季發(fā)車(chē)時(shí)間表(車(chē)次,編號(hào),首班時(shí)間,末班時(shí)間) 4.3.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 本系統(tǒng)創(chuàng)建的SQL數(shù)據(jù)庫(kù)名稱(chēng)為城市公交查詢(xún)系統(tǒng)。并將數(shù)據(jù)文件和日志文件保存在公交查詢(xún)系統(tǒng)APP_DATA文件夾中。①管理員表(LoginTable) 管理員表存放登陸系統(tǒng)所需要的用戶名和密碼,登錄后臺(tái)時(shí)需要訪問(wèn)此表。 ②站名表 站名表存放站名等數(shù)據(jù),修改站名需要訪問(wèn)此表。 ③車(chē)輛線路編號(hào)表 車(chē)輛線路編號(hào)表存放線路編號(hào)等數(shù)據(jù),修改車(chē)輛線路編號(hào)將要訪問(wèn)此表。 ④線路表 線路表存放公交車(chē)線路的數(shù)據(jù),修改車(chē)輛線路需要訪問(wèn)此表。 5詳細(xì)設(shè)計(jì)與實(shí)現(xiàn) 5.1.連接數(shù)據(jù)庫(kù)的包含文件 在動(dòng)態(tài)網(wǎng)站中,調(diào)用數(shù)據(jù)庫(kù)中的數(shù)據(jù)是十分頻繁的,為了避免編寫(xiě)重復(fù)的代碼。編寫(xiě)一個(gè)數(shù)據(jù)庫(kù)連接文件是非常重要的。DB.cs 文件中包含了本系統(tǒng)中的數(shù)據(jù)庫(kù)的連接代碼。本系統(tǒng)的數(shù)庫(kù) 的連接代碼如下: public static SqlConnection createConnection(){ SqlConnection con=new SqlConnection(“server=.;database=城市公交查詢(xún)系統(tǒng);uid=sa;pwd=;”);return con;} 5.1.1新增車(chē)次線路 此模塊為管理員操作,如當(dāng)?shù)爻霈F(xiàn)新的公交線路,或原有公交車(chē)線路有新的站點(diǎn)加入,管理員可以登錄此表,及時(shí)添加線路和站點(diǎn)的信息,以保證車(chē)次線路的及時(shí)更新,方便用戶查詢(xún)。添加車(chē)次的界面如圖所示。 在輸入相關(guān)車(chē)次信息后便進(jìn)入站名添加過(guò)程如圖 5.1.2新增車(chē)次線路 此模塊為管理員操作,如當(dāng)?shù)爻霈F(xiàn)新的公交線路,或原有公交車(chē)線路有所變動(dòng)是,管理員可以登錄此模塊,及時(shí)添加相關(guān)的線路圖,以保證車(chē)次線路圖的及時(shí)更新,方便用戶查詢(xún)。添加的界面如圖 5.1.3刪除車(chē)次以及無(wú)效站點(diǎn) 此模塊同樣為管理員操作,如當(dāng)?shù)啬膫€(gè)公交線路已經(jīng)被廢除,或原有公交車(chē)線路有哪個(gè)站點(diǎn)被刪除,管理員可以登錄此表,及時(shí)刪除線路和站點(diǎn)的信息,以保證車(chē)次線路的及時(shí)更新,方便用戶查詢(xún)。刪除的界面如圖 5.1.4刪除線路圖 該模塊在管理員系統(tǒng)中實(shí)現(xiàn),如當(dāng)?shù)啬膫€(gè)公交線路已經(jīng)改變,管理員可以登錄此模塊,及時(shí)刪除線路圖信息,以保證車(chē)次線路圖的及時(shí)更新,方便用戶查詢(xún)。刪除的界面如圖 6測(cè)試與維護(hù) 6.1 創(chuàng)建和測(cè)試應(yīng)用程序 為了確保本系統(tǒng)能夠正常運(yùn)行,需要在發(fā)布之后做一次較全面的測(cè)試。現(xiàn)將具體操作及過(guò)程 舉例說(shuō)明如下: 創(chuàng)建和測(cè)試應(yīng)用程序應(yīng)是交替進(jìn)行的,既要注意開(kāi)發(fā)的效率也要注意它的穩(wěn)定性。每編寫(xiě)一個(gè)模塊,就要對(duì)這個(gè)模塊進(jìn)行測(cè)試,看它能否根據(jù)特定的要求工作。及早發(fā)現(xiàn)問(wèn)題,及早解決,否則到最后再來(lái)測(cè)試的話,難度會(huì)大大增加。6.2測(cè)試項(xiàng)目 在MIS開(kāi)發(fā)過(guò)程中采用了多種措施保證軟件質(zhì)量,但是實(shí)際開(kāi)發(fā)過(guò)程中還是不可避免地會(huì)產(chǎn)生差錯(cuò),系統(tǒng)中通常可能隱藏著錯(cuò)誤和缺陷,不經(jīng)周密測(cè)試的系統(tǒng)投入運(yùn)行,將會(huì)造成難以想象的后果,因此系統(tǒng)測(cè)試是MIS開(kāi)發(fā)過(guò)程中為保證軟件質(zhì)量必須進(jìn)行的工作。大量統(tǒng)計(jì)資料表明,系統(tǒng)測(cè)試的工作量往往占MIS 開(kāi)發(fā)總工作量的40%以上。因此,我們必須重視測(cè)試工作。由于程序中隱藏的缺陷只在特定的環(huán)境下才有可靠顯露,系統(tǒng)缺陷通常是由于對(duì)某些特定情況考慮不周造成的。因此測(cè)試不是為了表明程序正確;成功的測(cè)試也不是沒(méi)有發(fā)現(xiàn)錯(cuò)誤的測(cè)試。 有意義的軟件測(cè)試應(yīng)該是從“破壞”軟件系統(tǒng)的角度出發(fā),精心設(shè)計(jì)最有可以暴露程序系統(tǒng)缺陷的測(cè)試方案。因此軟件測(cè)試的目標(biāo)應(yīng)該是以盡可能少的代價(jià)和時(shí)間找出軟件系統(tǒng)中潛在的錯(cuò)誤和缺陷。 總結(jié) 在公交數(shù)字化的時(shí)代,公交系統(tǒng)的設(shè)計(jì)者應(yīng)當(dāng)以乘客需求為首位,調(diào)整服務(wù)策略,滿足社會(huì)的需要和乘客的需要,充分發(fā)揮公交系統(tǒng)交通中心的作用。本系統(tǒng)基本達(dá)到了預(yù)定的設(shè)計(jì)目標(biāo),但是在系統(tǒng)的實(shí)際化應(yīng)用中仍需要改進(jìn)和提高公交查詢(xún)系統(tǒng)的服務(wù)職能。系統(tǒng)的不足與改進(jìn)方案: 在數(shù)據(jù)庫(kù)設(shè)計(jì)方面,還有待改進(jìn),數(shù)據(jù)庫(kù)設(shè)計(jì)也可采用別的形式,比如:可以用一個(gè)字段作為站點(diǎn)字段,另一個(gè)字段作為經(jīng)過(guò)該站點(diǎn)的車(chē)次字段,只要找到經(jīng)過(guò)某個(gè)站點(diǎn)最多的車(chē)次,就可以設(shè)計(jì)該字段的類(lèi)型以及長(zhǎng)度。其次,系統(tǒng)的實(shí)際應(yīng)用化欠缺,可以通過(guò)使用根據(jù)起點(diǎn)站、終點(diǎn)站來(lái)確定那條路線,給出多種乘車(chē)方案的方法改進(jìn)。線路的更新應(yīng)該可以通過(guò)調(diào)整數(shù)據(jù)庫(kù)次序的方法來(lái)更新。同時(shí),界面的設(shè)計(jì)不夠美觀版面的設(shè)計(jì)以及查詢(xún)結(jié)果的顯示不夠人化,視覺(jué)效果不佳。應(yīng)當(dāng)參照一些比較美觀的網(wǎng)站設(shè)計(jì)進(jìn)行色彩的調(diào)整,同時(shí)亦可以加入更多的FLASH效果使得頁(yè)面更具動(dòng)態(tài)性。 致謝 時(shí)光飛逝,一轉(zhuǎn)眼我的大學(xué)生活就要結(jié)束了。這兩年我學(xué)到了很多很多的知識(shí),是我人生的一個(gè)轉(zhuǎn)折。我之所以能取得這些成績(jī),除了有自己的努力外,在我的學(xué)習(xí),生活中還得到了很多人的關(guān)心和幫助。在此我要對(duì)他們表示衷心的感謝。 首先,我要感謝我的畢業(yè)指導(dǎo)老師。在連續(xù)數(shù)月的畢業(yè)設(shè)計(jì)中,她不遺余力地指導(dǎo)和幫助我。在她孜孜不倦的教誨下,我順利地完成了畢業(yè)設(shè)計(jì)。老師對(duì)工作認(rèn)真負(fù)責(zé)的態(tài)度,對(duì)學(xué)生無(wú)私的關(guān)懷,使我受益良多。我衷心地感謝她。在這里我還要感謝所有指導(dǎo)過(guò)我的老師們,沒(méi)有你們的培養(yǎng)我無(wú)法完成兩年的大學(xué)學(xué)業(yè)還有,我能有今天,是與我父母的辛勤培養(yǎng)分不開(kāi)的,他們?yōu)槲腋冻隽艘磺?。我將在以后的學(xué)習(xí)、工作中再接再厲,盡我最大的努力做到最好來(lái)報(bào)答父母的養(yǎng)育之恩。 參考文獻(xiàn) [1]曹祖圣.吳明哲.Visual C#.NET 程序設(shè)計(jì)經(jīng)典.北京:科學(xué)版社,2004.P.50-53.[2]宣小平.ASP.NET數(shù)據(jù)庫(kù)系統(tǒng)開(kāi)發(fā)實(shí)例導(dǎo)航.上海:人民郵電出版社,2003.P.121-130.[3]金銀秋.數(shù)據(jù)庫(kù)原理與設(shè)計(jì).北京:科學(xué)出版社,2003.P.201-230.[4]張海藩.軟件工程.北京:人民郵電出版社2002.P.75-80.[5]朱曄.ASP.NET 第一步——基于C#和ASP.NET2.0.北京:清華大學(xué)出版社,.2007-7-1.P.301-310.[6]譚振林.道不遠(yuǎn)人——深入解析ASP.NET 2.0 控件開(kāi)發(fā).北京:子工業(yè)出版社。2007-9-1.P.125-140.[7]哈特 ASP.NET 2.0經(jīng)典教程——C#篇孟憲瑞,易磊.北京:人民郵電出版社.2007-2-1.P.20-40.[8]朱印宏,熊利榮.Dreamweaver 8完美網(wǎng)頁(yè)設(shè)計(jì)——ASP動(dòng)態(tài)網(wǎng)頁(yè)設(shè)計(jì)篇.北京 中國(guó)電力出版社.2006-10-1.P.63-72.[9]郝剛ASP.NET 2.0開(kāi)發(fā)指南.北京:人民郵電出版社.2006-5-1.P.53-55.第五篇:公交查詢(xún)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)論文