版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 文檔資料管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 摘 要</b></p><p> 本系統(tǒng)使用MFC提供的文檔視圖結(jié)構(gòu)為主體框架,用XML文擋進(jìn)行數(shù)據(jù)的儲(chǔ)存,實(shí)現(xiàn)對(duì)各種資料的管理。第一部分是實(shí)現(xiàn)對(duì)用戶界面操作的響應(yīng),這部分主要是使用MFC提供的不同的窗口類,即框架窗口,視圖窗口,對(duì)話窗口以及控件來實(shí)現(xiàn)用戶操作界面的主體框架的實(shí)現(xiàn)。
2、第二部分為處理具體事務(wù)的模塊,實(shí)現(xiàn)用戶對(duì)資料的管理和使用。第三部分是用XML編寫儲(chǔ)存結(jié)構(gòu),這部分主要是設(shè)計(jì)XML樹和對(duì)其存儲(chǔ)和讀取的具體實(shí)現(xiàn)。</p><p> 利用本系統(tǒng)可以管理自己的各種資料(文本的和電子的), 對(duì)每一份資料均有命名,對(duì)所有的資料進(jìn)行歸類,指明各資料的存放位置,可以給每一份資料指明關(guān)鍵字,便于用戶查找資料。若是電子資料(如電腦上的文件),可以通過鼠標(biāo)點(diǎn)擊直接打開文件。整個(gè)系統(tǒng)實(shí)現(xiàn)了最初設(shè)計(jì)的
3、各種功能,并能夠快速方便的幫助用戶查找到需要的資料信息,整個(gè)操作界面簡潔和實(shí)用。</p><p> 關(guān)鍵詞: MFC;XML;框架;窗口</p><p> The Design and Implementation of the Documents Management System</p><p><b> Abstract</b>&l
4、t;/p><p> The Documents Management System can manage various materials. It is implemented by the Document-View framework provided by the MFC. In order to hold the materials data, a XML document is used. The sy
5、stem is composed by the user interface、the logic processing and the XML operation. The first part responds to the operation of the user. This part is implemented by the various kinds of windows in the MFC, such as a fram
6、e window, a view window, the dialog windows, and many control windows. The second</p><p> Users can manage their own materials conveniently by this system. In the system, every material has many attributes
7、such as a name what we can call it, a path indicates where it is, an author who writes it, a catalogs field specifies how many catalogs it belongs to, and some keywords for searching it. If the material is a document in
8、the computer, users can view it directly by double clicking the document. The system is enabled all the functions at design and quickly and conveniently search the </p><p> Key words: MFC;XML;Frame;Window&l
9、t;/p><p><b> 目 錄</b></p><p><b> 論文總頁數(shù):20頁</b></p><p><b> 1引 言1</b></p><p> 2 設(shè)計(jì)理論依據(jù)1</p><p> 2.1 MFC簡介1</p>
10、<p> 2.2 XML介紹2</p><p> 3文檔資料管理系統(tǒng)簡介4</p><p> 3.1 系統(tǒng)開發(fā)背景4</p><p> 3.2系統(tǒng)開發(fā)環(huán)境5</p><p> 3.2.1 系統(tǒng)軟件環(huán)境5</p><p> 3.2.2工具簡介5</p><p>
11、;<b> 3.3系統(tǒng)概述5</b></p><p> 4文檔資料管理系統(tǒng)的設(shè)計(jì)6</p><p> 4.1系統(tǒng)需求分析及功能設(shè)計(jì)6</p><p> 4.2 XML存儲(chǔ)結(jié)構(gòu)的設(shè)計(jì)7</p><p> 4.3用戶界面和事物處理12</p><p> 4.3.1用戶界面12&
12、lt;/p><p> 4.3.2事務(wù)處理13</p><p><b> 5軟件測(cè)試15</b></p><p><b> 結(jié) 論18</b></p><p><b> 參考文獻(xiàn)18</b></p><p><b> 致
13、 謝19</b></p><p><b> 聲 明20</b></p><p> 商業(yè)源代碼,全套計(jì)算機(jī)畢業(yè)設(shè)計(jì)免費(fèi)下載 http://www.ibaidusoft.com</p><p> 更多全套設(shè)計(jì)聯(lián)系QQ:1042897696</p><p> 最新設(shè)計(jì)大全 http://www.b
14、ylw168.com/sf/20100915/3539.html</p><p><b> 1引 言</b></p><p> 當(dāng)今世界是飛速發(fā)展的信息時(shí)代,在各行各業(yè)中離不開信息處理,這正是計(jì)算機(jī)被廣泛用于管理系統(tǒng)的環(huán)境。計(jì)算機(jī)的最大好處在于利用它能夠進(jìn)行信息管理。但是在眾多的資料中,如何規(guī)范,準(zhǔn)確,快速,全面的管理自己的資料,如書籍,電子資料等,并且方便自己
15、查閱。使用計(jì)算機(jī)進(jìn)行信息管理控制,不僅提高了工作效率,而且大大提高了其安全性。本系統(tǒng)就是為了管理好自己的各種有用資料信息而設(shè)計(jì)的。</p><p> 面對(duì)各種繁多的資料,很多人是沒有進(jìn)行合理的分類整理和建立一個(gè)資料管理系統(tǒng)來管理它們,有時(shí)候在手頭研究需要一些資料的時(shí)候往往是靠記憶來尋找,但是這樣做會(huì)浪費(fèi)很多時(shí)間和精力。由于數(shù)據(jù)繁多容易丟失,且不易查找??偟膩碚f缺乏系統(tǒng),規(guī)范的信息處理手段。盡管我們有計(jì)算機(jī),但是
16、尚未用于信息管理,沒有發(fā)揮它的效益,資料閑置比較突出,就是管理信息開發(fā)的基本環(huán)境。基于此類問題,我認(rèn)為有必要建立一個(gè)資料管理系統(tǒng),使資料管理工作規(guī)范化,程序化,避免資料管理隨意性,提高信息處理的速度和準(zhǔn)確性,能夠及時(shí)、準(zhǔn)確、有效的查詢和修改資料情況。</p><p> 本次畢業(yè)設(shè)計(jì)是在老師指導(dǎo)下自己獨(dú)立完整的進(jìn)行軟件的設(shè)計(jì),程序編寫,調(diào)試等工作。通過自己對(duì)整個(gè)流程的設(shè)計(jì)和實(shí)現(xiàn),能夠完成最初提出的要求,也對(duì)一些功
17、能進(jìn)行了擴(kuò)展和加深。利用文檔資料管理系統(tǒng)能夠比較完善的管理自己的資料,也能比較快速的找到自己以前看過或是記錄下的資料,使用起來也很方便,快速。</p><p><b> 2 設(shè)計(jì)理論依據(jù)</b></p><p><b> 2.1 MFC簡介</b></p><p> MFC微軟基礎(chǔ)類(Microsoft Founda
18、tion Classes),實(shí)際上是微軟提供的,用于在C++環(huán)境下編寫應(yīng)用程序的一個(gè)框架和引擎。MFC就是掛在它之上的一個(gè)輸助軟件開發(fā)包,MFC作為與VC++血肉相連的部分(注意C++和VC++的區(qū)別:C++是一種程序設(shè)計(jì)語言,是一種大家都承認(rèn)的軟件編制的通用規(guī)范,而VC++只是一個(gè)編譯器,或者說是一種編譯器+源程序編輯器的IDE,WS,PlatForm),MFC同BC++集成的VCL一樣是一個(gè)非外掛式的軟件包,類庫,只不過MFC類是微
19、軟為VC++專配的. </p><p> MFC是Win API與C++的結(jié)合,API,即微軟提供的Winos下應(yīng)用程序的編程語言接口,是一種軟件編程的規(guī)范,但不是一種程序開發(fā)語言本身。MFC不只是一個(gè)功能單純的界面開發(fā)系統(tǒng),它提供的類絕大部分用來進(jìn)行界面開發(fā),關(guān)聯(lián)一個(gè)窗口的動(dòng)作,但它提供的類中有好多類不與一個(gè)窗口關(guān)聯(lián),即類的作用不是一個(gè)界面類,不實(shí)現(xiàn)對(duì)一個(gè)窗口對(duì)象的控制(如創(chuàng)建,銷毀)</p>
20、<p> MFC中的各種類結(jié)合起來構(gòu)成了一個(gè)應(yīng)用程序框架,它的目的就是讓程序員在此基礎(chǔ)上來建立Windows下的應(yīng)用程序。MFC框架定義了應(yīng)用程序的輪廓,并提供了用戶接口的標(biāo)準(zhǔn)實(shí)現(xiàn)方法,程序員所要做的就是通過預(yù)定義的接口把具體應(yīng)用程序特有的東西填入這個(gè)輪廓。Microsoft Visual C++提供了相應(yīng)的工具來完成這個(gè)工作:AppWizard可以用來生成初步的框架文件(代碼和資源等);資源編輯器用于幫助直觀地設(shè)計(jì)用戶接口
21、;Class Wizard用來協(xié)助添加代碼到框架文件;最后,編譯,則通過類庫實(shí)現(xiàn)了應(yīng)用程序特定的邏輯。</p><p><b> 2.2 XML介紹</b></p><p> XML是Extensible Markup Language的縮寫,即可擴(kuò)展標(biāo)記語言是一種您可以用來創(chuàng)建自己標(biāo)記的標(biāo)記語言。它由萬維網(wǎng)協(xié)會(huì)(W3C)創(chuàng)建,用來克服 HTML(即超文本標(biāo)記語言
22、(Hypertext Markup Language),它是所有網(wǎng)頁的基礎(chǔ))的局限。和 HTML 一樣;XML 基于 SGML ― 標(biāo)準(zhǔn)通用標(biāo)記語言(Standard Generalized Markup Language)XML實(shí)際上是Web上表示結(jié)構(gòu)化信息的一種標(biāo)準(zhǔn)文本格式,它沒有復(fù)雜的語法和包羅萬象的數(shù)據(jù)定義。XML同HTML一樣,都來自SGML(標(biāo)準(zhǔn)通用標(biāo)記語言)。SGML是一種在Web發(fā)明之前就早已存在的用標(biāo)記來描述文檔資料的
23、通用語言。但SGML十分龐大且難于學(xué)習(xí)和使用。鑒于此,人們提出了HTML語言。但近年來,隨著Web應(yīng)用的不斷深入,HTML在需求廣泛的應(yīng)用中已顯得捉襟見肘,有人建議直接使用SGML作為Web語言。但SGML太龐大了,學(xué)用兩難尚且不說,就是全面實(shí)現(xiàn)SGML的瀏覽器也非常困難。于是Web標(biāo)準(zhǔn)化組織W3C建議使用一種精簡的SGML版本——XML。XML與SGML一樣,是一個(gè)</p><p> XML作為引人注目的核心
24、技術(shù)應(yīng)用于BtoB、Web服務(wù)、.NET等許多系統(tǒng)中。XML可以作為電子數(shù)據(jù)交換的統(tǒng)一格式,用XML可以對(duì)數(shù)據(jù)關(guān)系進(jìn)行定義形成特有的標(biāo)準(zhǔn),因此各行各業(yè)都在建立自己的行業(yè)化標(biāo)準(zhǔn),以應(yīng)用于網(wǎng)絡(luò)上處理電子商務(wù),把后臺(tái)系統(tǒng)通過Web站點(diǎn)表現(xiàn)出來。XML還可以作為數(shù)據(jù)倉儲(chǔ),一個(gè)XML文件就是一個(gè)小的數(shù)據(jù)庫,通過對(duì)數(shù)據(jù)關(guān)系的定義形成各種關(guān)系、屬性的數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)交換、上下文檢索、多媒體傳輸。XML具有其他方法所不具備的數(shù)據(jù)描述特點(diǎn)XML是以文本形式
25、來描述的一種文件格式 由于XML是以文本形式描述的,所以適合于各種平臺(tái)環(huán)境的數(shù)據(jù)交換。同樣由于使用文本來描述內(nèi)容,可以越過不同平臺(tái)的障礙進(jìn)行正常的數(shù)據(jù)交換。但是,文本形式也會(huì)因?yàn)槲淖执a的不同造成不能閱讀的問題,在這一點(diǎn)上XML有著非常完美的解決方案。 XML使用有意義的標(biāo)記(Tag) 在XML中文件是由一個(gè)個(gè)稱之為元素(Element)的部件構(gòu)成。使用標(biāo)記(Tag)來描述元素。由于使用了標(biāo)記的描述方法,可以保持原數(shù)據(jù)的意思和構(gòu)造在互聯(lián)
26、網(wǎng)上進(jìn)行數(shù)據(jù)交換,進(jìn)而可以保持不同系統(tǒng)之間數(shù)據(jù)交換的靈活性。 </p><p> 可以說,XML是“定義語言的語言”,也即是一種元語言。由于XML具有元語言的功能,所以可以成為描述電子商務(wù)數(shù)據(jù)、多媒體演示數(shù)據(jù)、數(shù)學(xué)公式等各種各樣數(shù)據(jù)應(yīng)用語言的基礎(chǔ)語言。下面提供幾個(gè)以XML為基礎(chǔ)生成的數(shù)據(jù)描述語言(本文亦稱為XML應(yīng)用語言)的應(yīng)用例子,即出版媒體:Open eBook(電子書籍)、NewsML(新聞媒體);科學(xué):
27、MathML(數(shù)學(xué)表達(dá)式)、CML(化學(xué));電子商務(wù):cXML(電子商務(wù))、FpML(金融);多媒體:SMIL(多媒體演示)、BML(衛(wèi)星數(shù)據(jù)傳送)。 </p><p> XML是描述內(nèi)容的數(shù)據(jù)格式,在使用XML數(shù)據(jù)時(shí),還需要XML數(shù)據(jù)的顯示、打印、數(shù)據(jù)結(jié)構(gòu)的變更等許多相關(guān)技術(shù)。如果這些相關(guān)技術(shù)也都標(biāo)準(zhǔn)化的話,即使在不同平臺(tái)開發(fā)應(yīng)用程序也都可以用相同的方法,使開發(fā)難度降低。 處理XML數(shù)據(jù)時(shí),一定要使用XML
28、Processor(也就是XML Parser),把XML數(shù)據(jù)結(jié)構(gòu)的檢查等交給XML Parser去做。應(yīng)用程序?qū)邮盏絏MLProcessor傳遞來的XML樹進(jìn)行處理,向用戶提供服務(wù)。此時(shí),不管是電子商務(wù),還是知識(shí)管理,都是定義XML數(shù)據(jù)結(jié)構(gòu)的技術(shù)、顯示打印XML數(shù)據(jù)的技術(shù)、XML數(shù)據(jù)結(jié)構(gòu)變更技術(shù)、XML數(shù)據(jù)聯(lián)接整合技術(shù)、用程序操作XML樹的API和其它應(yīng)用技術(shù)的組合。</p><p> 在XML中用戶可以自
29、由的定義標(biāo)記名以及與標(biāo)記相關(guān)的元素及元素層次,這是XML的主要特征。但是,如果定義的都是只有自己才能理解的標(biāo)記,就無法與其他人進(jìn)行交換數(shù)據(jù)。為了在企業(yè)團(tuán)體之間進(jìn)行XML格式的數(shù)據(jù)的交換,XML數(shù)據(jù)的結(jié)構(gòu)、元素的名稱、元素的數(shù)據(jù)類型以及元素的親子關(guān)系都需要仔細(xì)考慮,一定要設(shè)計(jì)成人和系統(tǒng)能夠理解的語言。這樣設(shè)計(jì)的XML數(shù)據(jù)結(jié)構(gòu)在XML領(lǐng)域稱為Schema,描述Schema的語言稱為Schema語言。DTD是最普通XML的Schema語言是D
30、TD(Document Type Definition:文檔類型定義)。DTD是遠(yuǎn)在SGML時(shí)期就一直使用的Schema語言,1998年制訂XML語法時(shí),沿用了描述Schema的DTD。XML Schema中有下述DTD中不具備的特征:多個(gè)Schema復(fù)合使用XML名字空間;用XML語法描述;可以詳細(xì)定義元素的內(nèi)容及屬性值的數(shù)據(jù)類型。由于在XML Schema中的數(shù)據(jù)結(jié)構(gòu)也都是用XML數(shù)據(jù)來表現(xiàn)的,與DTD相比數(shù)據(jù)量增大很多。但是,XM
31、L Schema的表現(xiàn)力要遠(yuǎn)比DTD強(qiáng)得多,不僅支持字符串、10進(jìn)制數(shù)、浮動(dòng)小數(shù)點(diǎn)、日期等,還支持m</p><p> XML作為數(shù)據(jù)描述語言是非常優(yōu)秀的,但是并不是所有的電子數(shù)據(jù)都是轉(zhuǎn)換到XML是最有效的。例如XML的文本表現(xiàn)手法、標(biāo)記的符號(hào)化等會(huì)導(dǎo)致XML數(shù)據(jù)比二進(jìn)制表現(xiàn)方法數(shù)據(jù)量增加,尤其當(dāng)數(shù)據(jù)量很大時(shí),會(huì)成為很大的問題。也就是說,XML的導(dǎo)入要根據(jù)具體需求,比較其優(yōu)缺點(diǎn),在充分發(fā)揮XML優(yōu)點(diǎn)的領(lǐng)域進(jìn)行。
32、盡管XML具備了作為通用數(shù)據(jù)描述語言的優(yōu)秀特征,但是XML不是編程語言,說到底它是一種數(shù)據(jù)描述的技術(shù)。因此XML文件的顯示、文件結(jié)構(gòu)的變更、應(yīng)用程序的操作等XML相關(guān)技術(shù)也是非常重要的。</p><p> 隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展深入XML技術(shù)的應(yīng)用也將不斷擴(kuò)大。該技術(shù)不僅在傳統(tǒng)的銀行之間數(shù)據(jù)交換、證券公司對(duì)上市公司情況的數(shù)據(jù)統(tǒng)計(jì)、圖書館對(duì)圖書的查詢檢索、企事業(yè)文件檔案管理等領(lǐng)域的應(yīng)用更加迫切,在電子商務(wù)
33、、搜索引擎軟件、自動(dòng)智能翻譯、文檔發(fā)聲軟件等領(lǐng)域也將得到更大的發(fā)展,特別是近期發(fā)展起來的移動(dòng)通訊網(wǎng)絡(luò)服務(wù)的發(fā)展,將使各種各樣的信息經(jīng)過格式轉(zhuǎn)換到達(dá)PDA、甚至到達(dá)手持電話機(jī),將來我們可以通過網(wǎng)絡(luò)數(shù)據(jù)格式轉(zhuǎn)換服務(wù)使小小的手機(jī)可以閱讀到大千世界的豐富信息。</p><p> 3文檔資料管理系統(tǒng)簡介</p><p> 3.1 系統(tǒng)開發(fā)背景</p><p> 本文檔資
34、料管理系統(tǒng)是為個(gè)人管理自己的各種資料的一個(gè)基于Windows XP系統(tǒng)的一個(gè)應(yīng)用軟件.現(xiàn)在也有很多的資料管理系統(tǒng),其中都是一個(gè)運(yùn)用界面和邏輯接口嵌入一個(gè)數(shù)據(jù)庫,這樣在編寫軟件的時(shí)候也很方便和快速。但是對(duì)于編程人員來說,利用別的工具來實(shí)現(xiàn)自己的東西總是不好的事,尤其對(duì)于我們這種經(jīng)驗(yàn)不足的人來說,尤其是不好的事情。因此我就想自己編寫一個(gè)儲(chǔ)存結(jié)構(gòu)來代替數(shù)據(jù)庫。因?yàn)樵谝郧皩W(xué)習(xí)過XML知道用它可以實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)功能,于是決定利用它編寫文件存儲(chǔ)結(jié)構(gòu)
35、來實(shí)現(xiàn)本系統(tǒng)的數(shù)據(jù)存儲(chǔ)。</p><p> 現(xiàn)在人們有了電腦,對(duì)于存儲(chǔ)自己需要的資料有了一個(gè)好的地方,但是如何能夠有效的把日益增多的這些各種資料管理起來,能夠方便需要的時(shí)候取出來,這是一個(gè)難題;對(duì)于一些以前看過的書,如何在以后突然需要的時(shí)候,快速的找到它的擺放位子?這些都是開發(fā)本資料管理系統(tǒng)的一個(gè)原因。為了管理個(gè)人的資料例如:電子資料,紙版資料等不同的資料并對(duì)所有的資料進(jìn)行歸類,如劃分為VC++資料,windo
36、ws類資料,健康類資料等。當(dāng)這些資料經(jīng)過科學(xué)的分類,并把各種不同屬性的資料各類管理起來,這樣就實(shí)現(xiàn)了對(duì)資料的有效管理,也方便了用戶在需要的時(shí)候很快能夠找到想要的資料,節(jié)約了很多人力物力和精力。</p><p><b> 3.2系統(tǒng)開發(fā)環(huán)境</b></p><p> 3.2.1 系統(tǒng)軟件環(huán)境</p><p> 本系統(tǒng)采用的軟件工具有:<
37、;/p><p> 操作系統(tǒng): Windows XP</p><p> 開發(fā)環(huán)境:VC++6.0</p><p><b> 3.2.2工具簡介</b></p><p> VC++6.0在提供可視化的編程方法的同時(shí),也適用于編寫直接對(duì)系統(tǒng)進(jìn)行底層操作的程序,其生成代碼的質(zhì)量要優(yōu)于很多其他的開發(fā)工具。VC++6.0所提供的
38、基本類庫MFC,對(duì)Windows所用的Win32應(yīng)用程序接口進(jìn)行了十分徹底的封裝,這使得開發(fā)人員可以使用完全面向?qū)ο蟮姆椒▉磉M(jìn)行Windows編程,從而大大節(jié)省了應(yīng)用程序的開發(fā)周期,降低了開發(fā)成本。而且,其強(qiáng)大的調(diào)試功能也為大型復(fù)雜軟件的開發(fā)提供了有效的排錯(cuò)手段。</p><p> 隨著多媒體技術(shù)和圖形圖像技術(shù)的不斷發(fā)展,可視化技術(shù)得到了廣泛的重視,愈來愈多的人開始研究并應(yīng)用可視化技術(shù)。所謂可視化技術(shù),一般是指
39、軟件開發(fā)階段的可視化和對(duì)計(jì)算機(jī)圖形技術(shù)和方法的應(yīng)用。VC++是一個(gè)很好的可視化編程工具,使用VC++環(huán)境來開發(fā)基于Windows的應(yīng)用程序,其界面更友好,便于程序員操作。開發(fā)環(huán)境是程序員同VC++的交互界面,通過它程序員可以訪問C++源代碼編輯器、資源編輯器,使用內(nèi)部調(diào)試器,還可以創(chuàng)建項(xiàng)目文件</p><p><b> 3.3系統(tǒng)概述</b></p><p> 軟
40、件主要提供的功能包括:資源管理方面——添加資源,刪除資源;資源瀏覽——按照目錄,按照搜索。因此把軟件大體分成三個(gè)部分進(jìn)行實(shí)現(xiàn):第一部分: 用戶界面。包括整個(gè)程序的框架,以及用戶操作的接口設(shè)計(jì)等即就是實(shí)現(xiàn)用戶界面的部分.第二部分:用于處理事務(wù)的模塊.包括用戶添加,刪除,修改資源,用戶通過目錄瀏覽,通過搜索找尋,通過自己的收藏夾進(jìn)行資源管理等業(yè)務(wù)邏輯的實(shí)現(xiàn)。第三部分: 用于進(jìn)行數(shù)據(jù)物理存儲(chǔ)的模塊。使用XML文檔進(jìn)行數(shù)據(jù)的存儲(chǔ),所以在實(shí)現(xiàn)的過
41、程中,XML的操作成為了這個(gè)模塊的主要工作。</p><p> 文檔資料管理系統(tǒng)是為個(gè)人管理自己的各種資料的軟件,首先將資料分為電子資料和非電子資料;電子資料主要包括自己電腦上面儲(chǔ)存的例如:電子文檔,電子書籍,影像資料等各種電子資料。非電子資料包括書籍,影碟,光碟等實(shí)物資料;對(duì)每一份資料均有命名,可以使用書名來指代這本書,也對(duì)每一份資料加了關(guān)鍵字和注釋,便于后面需要時(shí)候準(zhǔn)確的找到需要的資料。對(duì)所有的資料進(jìn)行歸類
42、,如劃分為VC++資料,windows類資料,影像類資料等;指明資料的存放位置,若是電子資料(如電腦上的文件),可以通過鼠標(biāo)點(diǎn)擊直接打開文件,對(duì)于非電子資料和非本機(jī)子上的資料,在注釋內(nèi)注明其放置的位子,便于快速找到自己需要的資料;系統(tǒng)也有增加,刪除,修改等工具條:增加是在有新資料需要用本系統(tǒng)管理的時(shí)候,可以通過它來增加。刪除是對(duì)無用的資料進(jìn)行刪除。修改是需要對(duì)已有的資料增加一些說明的。另外也有目錄,搜索和收藏夾等功能。系統(tǒng)也在最下面的窗
43、口有一個(gè)對(duì)選中的資料有一個(gè)類似統(tǒng)計(jì)的顯示,便于使用者,更加方便的使用本系統(tǒng)。</p><p> 4文檔資料管理系統(tǒng)的設(shè)計(jì)</p><p> 4.1系統(tǒng)需求分析及功能設(shè)計(jì)</p><p> 隨著信息時(shí)代的來臨,電腦用戶的資料日益增多,而這些資料可能有著不同的特點(diǎn)。比如,它可能是一本書,也可能是一張光碟,也可能是個(gè)電子文檔。如果稍有疏忽,資料的存放位置失去了某些特
44、征,例如,某些電子文檔你可能放到了一個(gè)目錄下,而另外一個(gè)文檔你卻放到了其它的目錄下。當(dāng)你需要的時(shí)候,將難于準(zhǔn)確迅速的找到,更談不上有效的查詢和管理了。總之,資料屬性的多元化和數(shù)量的增多給管理這些資料帶來了很多不便。</p><p> 文檔資料管理系統(tǒng)的設(shè)計(jì)目標(biāo)正是為了解決這些問題。它將滿足用戶對(duì)資源的管理:增加,刪除,修改,搜索及查看資源。具體說來,該系統(tǒng)將具備下面的功能:</p><p&g
45、t; ?。?)增加資源——用戶能夠添加一個(gè)資源,該資源可以是電子資源(比如PC上某個(gè)目錄下的一張圖片)或者是非電子資源(例如書桌上的本書)。添加該資源后,用戶將可以通過該系統(tǒng)直接管理和使用該資源。</p><p> ?。?)刪除資源——用戶能夠?qū)⑾到y(tǒng)中的某個(gè)資源刪除掉,從而放棄系統(tǒng)對(duì)該資源的管理。</p><p> ?。?)修改資源——當(dāng)某個(gè)資源的屬性發(fā)生變化的時(shí)候(例如存放位置發(fā)生變化)
46、,用戶能夠選中某個(gè)資源,對(duì)其屬性進(jìn)行修改,以反映這種變化。</p><p> ?。?)搜索資源——用戶能夠通過提供資源的某個(gè)特征屬性進(jìn)行查找,獲得相關(guān)的資源。</p><p> (5)查看資源——如果所選擇資源為電子文檔,用戶將能在系統(tǒng)中直接查看該資源。</p><p> 圖1 整體框架設(shè)計(jì)圖</p><p> 資源應(yīng)該具有以下屬性:資
47、源的作者,資源名稱,資源的位置(若是電子資源,則是資源在電腦上的文件位置),資源添加日期,資源所屬目錄情況(一個(gè)資源可以屬于多個(gè)目錄),關(guān)鍵字(用于搜索), 資源的注釋等。</p><p> 下面就系統(tǒng)中對(duì)以上屬性的定義:</p><p> struct RESITEM</p><p><b> {</b></p><
48、p> int id; // 資源在文檔中的唯一標(biāo)志</p><p> string name; //資源名稱</p><p> string author; //資源的作者</p><p> string path; //資源的位置(若是電子資源,則是資源在電腦上的文件位置) </p><p> bool bEbo
49、ok;//是否是電子資源</p><p> string date; //資源添加日期</p><p> string keywords; //關(guān)鍵字,用于搜索</p><p> int catalogs; //資源所屬目錄情況(一個(gè)資源可以屬于多個(gè)目錄)</p><p> double bytes; //資源大?。ㄖ粚?duì)電子資源
50、有效) </p><p> string note; //資源的注釋</p><p><b> };</b></p><p> 4.2 XML存儲(chǔ)結(jié)構(gòu)的設(shè)計(jì)</p><p> 本系統(tǒng)的用XML編寫存儲(chǔ)結(jié)構(gòu),參照一般的XML編寫方法包含以下幾個(gè)</p><p> 類:XmlContaine
51、r(XmlTree),XmlFile,XmlLeaf,XmlNode,XmlParser。</p><p> 表1 XmlFile設(shè)計(jì)表</p><p> 表2 Xmlparser設(shè)計(jì)表</p><p> 說明:正是通過這兩個(gè)類的協(xié)作,實(shí)現(xiàn)了XML文檔的讀寫和轉(zhuǎn)換。例如:</p><p> XmlFile file;</p>
52、;<p> if(!file.load("Settings\\items.xml"))</p><p><b> {</b></p><p> AfxMessageBox("打開數(shù)據(jù)文件items.xml失敗");</p><p><b> return;</b>
53、;</p><p><b> }</b></p><p> XmlTree* pTree = XmlParser::doc2tree(file.getdoc());</p><p> if(!pTree)</p><p><b> {</b></p><p> Af
54、xMessageBox("轉(zhuǎn)換數(shù)據(jù)文件items.xml失敗");</p><p><b> return;</b></p><p><b> }</b></p><p> 上面的代碼段首先使用XmlFile的實(shí)例load了一個(gè)XML文檔,然后使用XmlParser::doc2tree創(chuàng)建了一
55、個(gè)XmlTree,從而為內(nèi)存中使用XML提供了基礎(chǔ)。</p><p> 下面說明一下對(duì)XML的處理方案。使用樹型結(jié)構(gòu)表達(dá)XML文檔,可以比較方便的進(jìn)行相應(yīng)的讀寫刪改操作。因?yàn)閄ML本身就是一個(gè)數(shù)型的結(jié)構(gòu)。例如:</p><p><b> <DATA></b></p><p><b> <item><
56、/b></p><p> <name>tttttt</name></p><p> <catalogs>13</catalogs></p><p> <path>d</path></p><p><b> </item></b&g
57、t;</p><p><b> <item></b></p><p> <name>xx</name></p><p> <catalogs>7</catalogs></p><p> <path>xx</path></p&
58、gt;<p><b> </item></b></p><p><b> </DATA></b></p><p> 以上是一段程序中用到的XML文檔結(jié)構(gòu)。注意到整個(gè)文檔以<DATA>開始,以</DATA>結(jié)尾,表示之間的都是存儲(chǔ)的數(shù)據(jù)(實(shí)際上就是資源的屬性數(shù)據(jù))。中間共有兩個(gè)it
59、em,而每個(gè)item又各有幾個(gè)屬性(如<name>,<catalogs>等)。所以可以用一顆樹來表示:</p><p> 圖2 Xml樹型結(jié)構(gòu)圖</p><p> 注意到上面的樹中有些節(jié)點(diǎn)只有Name沒有Value,而有些卻都有。雖然它們都是節(jié)點(diǎn),但類型上還是有區(qū)別的。故,采用三個(gè)類表達(dá)這種信息:XmlNode,XmlLeaf,XmlContainer。<
60、/p><p> 首先定義一個(gè)接口類XmlNode,該類表達(dá)抽象的XML節(jié)點(diǎn)。然后使用XmlLeaf類和XmlContainer類來實(shí)現(xiàn)XmlNode,XmlLeaf表示葉節(jié)點(diǎn)(有Name和Value雙重屬性的節(jié)點(diǎn),但自己沒有子節(jié)點(diǎn)),XmlContainer表示容器節(jié)點(diǎn)(只有Name屬性的節(jié)點(diǎn),而且自己可以有子節(jié)點(diǎn))。下面是它們的定義:</p><p> class XmlNode<
61、/p><p><b> {</b></p><p><b> public:</b></p><p> XmlNode(){name = "node";parent = NULL;}</p><p> virtual ~XmlNode(){};</p><
62、;p> virtual bool isleaf()=0; //是否葉節(jié)點(diǎn)</p><p> virtual bool iscontainer()=0;//是否容器節(jié)點(diǎn)</p><p> virtual XmlNode* getparent(){return parent;}; //返回父節(jié)點(diǎn)</p><p> virtual bool setpare
63、nt(XmlNode* _parent){ parent=_parent; return true;}; //設(shè)置父節(jié)點(diǎn)</p><p> virtual const string& getname(){return name;}; //返回節(jié)點(diǎn)名稱</p><p> virtual bool setname(const string& _name){name=_n
64、ame; return true;}; //設(shè)置節(jié)點(diǎn)名稱</p><p> protected:</p><p> XmlNode* parent;</p><p> string name;</p><p><b> }; </b></p><p> class XmlContain
65、er : public XmlNode</p><p><b> {</b></p><p><b> public:</b></p><p> XmlContainer(){pos = -1; name="container";};</p><p> XmlContai
66、ner(const string& _name){name=_name; pos = -1;};</p><p> ~XmlContainer(){release();};</p><p> bool isleaf(){ return false;};</p><p> bool iscontainer(){return true;};</p&
67、gt;<p> bool addchild(XmlNode* _node); //新增一個(gè)子節(jié)點(diǎn)</p><p> bool remove(XmlNode* pNode); //刪除一個(gè)子節(jié)點(diǎn)</p><p> XmlNode* firstchild(); //返回第一個(gè)子節(jié)點(diǎn)</p><p> XmlNode* nextchild(); /
68、/返回下一個(gè)字節(jié)點(diǎn)</p><p> XmlNode* getchild(int nIndex); //返回第nIndex個(gè)子節(jié)點(diǎn)</p><p> XmlNode* search(const string& name); //找到第一個(gè)以name為名的子孫節(jié)點(diǎn)</p><p> XmlNode* search(const string& na
69、me, const string& value); //找到第一個(gè)以name為名,以value為值的葉節(jié)點(diǎn)</p><p> void trav(ostream& out); //遍歷并輸出到out中</p><p> void print(int lev);</p><p> protected:</p><p>
70、void release();</p><p><b> int pos;</b></p><p> vector<XmlNode*> children;</p><p><b> };</b></p><p> typedef XmlContainer XmlTree;<
71、/p><p> class XmlLeaf : public XmlNode</p><p><b> {public:</b></p><p> XmlLeaf(){name="leaf";};</p><p> XmlLeaf(const string& _name) {name=_n
72、ame;};</p><p> XmlLeaf(const string& _name, const string& _value) {name=_name; value=_value;};</p><p> ~XmlLeaf(){};</p><p> bool isleaf(){ return true;}; //是葉節(jié)點(diǎn),返回true
73、</p><p> bool iscontainer(){return false;}; //不是容器節(jié)點(diǎn),返回false</p><p> const string& getvalue(){return value;}; //獲取值</p><p> bool setvalue(const string& _value){value=_va
74、lue; return true;};//設(shè)置值</p><p> protected:</p><p> string value;</p><p><b> };</b></p><p> 下圖為數(shù)據(jù)流的轉(zhuǎn)化圖:</p><p> 圖3 Xml 數(shù)據(jù)流轉(zhuǎn)換圖</p>&
75、lt;p> 在讀取文件數(shù)據(jù)的時(shí)候使用XmlFile從磁盤讀取文件數(shù)據(jù),并轉(zhuǎn)化為一個(gè)String 對(duì)象,然后使用XmlParser轉(zhuǎn)化為一個(gè)XmlTree對(duì)象,這樣就可以很方便的操作數(shù)據(jù)。當(dāng)存儲(chǔ)數(shù)據(jù)的時(shí)候,使用XmlParser把一個(gè)XmlTree對(duì)象轉(zhuǎn)化為一個(gè)String 對(duì)象,然后通過XmlFile類將這個(gè)String 對(duì)象保存到磁盤文件中。上述過程就實(shí)現(xiàn)了系統(tǒng)數(shù)據(jù)流的轉(zhuǎn)化,也在次基礎(chǔ)上變于整個(gè)系統(tǒng)調(diào)用XML來實(shí)現(xiàn)具體的功能。
76、</p><p> 4.3用戶界面和事物處理</p><p><b> 4.3.1用戶界面</b></p><p> 本系統(tǒng)的用戶界面是一個(gè),類似VC的界面,左邊、底下有兩個(gè)可浮動(dòng)、可變大小的控制窗口。具體實(shí)現(xiàn)的為:首先創(chuàng)建窗口的定義如下:先為CMainFrame增加成員變量:</p><p> class CM
77、ainFrame : public CFrameWnd</p><p> { protected:CMainFrame();</p><p> DECLARE_DYNCREATE(CMainFrame)</p><p><b> public:</b></p><p> CDlgInfo m_dlg
78、Info; //用于顯示信息,位于程序最下方</p><p> CCoolTabCtrl m_TabCtrl;</p><p> CCoolBarm_wndMyBar1; //我們將它作為左邊的窗口</p><p> CCoolBarm_wndMyBar2; //我們將它作為右邊的窗口</p><p> 創(chuàng)建ControlB
79、ar即控制條和“刪除”,“修改”,“修改”按鈕: </p><p> if (!m_wndMyBar1.Create(_T("我的控制條"), this, CSize(230,260)</p><p> ,TRUE,123)){……};if (!m_wndMyBar2.Create(_T("我的控制條2"), this,CSize(200,1
80、00),TRUE,124)){……}</p><p> m_wndToolBar.SetButtonText(0," 增加 ");</p><p> m_wndToolBar.SetButtonText(1," 刪除 ");</p><p> m_wndToolBar.SetButtonText(2," 修改
81、");</p><p> 創(chuàng)建TAB Control,并把它加入到ControlBar中。需要注意的是:同一個(gè)ControlBar只能加入一個(gè)"一級(jí)子窗口"</p><p> m_TabCtrl.Create(TCS_DOWN|WS_CHILD|WS_VISIBLE,CRect(0,0,0,0),&m_wndMyBar1,125);</p&g
82、t;<p> m_TabCtrl.AddPage(RUNTIME_CLASS(CCatalogDlg),IDD_DLG_CATALOG, "目 錄", IDI_ICON_CATALOG);</p><p> m_TabCtrl.AddPage(RUNTIME_CLASS(CSearchDlg),IDD_DLG_SEARCH, "搜 索", IDI_ICON
83、_SEARCH);</p><p> m_TabCtrl.AddPage(RUNTIME_CLASS(CFavDlg), IDD_DLG_FAV, "收藏夾", IDI_ICON_FAC);</p><p><b> ??靠刂疲?lt;/b></p><p> m_wndMyBar1.SetBarStyle(m_wndMyB
84、ar1.GetBarStyle() |CBRS_TOOLTIPS | CBRS_FLYBY| CBRS_SIZE_DYNAMIC);</p><p> m_wndMyBar2.SetBarStyle(m_wndMyBar2.GetBarStyle() |CBRS_TOOLTIPS |</p><p> CBRS_FLYBY | CBRS_SIZE_DYNAMIC);</p>
85、<p> m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);</p><p> m_wndMyBar1.EnableDocking(CBRS_ALIGN_ANY);</p><p> m_wndMyBar2.EnableDocking(CBRS_ALIGN_ANY);</p><p> EnableDocki
86、ng(CBRS_ALIGN_ANY);</p><p> DockControlBar(&m_wndToolBar);</p><p> DockControlBar(&m_wndMyBar1, AFX_IDW_DOCKBAR_LEFT);//??孔筮?lt;/p><p> DockControlBar(&m_wndMyBar2, AFX_
87、IDW_DOCKBAR_BOTTOM);//??坑疫?lt;/p><p> m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);</p><p> EnableDocking(CBRS_ALIGN_ANY);</p><p> DockControlBar(&m_wndToolBar);</p><p&
88、gt; 此時(shí)我們已經(jīng)生成了兩個(gè)控制條窗口,但窗口中還沒有任何東西。在創(chuàng)建這些控件時(shí)將控制條窗口指針作為父窗口指針賦值給這些控件。在上面敘訴中,創(chuàng)建了“添加”“刪除”,“修改”按鈕。其他按鈕,控件在class CCoolTabCtrl : public CWnd類中聲明和定義,在使用中調(diào)用。由于它們涉及到對(duì)具體事件的處理,在下面部分分類說明。其中對(duì)于風(fēng)格的使用,論文中沒有特別說明,在使用中可以看出來。</p><p&
89、gt;<b> 4.3.2事務(wù)處理</b></p><p> 事務(wù)處理這個(gè)模塊就是對(duì)具體的按鈕,控件的設(shè)置和響應(yīng),通過對(duì)它們函數(shù)的定義和調(diào)用實(shí)現(xiàn)具體的功能,主要實(shí)現(xiàn)的就是添加,刪除,搜索,和一些具體功能的實(shí)現(xiàn)。下面就是對(duì)具體事務(wù)的介紹。</p><p> 添加資源:通過點(diǎn)擊工具條的增加按鈕彈出添加資源對(duì)話框,用戶對(duì)資源屬性進(jìn)行逐一設(shè)置,并在點(diǎn)擊確定后保存。該功能
90、的流程圖如下圖所示:</p><p> 圖4 添加功能流程圖</p><p> 響應(yīng)添加功能的類為class CAddResDlg,其中具體實(shí)現(xiàn)為:void CResManView::OnBtnAddres()響應(yīng)點(diǎn)擊添加按鈕,用戶在彈出窗口按照具體資源添加其具體屬性,填寫完畢,點(diǎn)擊“確定”按鈕,void CAddResDlg::OnOK()是確定按鈕的響應(yīng)函數(shù),然后BOOL CAdd
91、ResDlg::ValidItem()判定資源的屬性填寫是否合法,合法就添加該資源即調(diào)用XmlFile file實(shí)現(xiàn)把數(shù)據(jù)寫入文件中,從而實(shí)現(xiàn)添加功能。在添加中也用了int CAddResDlg::GetCatalogs()來獲取資源的所屬目錄,這只是針對(duì)本機(jī)上的電子文檔。通過上述過程和具體函數(shù)實(shí)現(xiàn)了添加的功能。</p><p> 在列表視圖中選中某個(gè)資源的時(shí)候,在下面的窗口中會(huì)有關(guān)于該資源的具性的信息顯示出來
92、,class CDlgInfo : public CDialog。</p><p> 在列表視圖中雙擊某個(gè)資源的時(shí)候,若該資源是電子資源,那么它將被打開。void CResManView::OnDblclk(NMHDR* pNMHDR, LRESULT* pResult)</p><p> 刪除資源:在視圖列表中選中要?jiǎng)h除的項(xiàng)目,點(diǎn)擊工具條中的刪除,就會(huì)彈出一個(gè)詢問對(duì)話框,若點(diǎn)擊“確定
93、”,將刪除所選擇的項(xiàng)目。并且支持同時(shí)刪除多個(gè)資源。刪除功能的流程圖如下圖所示</p><p> 圖5 刪除功能流程圖</p><p> 實(shí)現(xiàn)刪除的具體過程為:當(dāng)用戶想要?jiǎng)h除一個(gè)或是多個(gè)資源的時(shí)候,首先選定要?jiǎng)h除的項(xiàng),然后點(diǎn)擊“刪除”按鈕,響應(yīng)該按鈕的函數(shù)為void CResManView::</p><p> OnUpdateBtnDelres(CcmdUI*
94、 pCmdUI).實(shí)現(xiàn)刪除的具體函數(shù)voidCResManView::</p><p> OnBtnDelres(),最后調(diào)用XmlFile file實(shí)現(xiàn)在XML文件存儲(chǔ)結(jié)構(gòu)中刪除該資源,從而實(shí)現(xiàn)了刪除的功能。</p><p><b> 搜索功能:</b></p><p> 圖6 搜索功能流程圖</p><p>
95、 該功能實(shí)現(xiàn)的過程:按照搜索瀏覽資源:通過使用關(guān)鍵字,用戶可以搜索出自己感興趣的資源。如果使用高級(jí)選項(xiàng),還可以指定資源的添加日期的范圍,也可以在資源作者和資源注釋等屬性中進(jìn)行查找。實(shí)現(xiàn)的函數(shù)為:void CSearchDlg::</p><p> OnBtnSearch()</p><p> 商業(yè)源代碼,全套計(jì)算機(jī)畢業(yè)設(shè)計(jì)免費(fèi)下載 http://www.ibaidusoft.com&l
96、t;/p><p> 更多全套設(shè)計(jì)聯(lián)系QQ:1042897696</p><p> 最新設(shè)計(jì)大全 http://www.bylw168.com/sf/20100915/3539.html</p><p><b> 5軟件測(cè)試</b></p><p> 整個(gè)測(cè)試過程是一個(gè),“測(cè)試——修改——再測(cè)試——再修改”的過程,直到
97、整個(gè)系統(tǒng)能正常運(yùn)行,所有功能都能正常實(shí)現(xiàn)。在測(cè)試過程中,出現(xiàn)過一些不符合標(biāo)準(zhǔn)的情況,經(jīng)過修改,都基本與設(shè)計(jì)書的標(biāo)準(zhǔn)符合,能夠完成正常的功能。下面就是對(duì)本系統(tǒng)的各種功能的測(cè)試:</p><p><b> 增加功能的測(cè)試:</b></p><p> 圖7 添加功能測(cè)試顯示圖</p><p> 用戶點(diǎn)擊增加按鈕,彈出上圖的對(duì)話框,用戶輸入資源的
98、信息,點(diǎn)擊確定按鈕,如果添加成功在系統(tǒng)文件的settings文件夾的items.xml文件中會(huì)有如下記錄:</p><p><b> item></b></p><p> <id>13</id></p><p> <name>vc資料教程</name></p><p
99、> <author></author></p><p> <ebook>1</ebook></p><p> <catalogs>10</catalogs></p><p> <path>E:\vc資料教程</path></p><p&g
100、t; <keywords>vc 教程</keywords></p><p> <bytes>-1</bytes></p><p> <date>2007-05-31 17:05:04</date></p><p> <note>vc資料教程 光碟</note>
101、;</p><p><b> </item></b></p><p><b> 這就說明添加成功。</b></p><p> 刪除功能的測(cè)試:如下圖所示:</p><p> 圖8 刪除功能測(cè)試截圖</p><p> 實(shí)現(xiàn)刪除的具體過程為:當(dāng)用戶想要?jiǎng)h除一
102、個(gè)或是多個(gè)資源的時(shí)候,首先選定要?jiǎng)h除的項(xiàng),然后點(diǎn)擊“刪除”按鈕,響應(yīng)該按鈕的函數(shù)為void CResManView::</p><p> OnUpdateBtnDelres(CcmdUI* pCmdUI).實(shí)現(xiàn)刪除的具體函數(shù)voidCResManView::</p><p> OnBtnDelres(),最后調(diào)用XmlFile file實(shí)現(xiàn)在XML文件存儲(chǔ)結(jié)構(gòu)中刪除該資源,從而實(shí)現(xiàn)了刪
103、除的功能。</p><p> 刪除成功的話在系統(tǒng)文件的settings文件夾的items.xml文件中就沒有該資源的記錄。</p><p> 搜索功能的測(cè)試:如下圖所示:</p><p> 圖9 搜索功能測(cè)試截圖</p><p> 該功能實(shí)現(xiàn)的過程:按照搜索瀏覽資源:通過使用關(guān)鍵字,用戶可以搜索出自己感興趣的資源。如果使用高級(jí)選項(xiàng),還
104、可以指定資源的添加日期的范圍,也可以在資源作者和資源注釋等屬性中進(jìn)行查找。按照搜索條件可以實(shí)現(xiàn)快速尋找自己需要的資料,成功后會(huì)在右邊的顯示框中顯示符合搜索條件的資料資源,并在下面有一個(gè)統(tǒng)計(jì)的顯示。</p><p> 由于經(jīng)驗(yàn)欠缺或其它某些原因,本次完成的軟件不可能是完美無缺的。測(cè)試只能盡量避免錯(cuò)誤的產(chǎn)生和消除已經(jīng)產(chǎn)生的錯(cuò)誤,使程序中的錯(cuò)誤密度達(dá)到盡可能低的程度,減少錯(cuò)誤的引入,但是不可能完全杜絕軟件中的錯(cuò)誤。經(jīng)
105、過測(cè)試,能實(shí)現(xiàn)各功能。</p><p><b> 結(jié) 論</b></p><p> 完成了系統(tǒng)的基本功能,基本滿足用戶需求,能夠通過本系統(tǒng)能夠比較方便的管理自己的資料,也可以快速準(zhǔn)確的找到需要的資料。自己編寫了XML文件存儲(chǔ)結(jié)構(gòu),并利用它作為本系統(tǒng)的數(shù)據(jù)轉(zhuǎn)化工具。本系統(tǒng)操作方便,系統(tǒng)性能良好,具有快速,可擴(kuò)展性。</p><p>
106、當(dāng)然,由于我們經(jīng)驗(yàn)欠缺或者是其他方面的一些原因,這次的項(xiàng)目開發(fā)也存在一些不足,如程序員邏輯比較混亂,一些簡單的問題要通過一堆無用代碼才能實(shí)現(xiàn),不能以簡潔有效的方式解決。由于是一個(gè)人獨(dú)立的完成一個(gè)項(xiàng)目。從設(shè)計(jì)到開發(fā),再到調(diào)試都是自己的思路,其中不免有考慮不周,實(shí)現(xiàn)不完善之處。修改和收藏夾功能還沒有實(shí)現(xiàn)。另外XML編寫的時(shí)候也沒有使用標(biāo)準(zhǔn)的XML編寫方法,雖然其能夠完成本系統(tǒng)的要求,但是也不免有些瑕疵。由于是用XML文件存儲(chǔ)結(jié)構(gòu),不是用單獨(dú)
107、的數(shù)據(jù)庫,因此在使用系統(tǒng)的時(shí)候,數(shù)據(jù)都在內(nèi)存中,因此對(duì)于內(nèi)存消耗比較大,但是在存入文件后,此問題消失。我想,在以后的項(xiàng)目開發(fā)過程中,我們會(huì)逐漸解決這些不足之處。 </p><p><b> 參考文獻(xiàn)</b></p><p> [1] 鄭阿奇,丁有和,鄭進(jìn).Visual C++實(shí)用教程[M].北京:電子工業(yè)出版社,2000.</p><p>
108、 [2] [美]David Simon,周瑜萍.Visual C++6編程寶典[M].北京:電子工業(yè)出版社,2005.</p><p> [3] 姚領(lǐng)田.精通MFC程序設(shè)計(jì)[M].北京:人民郵電出版社,2006.</p><p> [4] Sandra,E.Eddy.XML精要:語法詳解與編程指南[M].北京:清華大學(xué)出版社,2001.</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- vc++文檔資料管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---文檔管理系統(tǒng)的實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)-資料管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 簡易網(wǎng)絡(luò)文檔資料管理系統(tǒng)設(shè)計(jì)與開發(fā)【開題報(bào)告】
- 畢業(yè)設(shè)計(jì)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)-----管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 倉庫管理系統(tǒng)文檔畢業(yè)設(shè)計(jì)
- 基于web的畢業(yè)設(shè)計(jì)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 管理系統(tǒng)畢業(yè)設(shè)計(jì)--藥店管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 本科畢業(yè)設(shè)計(jì)文檔管理系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---倉庫管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---考勤管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---學(xué)生管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 賓館管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--酒店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 超市管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 倉庫管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
評(píng)論
0/150
提交評(píng)論